[
  {
    "path": ".gitignore",
    "content": "# Xcode\n#\nbuild/\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata\n*.xccheckout\n*.moved-aside\nDerivedData\n*.hmap\n*.ipa\n*.xcuserstate\n\n# CocoaPods\n#\n# We recommend against adding the Pods directory to your .gitignore. However\n# you should judge for yourself, the pros and cons are mentioned at:\n# http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control\n#\n# Pods/\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n"
  },
  {
    "path": "Cartfile",
    "content": "github \"dzenbot/DZNEmptyDataSet\" == 1.8.1\ngithub \"ReactiveCocoa/ReactiveCocoa\" == 4.2.2\ngithub \"SnapKit/SnapKit\" == 0.21.1\ngithub \"thoughtbot/Argo\" == 3.1\ngithub \"thoughtbot/Curry\" == 2.3.3\n"
  },
  {
    "path": "Cartfile.private",
    "content": "github \"Quick/Quick\" == 0.9.3\ngithub \"Quick/Nimble\" == 4.1.0\n"
  },
  {
    "path": "Cartfile.resolved",
    "content": "github \"thoughtbot/Argo\" \"v3.1.0\"\ngithub \"thoughtbot/Curry\" \"v2.3.3\"\ngithub \"dzenbot/DZNEmptyDataSet\" \"v1.8.1\"\ngithub \"Quick/Nimble\" \"v4.1.0\"\ngithub \"Quick/Quick\" \"v0.9.3\"\ngithub \"antitypical/Result\" \"2.1.3\"\ngithub \"SnapKit/SnapKit\" \"0.21.1\"\ngithub \"ReactiveCocoa/ReactiveCocoa\" \"v4.2.2\"\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/.gitattributes",
    "content": "*.pbxproj merge=union\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/.gitignore",
    "content": "# OS X Finder\n.DS_Store\n\n# Xcode per-user config\n*.mode1\n*.mode1v3\n*.mode2v3\n*.perspective\n*.perspectivev3\n*.pbxuser\nxcuserdata\n*.xccheckout\n\n# Build products\nbuild/\n*.o\n*.LinkFileList\n*.hmap\n\n# Automatic backup files\n*~.nib/\n*.swp\n*~\n*.dat\n*.dep\n\n# Cocoapods\nPods\n\n# Carthage\nCarthage/Build\n\n# AppCode specific files\n.idea/\n*.iml\n\nArgo.framework.zip\n*.xcscmblueprint\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/.gitmodules",
    "content": "[submodule \"Carthage/Checkouts/Runes\"]\n\tpath = Carthage/Checkouts/Runes\n\turl = https://github.com/thoughtbot/Runes.git\n[submodule \"Carthage/Checkouts/Curry\"]\n\tpath = Carthage/Checkouts/Curry\n\turl = https://github.com/thoughtbot/Curry.git\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/.hound.yml",
    "content": "swift:\n  enabled: true\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Extensions/Dictionary.swift",
    "content": "// pure merge for Dictionaries\nfunc + <T, U>(lhs: [T: U], rhs: [T: U]) -> [T: U] {\n  var merged = lhs\n  for (key, val) in rhs {\n    merged[key] = val\n  }\n\n  return merged\n}\n\nextension Dictionary {\n  func map<T>(@noescape f: Value -> T) -> [Key: T] {\n    var accum = Dictionary<Key, T>(minimumCapacity: self.count)\n\n    for (key, value) in self {\n      accum[key] = f(value)\n    }\n\n    return accum\n  }\n}\n\nfunc <^> <T, U, V>(@noescape f: T -> U, x: [V: T]) -> [V: U] {\n  return x.map(f)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Extensions/NSNumber.swift",
    "content": "import Foundation\n\nextension NSNumber {\n  var isBool: Bool {\n    return CFBooleanGetTypeID() == CFGetTypeID(self)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Extensions/RawRepresentable.swift",
    "content": "/**\n  Default implementation of `Decodable` for `RawRepresentable` types using\n  `String` as the raw value.\n*/\npublic extension Decodable where Self.DecodedType == Self, Self: RawRepresentable, Self.RawValue == String {\n  static func decode(json: JSON) -> Decoded<Self> {\n    switch json {\n    case let .String(s): return self.init(rawValue: s).map(pure) ?? .typeMismatch(\"rawValue for \\(self)\", actual: json)\n    default: return .typeMismatch(\"String\", actual: json)\n    }\n  }\n}\n\n/**\n  Default implementation of `Decodable` for `RawRepresentable` types using\n  `Int` as the raw value.\n*/\npublic extension Decodable where Self.DecodedType == Self, Self: RawRepresentable, Self.RawValue == Int {\n  static func decode(json: JSON) -> Decoded<Self> {\n    switch json {\n    case let .Number(n): return self.init(rawValue: n as Int).map(pure) ?? .typeMismatch(\"rawValue for \\(self)\", actual: json)\n    default: return .typeMismatch(\"Int\", actual: json)\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Functions/catDecoded.swift",
    "content": "/**\n  Create a new array of unwrapped `.Success` values, filtering out `.Failure`s.\n\n  This will iterate through the array of `Decoded<T>` elements and safely\n  unwrap the values.\n\n  If the element is `.Success(T)`, it will unwrap the value and add it into the\n  array.\n\n  If the element is `.Failure`, it will not be added to the new array.\n\n  - parameter xs: An array of `Decoded<T>` values\n\n  - returns: An array of unwrapped values of type `T`\n*/\npublic func catDecoded<T>(xs: [Decoded<T>]) -> [T] {\n  var accum: [T] = []\n  accum.reserveCapacity(xs.count)\n\n  for x in xs {\n    switch x {\n    case let .Success(value): accum.append(value)\n    case .Failure: continue\n    }\n  }\n\n  return accum\n}\n\n/**\n  Create a new dictionary of unwrapped `.Success` values, filtering out\n  `.Failure`s.\n\n  This will iterate through the dictionary of `Decoded<T>` elements and safely\n  unwrap the values.\n\n  If the element is `.Success(T)`, it will unwrap the value and assign it to\n  the existing key in the new dictionary.\n\n  If the element is `.Failure`, it will not be added to the new dictionary.\n\n  - parameter xs: A dictionary of `Decoded<T>` values assigned to `String` keys\n\n  - returns: A dictionary of unwrapped values of type `T` assigned to `String` keys\n*/\npublic func catDecoded<T>(xs: [String: Decoded<T>]) -> [String: T] {\n  var accum = Dictionary<String, T>(minimumCapacity: xs.count)\n\n  for (key, x) in xs {\n    switch x {\n    case let .Success(value): accum[key] = value\n    case .Failure: continue\n    }\n  }\n\n  return accum\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Functions/curry.swift",
    "content": "func curry<T, U, V>(f : (T, U) -> V) -> T -> U -> V {\n  return { x in { y in f(x, y) } }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Functions/decode.swift",
    "content": "/**\n  Attempt to transform `AnyObject` into a `Decodable` value.\n\n  This function takes `AnyObject` (usually the output from\n  `NSJSONSerialization`) and attempts to transform it into a `Decodable` value.\n  This works based on the type you ask for.\n\n  For example, the following code attempts to decode to `Decoded<String>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let object = try NSJSONSerialization.JSONObjectWithData(data, options: nil)\n    let str: Decoded<String> = decode(object)\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter object: The `AnyObject` instance to attempt to decode\n\n  - returns: A `Decoded<T>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(object: AnyObject) -> Decoded<T> {\n  return T.decode(JSON(object))\n}\n\n/**\n  Attempt to transform `AnyObject` into an `Array` of `Decodable` values.\n\n  This function takes `AnyObject` (usually the output from\n  `NSJSONSerialization`) and attempts to transform it into an `Array` of\n  `Decodable` values. This works based on the type you ask for.\n\n  For example, the following code attempts to decode to\n  `Decoded<[String]>`, because that's what we have explicitly stated is\n  the return type:\n\n  ```\n  do {\n    let object = try NSJSONSerialization.JSONObjectWithData(data, options: nil)\n    let str: Decoded<[String]> = decode(object)\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter object: The `AnyObject` instance to attempt to decode\n\n  - returns: A `Decoded<[T]>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(object: AnyObject) -> Decoded<[T]> {\n  return Array<T>.decode(JSON(object))\n}\n\n/**\n  Attempt to transform `AnyObject` into a `Decodable` value and return an `Optional`.\n\n  This function takes `AnyObject` (usually the output from\n  `NSJSONSerialization`) and attempts to transform it into a `Decodable` value,\n  returning an `Optional`. This works based on the type you ask for.\n\n  For example, the following code attempts to decode to `Optional<String>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let object = try NSJSONSerialization.JSONObjectWithData(data, options: nil)\n    let str: String? = decode(object)\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter object: The `AnyObject` instance to attempt to decode\n\n  - returns: An `Optional<T>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(object: AnyObject) -> T? {\n  return decode(object).value\n}\n\n/**\n  Attempt to transform `AnyObject` into an `Array` of `Decodable` values and\n  return an `Optional`.\n\n  This function takes `AnyObject` (usually the output from\n  `NSJSONSerialization`) and attempts to transform it into an `Array` of\n  `Decodable` values, returning an `Optional`. This works based on the type you\n  ask for.\n\n  For example, the following code attempts to decode to\n  `Optional<[String]>`, because that's what we have explicitly stated is\n  the return type:\n\n  ```\n  do {\n    let object = try NSJSONSerialization.JSONObjectWithData(data, options: nil)\n    let str: [String]? = decode(object)\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter object: The `AnyObject` instance to attempt to decode\n\n  - returns: An `Optional<[T]>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(object: AnyObject) -> [T]? {\n  return decode(object).value\n}\n\n/**\n  Attempt to transform `AnyObject` into a `Decodable` value using a specified\n  root key.\n\n  This function attempts to extract the embedded `JSON` object from the\n  dictionary at the specified key and transform it into a `Decodable` value.\n  This works based on the type you ask for.\n\n  For example, the following code attempts to decode to `Decoded<String>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let dict = try NSJSONSerialization.JSONObjectWithData(data, options: nil) as? [String: AnyObject] ?? [:]\n    let str: Decoded<String> = decode(dict, rootKey: \"value\")\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter dict: The dictionary containing the `AnyObject` instance to\n                    attempt to decode\n  - parameter rootKey: The root key that contains the object to decode\n\n  - returns: A `Decoded<T>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(dict: [String: AnyObject], rootKey: String) -> Decoded<T> {\n  return JSON(dict) <| rootKey\n}\n\n/**\n  Attempt to transform `AnyObject` into an `Array` of `Decodable` value using a\n  specified root key.\n\n  This function attempts to extract the embedded `JSON` object from the\n  dictionary at the specified key and transform it into an `Array` of\n  `Decodable` values. This works based on the type you ask for.\n\n  For example, the following code attempts to decode to `Decoded<[String]>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let dict = try NSJSONSerialization.JSONObjectWithData(data, options: nil) as? [String: AnyObject] ?? [:]\n    let str: Decoded<[String]> = decode(dict, rootKey: \"value\")\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter dict: The dictionary containing the `AnyObject` instance to\n                    attempt to decode\n  - parameter rootKey: The root key that contains the object to decode\n\n  - returns: A `Decoded<[T]>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(dict: [String: AnyObject], rootKey: String) -> Decoded<[T]> {\n  return JSON(dict) <|| rootKey\n}\n\n/**\n  Attempt to transform `AnyObject` into a `Decodable` value using a specified\n  root key and return an `Optional`.\n\n  This function attempts to extract the embedded `JSON` object from the\n  dictionary at the specified key and transform it into a `Decodable` value,\n  returning an `Optional`. This works based on the type you ask for.\n\n  For example, the following code attempts to decode to `Optional<String>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let dict = try NSJSONSerialization.JSONObjectWithData(data, options: nil) as? [String: AnyObject] ?? [:]\n    let str: String? = decode(dict, rootKey: \"value\")\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter dict: The dictionary containing the `AnyObject` instance to\n                    attempt to decode\n  - parameter rootKey: The root key that contains the object to decode\n\n  - returns: A `Decoded<T>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(dict: [String: AnyObject], rootKey: String) -> T? {\n  return decode(dict, rootKey: rootKey).value\n}\n\n/**\n  Attempt to transform `AnyObject` into an `Array` of `Decodable` value using a\n  specified root key and return an `Optional`\n\n  This function attempts to extract the embedded `JSON` object from the\n  dictionary at the specified key and transform it into an `Array` of\n  `Decodable` values, returning an `Optional`. This works based on the type you\n  ask for.\n\n  For example, the following code attempts to decode to `Optional<[String]>`,\n  because that's what we have explicitly stated is the return type:\n\n  ```\n  do {\n    let dict = try NSJSONSerialization.JSONObjectWithData(data, options: nil) as? [String: AnyObject] ?? [:]\n    let str: [String]? = decode(dict, rootKey: \"value\")\n  } catch {\n    // handle error\n  }\n  ```\n\n  - parameter dict: The dictionary containing the `AnyObject` instance to\n                    attempt to decode\n  - parameter rootKey: The root key that contains the object to decode\n\n  - returns: A `Decoded<[T]>` value where `T` is `Decodable`\n*/\npublic func decode<T: Decodable where T == T.DecodedType>(dict: [String: AnyObject], rootKey: String) -> [T]? {\n  return decode(dict, rootKey: rootKey).value\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Functions/flatReduce.swift",
    "content": "/**\n  Reduce a sequence with a combinator that returns a `Decoded` type, flattening\n  the result.\n\n  This function is a helper function to make it easier to deal with combinators\n  that return `Decoded` types without ending up with multiple levels of nested\n  `Decoded` values.\n\n  For example, it can be used to traverse a JSON structure with an array of\n  keys. See the implementations of `<|` and `<||` that take an array of keys for\n  a real-world example of this use case.\n\n  - parameter sequence: Any `SequenceType` of values\n  - parameter initial: The initial value for the accumulator\n  - parameter combine: The combinator, which returns a `Decoded` type\n\n  - returns: The result of iterating the combinator over every element of the\n             sequence and flattening the result\n*/\npublic func flatReduce<S: SequenceType, U>(sequence: S, initial: U, @noescape combine: (U, S.Generator.Element) -> Decoded<U>) -> Decoded<U> {\n  return sequence.reduce(pure(initial)) { accum, x in\n    accum >>- { combine($0, x) }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Functions/sequence.swift",
    "content": "/**\n  Convert an `Array` of `Decoded<T>` values to a `Decoded` `Array` of unwrapped\n  `T` values.\n\n  This performs an all-or-nothing transformation on the array. If every element\n  is `.Success`, then this function will return `.Success` along with the array\n  of unwrapped `T` values.\n\n  However, if _any_ of the elements are `.Failure`, this function will also\n  return `.Failure`, and no array will be returned.\n\n  - parameter xs: An `Array` of `Decoded<T>` values\n  - returns: A `Decoded` `Array` of unwrapped `T` values\n*/\npublic func sequence<T>(xs: [Decoded<T>]) -> Decoded<[T]> {\n  var accum: [T] = []\n  accum.reserveCapacity(xs.count)\n\n  for x in xs {\n    switch x {\n    case let .Success(value): accum.append(value)\n    case let .Failure(error): return .Failure(error)\n    }\n  }\n\n  return pure(accum)\n}\n\n/**\n  Convert a `Dictionary` with `Decoded<T>` values to a `Decoded` `Dictionary`\n  with unwrapped `T` values.\n\n  This performs an all-or-nothing transformation on the dictionary. If every\n  key is associated with a `.Success` value, then this function will return\n  `.Success` along with the dictionary of unwrapped `T` values associated with\n  their original keys.\n\n  However, if _any_ of the keys are associated with a `.Failure` value, this\n  function will also return `.Failure`, and no dictionary will be returned.\n\n  - parameter xs: A `Dictionary` of arbitrary keys and `Decoded<T>` values\n  - returns: A `Decoded` `Dictionary` of unwrapped `T` values assigned to their\n             original keys\n*/\npublic func sequence<Key, Value>(xs: [Key: Decoded<Value>]) -> Decoded<[Key: Value]> {\n  var accum = Dictionary<Key, Value>(minimumCapacity: xs.count)\n\n  for (key, x) in xs {\n    switch x {\n    case let .Success(value): accum[key] = value\n    case let .Failure(error): return .Failure(error)\n    }\n  }\n\n  return pure(accum)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Operators/Argo.swift",
    "content": "infix operator <| { associativity left precedence 150 }\ninfix operator <|? { associativity left precedence 150 }\ninfix operator <|| { associativity left precedence 150 }\ninfix operator <||? { associativity left precedence 150 }\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Operators/Decode.swift",
    "content": "/**\n  Attempt to decode a value at the specified key into the requested type.\n\n  This operator is used to decode a mandatory value from the `JSON`. If the\n  decoding fails for any reason, this will result in a `.Failure` being\n  returned.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter key: The key for the object to decode\n\n  - returns: A `Decoded` value representing the success or failure of the\n             decode operation\n*/\npublic func <| <A where A: Decodable, A == A.DecodedType>(json: JSON, key: String) -> Decoded<A> {\n  return json <| [key]\n}\n\n/**\n  Attempt to decode an optional value at the specified key into the requested\n  type.\n\n  This operator is used to decode an optional value from the `JSON`. If the key\n  isn't present in the `JSON`, this will still return `.Success`. However, if\n  the key exists but the object assigned to that key is unable to be decoded\n  into the requested type, this will return `.Failure`.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter key: The key for the object to decode\n\n  - returns: A `Decoded` optional value representing the success or failure of\n             the decode operation\n*/\npublic func <|? <A where A: Decodable, A == A.DecodedType>(json: JSON, key: String) -> Decoded<A?> {\n  return .optional(json <| [key])\n}\n\n/**\n  Attempt to decode a value at the specified key path into the requested type.\n\n  This operator is used to decode a mandatory value from the `JSON`. If the\n  decoding fails for any reason, this will result in a `.Failure` being\n  returned.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter keys: The key path for the object to decode, represented by an\n                    array of strings\n\n  - returns: A `Decoded` value representing the success or failure of the\n             decode operation\n*/\npublic func <| <A where A: Decodable, A == A.DecodedType>(json: JSON, keys: [String]) -> Decoded<A> {\n  return flatReduce(keys, initial: json, combine: decodedJSON) >>- A.decode\n}\n\n/**\n  Attempt to decode an optional value at the specified key path into the\n  requested type.\n\n  This operator is used to decode an optional value from the `JSON`. If any of\n  the keys in the key path aren't present in the `JSON`, this will still return\n  `.Success`. However, if the key path exists but the object assigned to the\n  final key is unable to be decoded into the requested type, this will return\n  `.Failure`.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter keys: The key path for the object to decode, represented by an\n                    array of strings\n  - returns: A `Decoded` optional value representing the success or failure of\n             the decode operation\n*/\npublic func <|? <A where A: Decodable, A == A.DecodedType>(json: JSON, keys: [String]) -> Decoded<A?> {\n  return .optional(json <| keys)\n}\n\n/**\n  Attempt to decode an array of values at the specified key into the requested\n  type.\n\n  This operator is used to decode a mandatory array of values from the `JSON`.\n  If the decoding of any of the objects fail for any reason, this will result\n  in a `.Failure` being returned.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter key: The key for the array of objects to decode\n\n  - returns: A `Decoded` array of values representing the success or failure of\n             the decode operation\n*/\npublic func <|| <A where A: Decodable, A == A.DecodedType>(json: JSON, key: String) -> Decoded<[A]> {\n  return json <|| [key]\n}\n\n/**\n  Attempt to decode an optional array of values at the specified key into the\n  requested type.\n\n  This operator is used to decode an optional array of values from the `JSON`.\n  If the key isn't present in the `JSON`, this will still return `.Success`.\n  However, if the key exists but the objects assigned to that key are unable to\n  be decoded into the requested type, this will return `.Failure`.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter key: The key for the object to decode\n\n  - returns: A `Decoded` optional array of values representing the success or\n             failure of the decode operation\n*/\npublic func <||? <A where A: Decodable, A == A.DecodedType>(json: JSON, key: String) -> Decoded<[A]?> {\n  return .optional(json <|| [key])\n}\n\n/**\n  Attempt to decode an array of values at the specified key path into the\n  requested type.\n\n  This operator is used to decode a mandatory array of values from the `JSON`.\n  If the decoding fails for any reason, this will result in a `.Failure` being\n  returned.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter keys: The key path for the object to decode, represented by an\n                    array of strings\n\n  - returns: A `Decoded` array of values representing the success or failure of\n             the decode operation\n*/\npublic func <|| <A where A: Decodable, A == A.DecodedType>(json: JSON, keys: [String]) -> Decoded<[A]> {\n  return flatReduce(keys, initial: json, combine: decodedJSON) >>- Array<A>.decode\n}\n\n/**\n  Attempt to decode an optional array of values at the specified key path into\n  the requested type.\n\n  This operator is used to decode an optional array of values from the `JSON`.\n  If any of the keys in the key path aren't present in the `JSON`, this will\n  still return `.Success`. However, if the key path exists but the objects\n  assigned to the final key are unable to be decoded into the requested type,\n  this will return `.Failure`.\n\n  - parameter json: The `JSON` object containing the key\n  - parameter keys: The key path for the object to decode, represented by an\n                    array of strings\n\n  - returns: A `Decoded` optional array of values representing the success or\n             failure of the decode operation\n*/\npublic func <||? <A where A: Decodable, A == A.DecodedType>(json: JSON, keys: [String]) -> Decoded<[A]?> {\n  return .optional(json <|| keys)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Resources/Argo.h",
    "content": "#import <Foundation/Foundation.h>\n\n//! Project version number for Argo.\nFOUNDATION_EXPORT double ArgoVersionNumber;\n\n//! Project version string for Argo.\nFOUNDATION_EXPORT const unsigned char ArgoVersionString[];\n\n// In this header, you should import all the public headers of your framework using statements like #import <Argo/PublicHeader.h>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Resources/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>3.1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decodable.swift",
    "content": "public protocol Decodable {\n  /**\n    The type of object that will be decoded.\n\n    In order to work with the rest of Argo, this needs to be the same as `Self`.\n\n    You will only need to worry about this if the object conforming to\n    `Decodable` is a reference type (i.e. a `class`), and one of the following\n    is true:\n\n     - Your type is not marked as `final`\n     - Your `decode` function is not marked as either `final` or `static`\n\n    In that case, you will need to explicitly set `DecodedType` to the type you\n    are returning in order for the compiler to be able to guarantee that this\n    protocol is being fully conformed to.\n\n    We expect the need for this typealias to be removed in a later version of Swift.\n  */\n  associatedtype DecodedType = Self\n\n  /**\n    Decode an object from JSON.\n\n    This is the main entry point for Argo. This function declares how the\n    conforming type should be decoded from JSON. Since this is a failable\n    operation, we need to return a `Decoded` type from this function.\n\n    - parameter json: The `JSON` representation of this object\n\n    - returns: A decoded instance of the `DecodedType`\n  */\n  static func decode(json: JSON) -> Decoded<DecodedType>\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/DecodeError.swift",
    "content": "/// Possible decoding failure reasons.\npublic enum DecodeError: ErrorType {\n  /// The type existing at the key didn't match the type being requested.\n  case TypeMismatch(expected: String, actual: String)\n\n  /// The key did not exist in the JSON.\n  case MissingKey(String)\n\n  /// A custom error case for adding explicit failure info.\n  case Custom(String)\n}\n\nextension DecodeError: CustomStringConvertible {\n  public var description: String {\n    switch self {\n    case let .TypeMismatch(expected, actual): return \"TypeMismatch(Expected \\(expected), got \\(actual))\"\n    case let .MissingKey(s): return \"MissingKey(\\(s))\"\n    case let .Custom(s): return \"Custom(\\(s))\"\n    }\n  }\n}\n\nextension DecodeError: Hashable {\n  public var hashValue: Int {\n    switch self {\n    case let .TypeMismatch(expected: expected, actual: actual):\n      return expected.hashValue ^ actual.hashValue\n    case let .MissingKey(string):\n      return string.hashValue\n    case let .Custom(string):\n      return string.hashValue\n    }\n  }\n}\n\npublic func == (lhs: DecodeError, rhs: DecodeError) -> Bool {\n  switch (lhs, rhs) {\n  case let (.TypeMismatch(expected: expected1, actual: actual1), .TypeMismatch(expected: expected2, actual: actual2)):\n    return expected1 == expected2 && actual1 == actual2\n\n  case let (.MissingKey(string1), .MissingKey(string2)):\n    return string1 == string2\n\n  case let (.Custom(string1), .Custom(string2)):\n    return string1 == string2\n\n  default:\n    return false\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/Alternative.swift",
    "content": "infix operator <|> { associativity left precedence 140 }\n\n/**\n  Return the left `Decoded` value if it is `.Success`, otherwise return the\n  default value on the right.\n\n  - If the left hand side is `.Success`, this will return the argument on the\n    left hand side.\n  - If the left hand side is `.Failure`, this will return the argument on the\n    right hand side.\n\n  - parameter lhs: A value of type `Decoded<T>`\n  - parameter rhs: A value of type `Decoded<T>`\n\n  - returns: A value of type `Decoded<T>`\n*/\npublic func <|> <T>(lhs: Decoded<T>, @autoclosure rhs: () -> Decoded<T>) -> Decoded<T> {\n  return lhs.or(rhs)\n}\n\npublic extension Decoded {\n  /**\n    Return `self` if it is `.Success`, otherwise return the provided default\n    value.\n\n    - If `self` is `.Success`, this will return `self`.\n    - If `self` is `.Failure`, this will return the default.\n\n    - parameter other: A value of type `Decoded<T>`\n\n    - returns: A value of type `Decoded<T>`\n  */\n  func or(@autoclosure other: () -> Decoded<T>) -> Decoded<T> {\n    switch self {\n      case .Success: return self\n      case .Failure: return other()\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/Applicative.swift",
    "content": "/**\n  Conditionally apply a `Decoded` function to a `Decoded` value.\n\n  - If either the function or value arguments are `.Failure`, this will return\n    `.Failure`. The function's `.Failure` takes precedence here, and will be\n    returned first. If the function is `.Success` and the value is `.Failure`,\n    then the value's `.Failure` will be returned.\n  - If both the function and value arguments are `.Success`, this will return\n    the result of the function applied to the unwrapped value.\n\n  - parameter f: A `Decoded` transformation function from type `T` to type `U`\n  - parameter x: A value of type `Decoded<T>`\n\n  - returns: A value of type `Decoded<U>`\n*/\npublic func <*> <T, U>(f: Decoded<T -> U>, x: Decoded<T>) -> Decoded<U> {\n  return x.apply(f)\n}\n\n/**\n  Wrap a value in the minimal context of `.Success`.\n\n  - parameter x: Any value\n\n  - returns: The provided value wrapped in `.Success`\n*/\npublic func pure<T>(x: T) -> Decoded<T> {\n  return .Success(x)\n}\n\npublic extension Decoded {\n  /**\n    Conditionally apply a `Decoded` function to `self`.\n\n    - If either the function or `self` are `.Failure`, this will return\n      `.Failure`. The function's `.Failure` takes precedence here, and will be\n      returned first. If the function is `.Success` and `self` is `.Failure`,\n      then `self`'s `.Failure` will be returned.\n    - If both the function and `self` are `.Success`, this will return\n      the result of the function applied to the unwrapped value.\n\n    - parameter f: A `Decoded` transformation function from type `T` to type\n      `U`\n\n    - returns: A value of type `Decoded<U>`\n  */\n  func apply<U>(f: Decoded<T -> U>) -> Decoded<U> {\n    switch f {\n    case let .Success(function): return self.map(function)\n    case let .Failure(error): return .Failure(error)\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/Decoded.swift",
    "content": "/// The result of a failable decoding operation.\npublic enum Decoded<T> {\n  case Success(T)\n  case Failure(DecodeError)\n}\n\npublic extension Decoded {\n  /**\n    Get the unwrapped value as an `Optional`.\n\n    - returns: The unwrapped value if it exists, otherwise `.None`\n  */\n  var value: T? {\n    switch self {\n    case let .Success(value): return value\n    case .Failure: return .None\n    }\n  }\n\n  /**\n    Get the error value as an `Optional`.\n\n    - returns: The unwrapped error if it exists, otherwise `.None`\n  */\n  var error: DecodeError? {\n    switch self {\n    case .Success: return .None\n    case let .Failure(error): return error\n    }\n  }\n}\n\npublic extension Decoded {\n  /**\n    Convert a `Decoded` type into a `Decoded` `Optional` type.\n\n    This is useful for when a decode operation should be allowed to fail, such\n    as when decoding an optional property.\n\n    It only returns a `.Failure` case if the error is `.TypeMismatch` or\n    `.Custom`. If the error was `.MissingKey`, it converts the failure into\n    `.Success(.None)`.\n\n    - parameter x: A `Decoded` type\n\n    - returns: The `Decoded` type with a `.TypeMismatch` failure converted to\n               `.Success(.None)`\n  */\n  static func optional<T>(x: Decoded<T>) -> Decoded<T?> {\n    switch x {\n    case let .Success(value): return .Success(.Some(value))\n    case .Failure(.MissingKey): return .Success(.None)\n    case let .Failure(.TypeMismatch(expected, actual)):\n      return .Failure(.TypeMismatch(expected: expected, actual: actual))\n    case let .Failure(.Custom(x)): return .Failure(.Custom(x))\n    }\n  }\n\n  /**\n    Convert an `Optional` into a `Decoded` value.\n\n    If the provided optional is `.Some`, this method extracts the value and\n    wraps it in `.Success`. Otherwise, it returns a `.TypeMismatch` error.\n\n    - returns: The provided `Optional` value transformed into a `Decoded` value\n  */\n  static func fromOptional<T>(x: T?) -> Decoded<T> {\n    switch x {\n    case let .Some(value): return .Success(value)\n    case .None: return .typeMismatch(\".Some(\\(T.self))\", actual: \".None\")\n    }\n  }\n}\n\npublic extension Decoded {\n  /**\n    Convenience function for creating `.TypeMismatch` errors.\n\n    - parameter expected: A string describing the expected type\n    - parameter actual: A string describing the actual type\n\n    - returns: A `Decoded.Failure` with a `.TypeMismatch` error constructed\n               from the provided `expected` and `actual` values\n  */\n  static func typeMismatch<T, U>(expected: String, actual: U) -> Decoded<T> {\n    return .Failure(.TypeMismatch(expected: expected, actual: String(actual)))\n  }\n\n  /**\n    Convenience function for creating `.MissingKey` errors.\n\n    - parameter name: The name of the missing key\n\n    - returns: A `Decoded.Failure` with a `.MissingKey` error constructed from\n               the provided `name` value\n  */\n  static func missingKey<T>(name: String) -> Decoded<T> {\n    return .Failure(.MissingKey(name))\n  }\n\n  /**\n    Convenience function for creating `.Custom` errors\n\n    - parameter message: The custom error message\n\n    - returns: A `Decoded.Failure` with a `.Custom` error constructed from the\n               provided `message` value\n  */\n  static func customError<T>(message: String) -> Decoded<T> {\n    return .Failure(.Custom(message))\n  }\n}\n\nextension Decoded: CustomStringConvertible {\n  public var description: String {\n    switch self {\n    case let .Success(value): return \"Success(\\(value))\"\n    case let .Failure(error): return \"Failure(\\(error))\"\n    }\n  }\n}\n\npublic extension Decoded {\n  /**\n    Extract the `.Success` value or throw an error.\n\n    This can be used to move from `Decoded` types into the world of `throws`.\n    If the value exists, this will return it. Otherwise, it will throw the error\n    information.\n\n    - throws: `DecodeError` if `self` is `.Failure`\n\n    - returns: The unwrapped value\n  */\n  func dematerialize() throws -> T {\n    switch self {\n    case let .Success(value): return value\n    case let .Failure(error): throw error\n    }\n  }\n}\n\n/**\n  Construct a `Decoded` type from a throwing function.\n\n  This can be used to move from the world of `throws` into a `Decoded` type. If\n  the function succeeds, it will wrap the returned value in a minimal context of\n  `.Success`. Otherwise, it will return a custom error with the thrown error from\n  the function.\n\n  - parameter f: A function from `Void` to `T` that can `throw` an error\n\n  - returns: A `Decoded` type representing the success or failure of the function\n*/\npublic func materialize<T>(f: () throws -> T) -> Decoded<T> {\n  do {\n    return .Success(try f())\n  } catch {\n    return .customError(\"\\(error)\")\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/FailureCoalescing.swift",
    "content": "/**\n  Return the unwrapped value of the `Decoded` value on the left if it is\n  `.Success`, otherwise return the default on the right.\n\n  - If the left hand side is `.Success`, this will return the unwrapped value\n    from the left hand side argument.\n  - If the left hand side is `.Failure`, this will return the default value on\n    the right hand side.\n\n  - parameter lhs: A value of type `Decoded<T>`\n  - parameter rhs: An autoclosure returning a value of type `T`\n\n  - returns: A value of type `T`\n*/\npublic func ?? <T>(lhs: Decoded<T>, @autoclosure rhs: () -> T) -> T {\n  switch lhs {\n  case let .Success(x): return x\n  case .Failure: return rhs()\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/Functor.swift",
    "content": "/**\n  Conditionally map a function over a `Decoded` value.\n\n  - If the value is `.Failure`, the function will not be evaluated and this\n    will return `.Failure`.\n  - If the value is `.Success`, the function will be applied to the unwrapped\n    value.\n\n  - parameter f: A transformation function from type `T` to type `U`\n  - parameter x: A value of type `Decoded<T>`\n\n  - returns: A value of type `Decoded<U>`\n*/\npublic func <^> <T, U>(@noescape f: T -> U, x: Decoded<T>) -> Decoded<U> {\n  return x.map(f)\n}\n\npublic extension Decoded {\n  /**\n    Conditionally map a function over `self`.\n\n    - If `self` is `.Failure`, the function will not be evaluated and this will\n      return `.Failure`.\n    - If `self` is `.Success`, the function will be applied to the unwrapped\n      value.\n\n    - parameter f: A transformation function from type `T` to type `U`\n\n    - returns: A value of type `Decoded<U>`\n  */\n  func map<U>(@noescape f: T -> U) -> Decoded<U> {\n    switch self {\n    case let .Success(value): return .Success(f(value))\n    case let .Failure(error): return .Failure(error)\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/Decoded/Monad.swift",
    "content": "/**\n  Conditionally map a function over a `Decoded` value, flattening the result.\n\n  - If the value is `.Failure`, the function will not be evaluated and this\n    will return `.Failure`.\n  - If the value is `.Success`, the function will be applied to the unwrapped\n    value.\n\n  - parameter x: A value of type `Decoded<T>`\n  - parameter f: A transformation function from type `T` to type `Decoded<U>`\n\n  - returns: A value of type `Decoded<U>`\n*/\npublic func >>- <T, U>(x: Decoded<T>, @noescape f: T -> Decoded<U>) -> Decoded<U> {\n  return x.flatMap(f)\n}\n\n/**\n  Conditionally map a function over a `Decoded` value, flattening the result.\n\n  - If the value is `.Failure`, the function will not be evaluated and this\n    will return `.Failure`.\n  - If the value is `.Success`, the function will be applied to the unwrapped\n    value.\n\n  - parameter f: A transformation function from type `T` to type `Decoded<U>`\n  - parameter x: A value of type `Decoded<T>`\n\n  - returns: A value of type `Decoded<U>`\n*/\npublic func -<< <T, U>(@noescape f: T -> Decoded<U>, x: Decoded<T>) -> Decoded<U> {\n  return x.flatMap(f)\n}\n\npublic extension Decoded {\n  /**\n    Conditionally map a function over `self`, flattening the result.\n\n    - If `self` is `.Failure`, the function will not be evaluated and this will\n      return `.Failure`.\n    - If `self` is `.Success`, the function will be applied to the unwrapped\n      value.\n\n    - parameter f: A transformation function from type `T` to type `Decoded<U>`\n\n    - returns: A value of type `Decoded<U>`\n  */\n  func flatMap<U>(@noescape f: T -> Decoded<U>) -> Decoded<U> {\n    switch self {\n    case let .Success(value): return f(value)\n    case let .Failure(error): return .Failure(error)\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/JSON.swift",
    "content": "import Foundation\n\n/// A type safe representation of JSON.\npublic enum JSON {\n  case Object([Swift.String: JSON])\n  case Array([JSON])\n  case String(Swift.String)\n  case Number(NSNumber)\n  case Bool(Swift.Bool)\n  case Null\n}\n\npublic extension JSON {\n  /**\n    Transform an `AnyObject` instance into `JSON`.\n\n    This is used to move from a loosely typed object (like those returned from\n    `NSJSONSerialization`) to the strongly typed `JSON` tree structure.\n\n    - parameter json: A loosely typed object\n  */\n  init(_ json: AnyObject) {\n    switch json {\n\n    case let v as [AnyObject]:\n      self = .Array(v.map(JSON.init))\n\n    case let v as [Swift.String: AnyObject]:\n      self = .Object(v.map(JSON.init))\n\n    case let v as Swift.String:\n      self = .String(v)\n\n    case let v as NSNumber:\n      if v.isBool {\n        self = .Bool(v as Swift.Bool)\n      } else {\n        self = .Number(v)\n      }\n\n    default:\n      self = .Null\n    }\n  }\n}\n\nextension JSON: Decodable {\n  /**\n    Decode `JSON` into `Decoded<JSON>`.\n\n    This simply wraps the provided `JSON` in `.Success`. This is useful because\n    it means we can use `JSON` values with the `<|` family of operators to pull\n    out sub-keys.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: The provided `JSON` wrapped in `.Success`\n  */\n  public static func decode(j: JSON) -> Decoded<JSON> {\n    return pure(j)\n  }\n}\n\nextension JSON: CustomStringConvertible {\n  public var description: Swift.String {\n    switch self {\n    case let .String(v): return \"String(\\(v))\"\n    case let .Number(v): return \"Number(\\(v))\"\n    case let .Bool(v): return \"Bool(\\(v))\"\n    case let .Array(a): return \"Array(\\(a.description))\"\n    case let .Object(o): return \"Object(\\(o.description))\"\n    case .Null: return \"Null\"\n    }\n  }\n}\n\nextension JSON: Equatable { }\n\npublic func == (lhs: JSON, rhs: JSON) -> Bool {\n  switch (lhs, rhs) {\n  case let (.String(l), .String(r)): return l == r\n  case let (.Number(l), .Number(r)): return l == r\n  case let (.Bool(l), .Bool(r)): return l == r\n  case let (.Array(l), .Array(r)): return l == r\n  case let (.Object(l), .Object(r)): return l == r\n  case (.Null, .Null): return true\n  default: return false\n  }\n}\n\n/// MARK: Deprecations\n\nextension JSON {\n  @available(*, deprecated=3.0, renamed=\"init\")\n  static func parse(json: AnyObject) -> JSON {\n    return JSON(json)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo/Types/StandardTypes.swift",
    "content": "import Foundation\n\nextension String: Decodable {\n  /**\n    Decode `JSON` into `Decoded<String>`.\n\n    Succeeds if the value is a string, otherwise it returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `String` value\n  */\n  public static func decode(j: JSON) -> Decoded<String> {\n    switch j {\n    case let .String(s): return pure(s)\n    default: return .typeMismatch(\"String\", actual: j)\n    }\n  }\n}\n\nextension Int: Decodable {\n  /**\n    Decode `JSON` into `Decoded<Int>`.\n\n    Succeeds if the value is a number that can be converted to an `Int`,\n    otherwise it returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `Int` value\n  */\n  public static func decode(j: JSON) -> Decoded<Int> {\n    switch j {\n    case let .Number(n): return pure(n as Int)\n    default: return .typeMismatch(\"Int\", actual: j)\n    }\n  }\n}\n\nextension UInt: Decodable {\n  /**\n    Decode `JSON` into `Decoded<UInt>`.\n\n    Succeeds if the value is a number that can be converted to a `UInt`,\n    otherwise it returns a type mismatch.\n\n    - parameter json: The `JSON` value to decode\n\n    - returns: A decoded `UInt` value\n  */\n  public static func decode(j: JSON) -> Decoded<UInt> {\n    switch j {\n    case let .Number(n): return pure(n as UInt)\n    default: return .typeMismatch(\"UInt\", actual: j)\n    }\n  }\n}\n\nextension Int64: Decodable {\n  /**\n    Decode `JSON` into `Decoded<Int64>`.\n\n    Succeeds if the value is a number that can be converted to an `Int64` or a\n    string that represents a large number, otherwise it returns a type\n    mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `Int64` value\n  */\n  public static func decode(j: JSON) -> Decoded<Int64> {\n    switch j {\n    case let .Number(n): return pure(n.longLongValue)\n    case let .String(s):\n      guard let i = Int64(s) else { fallthrough }\n      return pure(i)\n    default: return .typeMismatch(\"Int64\", actual: j)\n    }\n  }\n}\n\nextension UInt64: Decodable {\n  /**\n    Decode `JSON` into `Decoded<UInt64>`.\n\n    Succeeds if the value is a number that can be converted to an `UInt64` or a\n    string that represents a large number, otherwise it returns a type\n    mismatch.\n\n    - parameter json: The `JSON` value to decode\n\n    - returns: A decoded `UInt` value\n  */\n  public static func decode(j: JSON) -> Decoded<UInt64> {\n    switch j {\n    case let .Number(n): return pure(n.unsignedLongLongValue)\n    case let .String(s):\n      guard let i = UInt64(s) else { fallthrough }\n      return pure(i)\n    default: return .typeMismatch(\"UInt64\", actual: j)\n    }\n  }\n}\n\nextension Double: Decodable {\n  /**\n    Decode `JSON` into `Decoded<Double>`.\n\n    Succeeds if the value is a number that can be converted to a `Double`,\n    otherwise it returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `Double` value\n  */\n  public static func decode(j: JSON) -> Decoded<Double> {\n    switch j {\n    case let .Number(n): return pure(n as Double)\n    default: return .typeMismatch(\"Double\", actual: j)\n    }\n  }\n}\n\nextension Float: Decodable {\n  /**\n    Decode `JSON` into `Decoded<Float>`.\n\n    Succeeds if the value is a number that can be converted to a `Float`,\n    otherwise it returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `Float` value\n  */\n  public static func decode(j: JSON) -> Decoded<Float> {\n    switch j {\n    case let .Number(n): return pure(n as Float)\n    default: return .typeMismatch(\"Float\", actual: j)\n    }\n  }\n}\n\nextension Bool: Decodable {\n  /**\n    Decode `JSON` into `Decoded<Bool>`.\n\n    Succeeds if the value is a boolean or if the value is a number that is able\n    to be converted to a boolean, otherwise it returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded `Bool` value\n  */\n  public static func decode(j: JSON) -> Decoded<Bool> {\n    switch j {\n    case let .Bool(n): return pure(n)\n    case let .Number(n): return pure(n as Bool)\n    default: return .typeMismatch(\"Bool\", actual: j)\n    }\n  }\n}\n\npublic extension Optional where Wrapped: Decodable, Wrapped == Wrapped.DecodedType {\n  /**\n    Decode `JSON` into an `Optional<Wrapped>` value where `Wrapped` is `Decodable`.\n\n    Returns a decoded optional value from the result of performing `decode` on\n    the internal wrapped type.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded optional `Wrapped` value\n  */\n  static func decode(j: JSON) -> Decoded<Wrapped?> {\n    return .optional(Wrapped.decode(j))\n  }\n}\n\npublic extension CollectionType where Generator.Element: Decodable, Generator.Element == Generator.Element.DecodedType {\n  /**\n    Decode `JSON` into an array of values where the elements of the array are\n    `Decodable`.\n\n    If the `JSON` is an array of `JSON` objects, this returns a decoded array\n    of values by mapping the element's `decode` function over the `JSON` and\n    then applying `sequence` to the result. This makes this `decode` function\n    an all-or-nothing operation (See the documentation for `sequence` for more\n    info).\n\n    If the `JSON` is not an array, this returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded array of values\n  */\n  static func decode(j: JSON) -> Decoded<[Generator.Element]> {\n    switch j {\n    case let .Array(a): return sequence(a.map(Generator.Element.decode))\n    default: return .typeMismatch(\"Array\", actual: j)\n    }\n  }\n}\n\n/**\n  Decode `JSON` into an array of values where the elements of the array are\n  `Decodable`.\n\n  If the `JSON` is an array of `JSON` objects, this returns a decoded array\n  of values by mapping the element's `decode` function over the `JSON` and\n  then applying `sequence` to the result. This makes `decodeArray` an\n  all-or-nothing operation (See the documentation for `sequence` for more\n  info).\n\n  If the `JSON` is not an array, this returns a type mismatch.\n\n  This is a convenience function that is the same as `[T].decode(j)` (where `T`\n  is `Decodable`) and only exists to ease some pain around needing to use the\n  full type of the array when calling `decode`. We expect this function to be\n  removed in a future version.\n\n  - parameter j: The `JSON` value to decode\n\n  - returns: A decoded array of values\n*/\npublic func decodeArray<T: Decodable where T.DecodedType == T>(j: JSON) -> Decoded<[T]> {\n  return [T].decode(j)\n}\n\npublic extension DictionaryLiteralConvertible where Value: Decodable, Value == Value.DecodedType {\n  /**\n    Decode `JSON` into a dictionary of keys and values where the keys are\n    `String`s and the values are `Decodable`.\n\n    If the `JSON` is a dictionary of `String`/`JSON` pairs, this returns a decoded dictionary\n    of key/value pairs by mapping the value's `decode` function over the `JSON` and\n    then applying `sequence` to the result. This makes this `decode` function\n    an all-or-nothing operation (See the documentation for `sequence` for more\n    info).\n\n    If the `JSON` is not a dictionary, this returns a type mismatch.\n\n    - parameter j: The `JSON` value to decode\n\n    - returns: A decoded dictionary of key/value pairs\n  */\n  static func decode(j: JSON) -> Decoded<[String: Value]> {\n    switch j {\n    case let .Object(o): return sequence(Value.decode <^> o)\n    default: return .typeMismatch(\"Object\", actual: j)\n    }\n  }\n}\n\n/**\n  Decode `JSON` into a dictionary of keys and values where the keys are\n  `String`s and the values are `Decodable`.\n\n  If the `JSON` is a dictionary of `String`/`JSON` pairs, this returns a\n  decoded dictionary of key/value pairs by mapping the value's `decode`\n  function over the `JSON` and then applying `sequence` to the result. This\n  makes `decodeObject` an all-or-nothing operation (See the documentation for\n  `sequence` for more info).\n\n  If the `JSON` is not a dictionary, this returns a type mismatch.\n\n  This is a convenience function that is the same as `[String: T].decode(j)`\n  (where `T` is `Decodable`) and only exists to ease some pain around needing to\n  use the full type of the dictionary when calling `decode`. We expect this\n  function to be removed in a future version.\n\n  - parameter j: The `JSON` value to decode\n\n  - returns: A decoded dictionary of key/value pairs\n*/\npublic func decodeObject<T: Decodable where T.DecodedType == T>(j: JSON) -> Decoded<[String: T]> {\n  return [String: T].decode(j)\n}\n\n/**\n  Pull an embedded `JSON` value from a specified key.\n\n  If the `JSON` value is an object, it will attempt to return the embedded\n  `JSON` value at the specified key, failing if the key doesn't exist.\n\n  If the `JSON` value is not an object, this will return a type mismatch.\n\n  This is similar to adding a subscript to `JSON`, except that it returns a\n  `Decoded` type.\n\n  - parameter json: The `JSON` value that contains the key\n  - parameter key: The key containing the embedded `JSON` object\n\n  - returns: A decoded `JSON` value representing the success or failure of\n             extracting the value from the object\n*/\npublic func decodedJSON(json: JSON, forKey key: String) -> Decoded<JSON> {\n  switch json {\n  case let .Object(o): return guardNull(key, j: o[key] ?? .Null)\n  default: return .typeMismatch(\"Object\", actual: json)\n  }\n}\n\nprivate func guardNull(key: String, j: JSON) -> Decoded<JSON> {\n  switch j {\n  case .Null: return .missingKey(key)\n  default: return pure(j)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/Basics.xcplaygroundpage/Contents.swift",
    "content": "/*:\n**Note:** For **Argo** to be imported into the Playground, ensure that the **Argo-Mac** *scheme* is selected from the list of schemes.\n\n* * *\n*/\nimport Foundation\nimport Argo\nimport Curry\n/*:\n**Helper function** – load JSON from a file\n*/\nfunc JSONFromFile(file: String) -> AnyObject? {\n  return NSBundle.mainBundle().pathForResource(file, ofType: \"json\")\n    .flatMap { NSData(contentsOfFile: $0) }\n    .flatMap(JSONObjectWithData)\n}\n\nfunc JSONObjectWithData(data: NSData) -> AnyObject? {\n  do { return try NSJSONSerialization.JSONObjectWithData(data, options: []) }\n  catch { return .None }\n}\n/*:\n## Decoding JSON into a simple **User** struct\n\nThe **User** struct has three properties, one of which is an Optional value.\n\n(The example JSON file can be found in the **Resources** folder.)\n*/\nstruct User {\n  let id: Int\n  let name: String\n  let email: String?\n}\n\nextension User: CustomStringConvertible {\n  var description: String {\n    return \"name: \\(name), id: \\(id), email: \\(email)\"\n  }\n}\n\nextension User: Decodable  {\n  static func decode(j: JSON) -> Decoded<User> {\n    return curry(self.init)\n      <^> j <| \"id\"\n      <*> j <| \"name\"\n      <*> j <|? \"email\"\n  }\n}\n/*:\n* * *\n*/\nlet user: User? = JSONFromFile(\"user_with_email\").flatMap(decode)\nprint(user!)\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/Basics.xcplaygroundpage/Resources/user_with_email.json",
    "content": "{\n  \"id\": 1,\n  \"name\": \"Cool User\",\n  \"email\": \"u.cool@example.com\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/Basics.xcplaygroundpage/timeline.xctimeline",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Timeline\n   version = \"3.0\">\n   <TimelineItems>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=9&amp;EndingLineNumber=67&amp;StartingColumnNumber=1&amp;StartingLineNumber=67&amp;Timestamp=455496627.584604\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=11&amp;EndingLineNumber=71&amp;StartingColumnNumber=1&amp;StartingLineNumber=69&amp;Timestamp=455496627.584762\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=12&amp;EndingLineNumber=73&amp;StartingColumnNumber=1&amp;StartingLineNumber=73&amp;Timestamp=455496627.584881\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=9&amp;EndingLineNumber=67&amp;StartingColumnNumber=1&amp;StartingLineNumber=67&amp;Timestamp=455496627.584995\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=11&amp;EndingLineNumber=67&amp;StartingColumnNumber=1&amp;StartingLineNumber=67&amp;Timestamp=455496627.585106\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=12&amp;EndingLineNumber=67&amp;StartingColumnNumber=1&amp;StartingLineNumber=67&amp;Timestamp=455496627.585219\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=10&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.58533\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=23&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.585446\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=20&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.585559\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=1681&amp;EndingColumnNumber=17&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455498186.272651\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=11&amp;EndingLineNumber=67&amp;StartingColumnNumber=1&amp;StartingLineNumber=67&amp;Timestamp=455496627.585782\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=10&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.585894\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=23&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.586006\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=17&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.586117\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=20&amp;EndingLineNumber=75&amp;StartingColumnNumber=1&amp;StartingLineNumber=75&amp;Timestamp=455496627.58623\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=5&amp;EndingLineNumber=66&amp;StartingColumnNumber=1&amp;StartingLineNumber=66&amp;Timestamp=455496627.586343\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=66&amp;StartingColumnNumber=1&amp;StartingLineNumber=66&amp;Timestamp=455496627.586456\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=66&amp;StartingColumnNumber=1&amp;StartingLineNumber=66&amp;Timestamp=455496627.586569\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=56&amp;StartingColumnNumber=1&amp;StartingLineNumber=56&amp;Timestamp=455496627.586678\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=58&amp;StartingColumnNumber=1&amp;StartingLineNumber=58&amp;Timestamp=455496627.586787\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=58&amp;StartingColumnNumber=1&amp;StartingLineNumber=58&amp;Timestamp=455496627.586894\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=0&amp;CharacterRangeLoc=0&amp;EndingColumnNumber=14&amp;EndingLineNumber=0&amp;StartingColumnNumber=1&amp;StartingLineNumber=0&amp;Timestamp=455491959.867682\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=9&amp;CharacterRangeLoc=1260&amp;EndingColumnNumber=15&amp;EndingLineNumber=56&amp;StartingColumnNumber=1&amp;StartingLineNumber=56&amp;Timestamp=455498186.273935\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n      <LoggerValueHistoryTimelineItem\n         documentLocation = \"#CharacterRangeLen=8&amp;CharacterRangeLoc=1260&amp;EndingColumnNumber=15&amp;EndingLineNumber=55&amp;StartingColumnNumber=1&amp;StartingLineNumber=55&amp;Timestamp=455498186.274038\"\n         selectedRepresentationIndex = \"0\"\n         shouldTrackSuperviewWidth = \"NO\">\n      </LoggerValueHistoryTimelineItem>\n   </TimelineItems>\n</Timeline>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/iTunes Example.xcplaygroundpage/Contents.swift",
    "content": "/*:\n**Note:** For **Argo** to be imported into the Playground, ensure that the **Argo-Mac** *scheme* is selected from the list of schemes.\n\n* * *\n*/\nimport Foundation\nimport Argo\nimport Curry\n/*:\n**Helper function** – load JSON from a file\n*/\nfunc JSONFromFile(file: String) -> AnyObject? {\n  return NSBundle.mainBundle().pathForResource(file, ofType: \"json\")\n    .flatMap { NSData(contentsOfFile: $0) }\n    .flatMap(JSONObjectWithData)\n}\n\nfunc JSONObjectWithData(data: NSData) -> AnyObject? {\n  do { return try NSJSONSerialization.JSONObjectWithData(data, options: []) }\n  catch { return .None }\n}\n/*:\nDuring JSON decoding, a **String** representation of a date needs to be converted to a **NSDate**.\nTo achieve this, a **NSDateFormatter** and a helper function will be used.\n*/\nlet jsonDateFormatter: NSDateFormatter = {\n  let dateFormatter = NSDateFormatter()\n  dateFormatter.dateFormat = \"yyyy-MM-dd'T'HH:mm:ssz\"\n  return dateFormatter\n}()\n\nlet toNSDate: String -> Decoded<NSDate> = {\n  .fromOptional(jsonDateFormatter.dateFromString($0))\n}\n/*:\n## Decoding selected entries from the iTunes store JSON format\n\nAn example JSON file (**tropos.json**) can be found in the **resources** folder.\n*/\nstruct App {\n  let name: String\n  let formattedPrice: String\n  let averageUserRating: Float?\n  let releaseDate: NSDate\n}\n\nextension App: CustomStringConvertible {\n  var description: String {\n    return \"name: \\(name)\\nprice: \\(formattedPrice), rating: \\(averageUserRating), released: \\(releaseDate)\"\n  }\n}\n\nextension App: Decodable  {\n  static func decode(j: JSON) -> Decoded<App> {\n    return curry(self.init)\n      <^> j <| \"trackName\"\n      <*> j <| \"formattedPrice\"\n      <*> j <|? \"averageUserRating\"\n      <*> (j <| \"releaseDate\" >>- toNSDate)\n  }\n}\n/*:\n* * *\n*/\nlet app: App? = (JSONFromFile(\"tropos\")?[\"results\"].flatMap(decode))?.first\nprint(app!)\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/iTunes Example.xcplaygroundpage/Resources/tropos.json",
    "content": "{\n  \"resultCount\":1,\n  \"results\":[\n             {\n             \"isGameCenterEnabled\":false,\n             \"screenshotUrls\":[\n                               \"http://a5.mzstatic.com/us/r30/Purple5/v4/8b/3e/bd/8b3ebd2c-9dfe-1ce5-cdf5-8c89d854e375/screen322x572.jpeg\",\n                               \"http://a1.mzstatic.com/us/r30/Purple5/v4/e6/4f/36/e64f369d-d453-f007-dd15-361d21641116/screen322x572.jpeg\",\n                               \"http://a1.mzstatic.com/us/r30/Purple1/v4/74/77/cd/7477cd91-a094-3c22-fff1-cf75e7474dad/screen322x572.jpeg\"\n                               ],\n             \"ipadScreenshotUrls\":[\n             \n             ],\n             \"artworkUrl60\":\"http://is2.mzstatic.com/image/pf/us/r30/Purple3/v4/1b/b7/31/1bb731e3-a35a-9eaa-b13e-c536e639851c/AppIcon60x60_U00402x.png\",\n             \"artworkUrl512\":\"http://is4.mzstatic.com/image/pf/us/r30/Purple3/v4/e2/c5/42/e2c542e5-664e-36df-2285-490b7c16941e/mzl.ivsinquu.png\",\n             \"artistViewUrl\":\"https://itunes.apple.com/us/artist/thoughtbot-inc./id337354066?uo=4\",\n             \"kind\":\"software\",\n             \"features\":[\n             \n             ],\n             \"supportedDevices\":[\n                                 \"iPhone4S\",\n                                 \"iPadThirdGen4G\",\n                                 \"iPodTouchFifthGen\",\n                                 \"iPhone6\",\n                                 \"iPadMini4G\",\n                                 \"iPhone6Plus\",\n                                 \"iPadThirdGen\",\n                                 \"iPadFourthGen\",\n                                 \"iPad23G\",\n                                 \"iPad2Wifi\",\n                                 \"iPadFourthGen4G\",\n                                 \"iPadMini\",\n                                 \"iPhone5c\",\n                                 \"iPhone5\",\n                                 \"iPhone5s\"\n                                 ],\n             \"advisories\":[\n             \n             ],\n             \"averageUserRatingForCurrentVersion\":5.0,\n             \"artworkUrl100\":\"http://is4.mzstatic.com/image/pf/us/r30/Purple3/v4/e2/c5/42/e2c542e5-664e-36df-2285-490b7c16941e/mzl.ivsinquu.png\",\n             \"trackCensoredName\":\"Tropos – Weather and forecasts for humans\",\n             \"languageCodesISO2A\":[\n                                   \"EN\"\n                                   ],\n             \"fileSizeBytes\":\"2945254\",\n             \"sellerUrl\":\"http://troposweather.com\",\n             \"contentAdvisoryRating\":\"4+\",\n             \"userRatingCountForCurrentVersion\":1,\n             \"trackViewUrl\":\"https://itunes.apple.com/us/app/tropos-weather-forecasts-for/id955209376?mt=8&uo=4\",\n             \"trackContentRating\":\"4+\",\n             \"currency\":\"USD\",\n             \"wrapperType\":\"software\",\n             \"version\":\"1.0.1\",\n             \"artistId\":337354066,\n             \"artistName\":\"thoughtbot, inc.\",\n             \"genres\":[\n                       \"Weather\"\n                       ],\n             \"price\":0.99,\n             \"description\":\"Weather and forecasts for humans. Information you can act on.\\n\\nMost weather apps throw a lot of information at you but that doesn't answer the question of \\\"What does it feel like outside?\\\". Tropos answers this by relating the current conditions to conditions the same time yesterday.\\n\\nFeatures:\\n• Current conditions presented in plain language. For example, “It is warmer tonight than last night.”\\n• Intelligent use of color to convey how it feels in your area compared to yesterday.\\n• Simple, 3-day forecast that allows you to see how the next few days are trending.\\n\\nthoughtbot is dedicated to building the best possible application. Your feedback is invaluable to us. Get in touch at help@troposweather.com.\",\n             \"bundleId\":\"com.thoughtbot.carlweathers\",\n             \"genreIds\":[\n                         \"6001\"\n                         ],\n             \"releaseDate\":\"2015-03-25T18:34:40Z\",\n             \"sellerName\":\"thoughtbot, inc.\",\n             \"trackId\":955209376,\n             \"trackName\":\"Tropos – Weather and forecasts for humans\",\n             \"primaryGenreName\":\"Weather\",\n             \"primaryGenreId\":6001,\n             \"releaseNotes\":\"- Fixed an issue where the app could crash if you're going buck-wild messing around with the pull to refresh control.\\n- Improved the relative weather description in cases where it's crazy hot or ridiculously cold outside. Tropos will no longer tell you that it's hotter today when it's 10°F outside. (Sorry, Boston)\\n- Fixed an issue where the high and low temperatures could be lower or higher than the current temperature, respectively. That's just silly.\\n\\nFinally, we want to thank everyone for supporting Tropos!\",\n             \"minimumOsVersion\":\"8.0\",\n             \"formattedPrice\":\"$0.99\",\n             \"averageUserRating\":4.5,\n             \"userRatingCount\":10\n             }\n             ]\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/Pages/iTunes Example.xcplaygroundpage/timeline.xctimeline",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Timeline\n   version = \"3.0\">\n   <TimelineItems>\n   </TimelineItems>\n</Timeline>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/contents.xcplayground",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<playground version='6.0' target-platform='osx' requires-full-environment='true' display-mode='rendered'/>"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo Playground.playground/playground.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Argo.playground\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.podspec",
    "content": "Pod::Spec.new do |spec|\n  spec.name = 'Argo'\n  spec.version = '3.1.0'\n  spec.summary = 'Functional JSON parsing library for Swift.'\n  spec.homepage = 'https://github.com/thoughtbot/Argo'\n  spec.license = { :type => 'MIT', :file => 'LICENSE' }\n  spec.author = {\n    'Gordon Fontenot' => 'gordon@thoughtbot.com',\n    'Tony DiPasquale' => 'tony@thoughtbot.com',\n    'thoughtbot' => nil,\n  }\n  spec.social_media_url = 'http://twitter.com/thoughtbot'\n  spec.source = { :git => 'https://github.com/thoughtbot/Argo.git', :tag => \"v#{spec.version}\", :submodules => true }\n  spec.source_files = 'Argo/**/*.{h,swift}', 'Carthage/Checkouts/Runes/Source/Runes.swift'\n  spec.requires_arc = true\n  spec.compiler_flags = '-whole-module-optimization'\n  spec.ios.deployment_target = '8.0'\n  spec.osx.deployment_target = '10.9'\n  spec.watchos.deployment_target = '2.0'\n  spec.tvos.deployment_target = '9.0'\nend\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t4D5F6DD91B3832C200D79B25 /* user_with_nested_name.json in Resources */ = {isa = PBXBuildFile; fileRef = 4D5F6DD81B3832C200D79B25 /* user_with_nested_name.json */; };\n\t\t4D5F6DDA1B3832C200D79B25 /* user_with_nested_name.json in Resources */ = {isa = PBXBuildFile; fileRef = 4D5F6DD81B3832C200D79B25 /* user_with_nested_name.json */; };\n\t\t809586051BB84CEE004F9319 /* Curry.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 809586041BB84CE7004F9319 /* Curry.framework */; };\n\t\t809754CB1BADF34200C409E6 /* Argo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 809754C11BADF34100C409E6 /* Argo.framework */; };\n\t\t809754D81BADF36D00C409E6 /* Decoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69E1ABC5F1300E3B0AB /* Decoded.swift */; };\n\t\t809754D91BADF36D00C409E6 /* JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69F1ABC5F1300E3B0AB /* JSON.swift */; };\n\t\t809754DA1BADF36D00C409E6 /* Decodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A01ABC5F1300E3B0AB /* Decodable.swift */; };\n\t\t809754DB1BADF36D00C409E6 /* StandardTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */; };\n\t\t809754DC1BADF36D00C409E6 /* DecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = F84318A71B9A2D7A00165216 /* DecodeError.swift */; };\n\t\t809754DD1BADF36D00C409E6 /* Runes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F876F1D61B56FBB300B38589 /* Runes.swift */; };\n\t\t809754DE1BADF36D00C409E6 /* Decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAF519D0F7900031E006 /* Decode.swift */; };\n\t\t809754DF1BADF36D00C409E6 /* (null) in Sources */ = {isa = PBXBuildFile; };\n\t\t809754E11BADF36D00C409E6 /* curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6991ABC5F1300E3B0AB /* curry.swift */; };\n\t\t809754E21BADF36D00C409E6 /* decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69A1ABC5F1300E3B0AB /* decode.swift */; };\n\t\t809754E31BADF36D00C409E6 /* flatReduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */; };\n\t\t809754E41BADF36D00C409E6 /* sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69C1ABC5F1300E3B0AB /* sequence.swift */; };\n\t\t809754E51BADF36D00C409E6 /* Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CBE6661A64521000316FBC /* Dictionary.swift */; };\n\t\t809754E61BADF36D00C409E6 /* RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF92789C1B9365900038A7E1 /* RawRepresentable.swift */; };\n\t\t809754E71BADF37200C409E6 /* Argo.h in Headers */ = {isa = PBXBuildFile; fileRef = F893356D1A4CE8FC00B88685 /* Argo.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t809754E81BADF3E400C409E6 /* PListDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6931A9CD4FC00B6CC83 /* PListDecodingTests.swift */; };\n\t\t809754E91BADF3E400C409E6 /* SwiftDictionaryDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6891A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift */; };\n\t\t809754EA1BADF3E400C409E6 /* OptionalPropertyDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0D19D215570031E006 /* OptionalPropertyDecodingTests.swift */; };\n\t\t809754EB1BADF3E400C409E6 /* EmbeddedJSONDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1119D30E660031E006 /* EmbeddedJSONDecodingTests.swift */; };\n\t\t809754EC1BADF3E400C409E6 /* TypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA08313019D5EEAF003B90D7 /* TypeTests.swift */; };\n\t\t809754ED1BADF3E400C409E6 /* ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA395DC61A52F93B00EB607E /* ExampleTests.swift */; };\n\t\t809754EE1BADF3E400C409E6 /* EquatableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EADADCB11A5DB6F600B180EC /* EquatableTests.swift */; };\n\t\t809754EF1BADF3E400C409E6 /* PerformanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA6DD69B1AB383FB00CA3A5B /* PerformanceTests.swift */; };\n\t\t809754F01BADF3E400C409E6 /* DecodedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA47BB521AFC5B76002D2CCD /* DecodedTests.swift */; };\n\t\t809754F11BADF3E400C409E6 /* RawRepresentableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1200CA1BAB5CBA006DDBD8 /* RawRepresentableTests.swift */; };\n\t\t809754F21BADF3E400C409E6 /* JSONFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0F19D21AF50031E006 /* JSONFileReader.swift */; };\n\t\t809754F31BADF3E400C409E6 /* PListFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF68D1A9CD4EA00B6CC83 /* PListFileReader.swift */; };\n\t\t809754F41BADF3E400C409E6 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFD19D2113C0031E006 /* User.swift */; };\n\t\t809754F51BADF3E400C409E6 /* Comment.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFF19D211630031E006 /* Comment.swift */; };\n\t\t809754F61BADF3E400C409E6 /* Post.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0119D211C10031E006 /* Post.swift */; };\n\t\t809754F71BADF3E400C409E6 /* TestModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1719D49A3E0031E006 /* TestModel.swift */; };\n\t\t809754F81BADF3E400C409E6 /* NSURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F802D4C21A5EE061005E236C /* NSURL.swift */; };\n\t\t809754F91BADF3ED00C409E6 /* user_with_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0419D2143A0031E006 /* user_with_email.json */; };\n\t\t809754FA1BADF3ED00C409E6 /* user_without_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0819D214AA0031E006 /* user_without_email.json */; };\n\t\t809754FB1BADF3ED00C409E6 /* user_with_nested_name.json in Resources */ = {isa = PBXBuildFile; fileRef = 4D5F6DD81B3832C200D79B25 /* user_with_nested_name.json */; };\n\t\t809754FC1BADF3ED00C409E6 /* url.json in Resources */ = {isa = PBXBuildFile; fileRef = F802D4C51A5EE2D5005E236C /* url.json */; };\n\t\t809754FD1BADF3ED00C409E6 /* root_array.json in Resources */ = {isa = PBXBuildFile; fileRef = F874B7E91A66BF52004CCE5E /* root_array.json */; };\n\t\t809754FE1BADF3ED00C409E6 /* TemplateIcon2x.png in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0919D214AA0031E006 /* TemplateIcon2x.png */; };\n\t\t809754FF1BADF3ED00C409E6 /* comment.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1319D30ED00031E006 /* comment.json */; };\n\t\t809755001BADF3ED00C409E6 /* post_no_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1519D30F8D0031E006 /* post_no_comments.json */; };\n\t\t809755011BADF3ED00C409E6 /* post_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313219D5EEF2003B90D7 /* post_comments.json */; };\n\t\t809755021BADF3ED00C409E6 /* post_bad_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = F8E33FA41A51E0C20025A6E5 /* post_bad_comments.json */; };\n\t\t809755031BADF3ED00C409E6 /* types.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313419D5EFC0003B90D7 /* types.json */; };\n\t\t809755041BADF3ED00C409E6 /* types_fail_embedded.json in Resources */ = {isa = PBXBuildFile; fileRef = EA4EAF7219DD96330036AE0D /* types_fail_embedded.json */; };\n\t\t809755051BADF3ED00C409E6 /* array_root.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC31A52F8EB00EB607E /* array_root.json */; };\n\t\t809755061BADF3ED00C409E6 /* root_object.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC91A52FC1400EB607E /* root_object.json */; };\n\t\t809755071BADF3ED00C409E6 /* big_data.json in Resources */ = {isa = PBXBuildFile; fileRef = EA6DD69E1AB384C700CA3A5B /* big_data.json */; };\n\t\t809755081BADF3ED00C409E6 /* user_with_bad_type.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB551AFC5DAC002D2CCD /* user_with_bad_type.json */; };\n\t\t809755091BADF3ED00C409E6 /* user_without_key.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB581AFC5E65002D2CCD /* user_without_key.json */; };\n\t\t8097550A1BADF3F200C409E6 /* types.plist in Resources */ = {isa = PBXBuildFile; fileRef = EABDF68E1A9CD4EA00B6CC83 /* types.plist */; };\n\t\tBF92789D1B9365900038A7E1 /* RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF92789C1B9365900038A7E1 /* RawRepresentable.swift */; };\n\t\tD0592EBE1B77DD8E00EFEF39 /* Decoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69E1ABC5F1300E3B0AB /* Decoded.swift */; };\n\t\tD0592EBF1B77DD8E00EFEF39 /* JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69F1ABC5F1300E3B0AB /* JSON.swift */; };\n\t\tD0592EC01B77DD8E00EFEF39 /* Decodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A01ABC5F1300E3B0AB /* Decodable.swift */; };\n\t\tD0592EC11B77DD8E00EFEF39 /* StandardTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */; };\n\t\tD0592EC21B77DD9300EFEF39 /* Runes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F876F1D61B56FBB300B38589 /* Runes.swift */; };\n\t\tD0592EC31B77DD9300EFEF39 /* Decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAF519D0F7900031E006 /* Decode.swift */; };\n\t\tD0592EC41B77DD9A00EFEF39 /* curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6991ABC5F1300E3B0AB /* curry.swift */; };\n\t\tD0592EC51B77DD9A00EFEF39 /* decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69A1ABC5F1300E3B0AB /* decode.swift */; };\n\t\tD0592EC61B77DD9A00EFEF39 /* flatReduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */; };\n\t\tD0592EC71B77DD9A00EFEF39 /* sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69C1ABC5F1300E3B0AB /* sequence.swift */; };\n\t\tD0592EC81B77DD9A00EFEF39 /* Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CBE6661A64521000316FBC /* Dictionary.swift */; };\n\t\tEA04D5911BBF1F40001DE23B /* Monad.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5901BBF1F40001DE23B /* Monad.swift */; };\n\t\tEA04D5921BBF1F40001DE23B /* Monad.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5901BBF1F40001DE23B /* Monad.swift */; };\n\t\tEA04D5931BBF1F40001DE23B /* Monad.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5901BBF1F40001DE23B /* Monad.swift */; };\n\t\tEA04D5951BBF1F80001DE23B /* Functor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5941BBF1F80001DE23B /* Functor.swift */; };\n\t\tEA04D5961BBF1F80001DE23B /* Functor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5941BBF1F80001DE23B /* Functor.swift */; };\n\t\tEA04D5971BBF1F80001DE23B /* Functor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5941BBF1F80001DE23B /* Functor.swift */; };\n\t\tEA04D5991BBF1FA4001DE23B /* Applicative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5981BBF1FA4001DE23B /* Applicative.swift */; };\n\t\tEA04D59A1BBF1FA4001DE23B /* Applicative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5981BBF1FA4001DE23B /* Applicative.swift */; };\n\t\tEA04D59B1BBF1FA4001DE23B /* Applicative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5981BBF1FA4001DE23B /* Applicative.swift */; };\n\t\tEA04D59D1BBF1FB9001DE23B /* Alternative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D59C1BBF1FB9001DE23B /* Alternative.swift */; };\n\t\tEA04D59E1BBF1FB9001DE23B /* Alternative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D59C1BBF1FB9001DE23B /* Alternative.swift */; };\n\t\tEA04D59F1BBF1FB9001DE23B /* Alternative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D59C1BBF1FB9001DE23B /* Alternative.swift */; };\n\t\tEA04D5A11BBF2021001DE23B /* FailureCoalescing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */; };\n\t\tEA04D5A21BBF2021001DE23B /* FailureCoalescing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */; };\n\t\tEA04D5A31BBF2021001DE23B /* FailureCoalescing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */; };\n\t\tEA04D5A51BBF2047001DE23B /* Argo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A41BBF2047001DE23B /* Argo.swift */; };\n\t\tEA04D5A61BBF2047001DE23B /* Argo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A41BBF2047001DE23B /* Argo.swift */; };\n\t\tEA04D5A71BBF2047001DE23B /* Argo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A41BBF2047001DE23B /* Argo.swift */; };\n\t\tEA08313119D5EEAF003B90D7 /* TypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA08313019D5EEAF003B90D7 /* TypeTests.swift */; };\n\t\tEA08313319D5EEF2003B90D7 /* post_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313219D5EEF2003B90D7 /* post_comments.json */; };\n\t\tEA08313519D5EFC0003B90D7 /* types.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313419D5EFC0003B90D7 /* types.json */; };\n\t\tEA1200CB1BAB5CBA006DDBD8 /* RawRepresentableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1200CA1BAB5CBA006DDBD8 /* RawRepresentableTests.swift */; };\n\t\tEA1200CC1BAB5CBA006DDBD8 /* RawRepresentableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1200CA1BAB5CBA006DDBD8 /* RawRepresentableTests.swift */; };\n\t\tEA1200CD1BAB621C006DDBD8 /* RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF92789C1B9365900038A7E1 /* RawRepresentable.swift */; };\n\t\tEA1200CE1BAB621C006DDBD8 /* RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF92789C1B9365900038A7E1 /* RawRepresentable.swift */; };\n\t\tEA395DC21A5209C000EB607E /* post_bad_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = F8E33FA41A51E0C20025A6E5 /* post_bad_comments.json */; };\n\t\tEA395DC41A52F8EB00EB607E /* array_root.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC31A52F8EB00EB607E /* array_root.json */; };\n\t\tEA395DC51A52F8EE00EB607E /* array_root.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC31A52F8EB00EB607E /* array_root.json */; };\n\t\tEA395DC71A52F93B00EB607E /* ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA395DC61A52F93B00EB607E /* ExampleTests.swift */; };\n\t\tEA395DC81A52FA5300EB607E /* ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA395DC61A52F93B00EB607E /* ExampleTests.swift */; };\n\t\tEA395DCA1A52FC1400EB607E /* root_object.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC91A52FC1400EB607E /* root_object.json */; };\n\t\tEA395DCB1A52FC1400EB607E /* root_object.json in Resources */ = {isa = PBXBuildFile; fileRef = EA395DC91A52FC1400EB607E /* root_object.json */; };\n\t\tEA47BB531AFC5B76002D2CCD /* DecodedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA47BB521AFC5B76002D2CCD /* DecodedTests.swift */; };\n\t\tEA47BB541AFC5B76002D2CCD /* DecodedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA47BB521AFC5B76002D2CCD /* DecodedTests.swift */; };\n\t\tEA47BB561AFC5DAC002D2CCD /* user_with_bad_type.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB551AFC5DAC002D2CCD /* user_with_bad_type.json */; };\n\t\tEA47BB571AFC5DAC002D2CCD /* user_with_bad_type.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB551AFC5DAC002D2CCD /* user_with_bad_type.json */; };\n\t\tEA47BB591AFC5E65002D2CCD /* user_without_key.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB581AFC5E65002D2CCD /* user_without_key.json */; };\n\t\tEA47BB5A1AFC5E65002D2CCD /* user_without_key.json in Resources */ = {isa = PBXBuildFile; fileRef = EA47BB581AFC5E65002D2CCD /* user_without_key.json */; };\n\t\tEA4EAF7319DD96330036AE0D /* types_fail_embedded.json in Resources */ = {isa = PBXBuildFile; fileRef = EA4EAF7219DD96330036AE0D /* types_fail_embedded.json */; };\n\t\tEA6DD69C1AB383FB00CA3A5B /* PerformanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA6DD69B1AB383FB00CA3A5B /* PerformanceTests.swift */; };\n\t\tEA6DD69D1AB383FB00CA3A5B /* PerformanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA6DD69B1AB383FB00CA3A5B /* PerformanceTests.swift */; };\n\t\tEA6DD69F1AB384C700CA3A5B /* big_data.json in Resources */ = {isa = PBXBuildFile; fileRef = EA6DD69E1AB384C700CA3A5B /* big_data.json */; };\n\t\tEA6DD6A01AB384C700CA3A5B /* big_data.json in Resources */ = {isa = PBXBuildFile; fileRef = EA6DD69E1AB384C700CA3A5B /* big_data.json */; };\n\t\tEA9159F61BDE74BC00D85292 /* Argo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A41BBF2047001DE23B /* Argo.swift */; };\n\t\tEA9159F71BDE74C700D85292 /* catDecoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8EF432E1BBC728A001886BA /* catDecoded.swift */; };\n\t\tEA9159F81BDE74E400D85292 /* Monad.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5901BBF1F40001DE23B /* Monad.swift */; };\n\t\tEA9159F91BDE74EB00D85292 /* Functor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5941BBF1F80001DE23B /* Functor.swift */; };\n\t\tEA9159FA1BDE74F300D85292 /* Applicative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5981BBF1FA4001DE23B /* Applicative.swift */; };\n\t\tEA9159FB1BDE74F800D85292 /* Alternative.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D59C1BBF1FB9001DE23B /* Alternative.swift */; };\n\t\tEA9159FC1BDE74FC00D85292 /* FailureCoalescing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */; };\n\t\tEABDF68A1A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6891A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift */; };\n\t\tEABDF68B1A9CD46400B6CC83 /* SwiftDictionaryDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6891A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift */; };\n\t\tEABDF68F1A9CD4EA00B6CC83 /* PListFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF68D1A9CD4EA00B6CC83 /* PListFileReader.swift */; };\n\t\tEABDF6901A9CD4EA00B6CC83 /* PListFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF68D1A9CD4EA00B6CC83 /* PListFileReader.swift */; };\n\t\tEABDF6911A9CD4EA00B6CC83 /* types.plist in Resources */ = {isa = PBXBuildFile; fileRef = EABDF68E1A9CD4EA00B6CC83 /* types.plist */; };\n\t\tEABDF6921A9CD4EA00B6CC83 /* types.plist in Resources */ = {isa = PBXBuildFile; fileRef = EABDF68E1A9CD4EA00B6CC83 /* types.plist */; };\n\t\tEABDF6941A9CD4FC00B6CC83 /* PListDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6931A9CD4FC00B6CC83 /* PListDecodingTests.swift */; };\n\t\tEABDF6951A9CD4FC00B6CC83 /* PListDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EABDF6931A9CD4FC00B6CC83 /* PListDecodingTests.swift */; };\n\t\tEAD9FAF619D0F7900031E006 /* Decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAF519D0F7900031E006 /* Decode.swift */; };\n\t\tEAD9FAFE19D2113C0031E006 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFD19D2113C0031E006 /* User.swift */; };\n\t\tEAD9FB0019D211630031E006 /* Comment.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFF19D211630031E006 /* Comment.swift */; };\n\t\tEAD9FB0219D211C10031E006 /* Post.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0119D211C10031E006 /* Post.swift */; };\n\t\tEAD9FB0619D2143A0031E006 /* user_with_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0419D2143A0031E006 /* user_with_email.json */; };\n\t\tEAD9FB0A19D214AA0031E006 /* user_without_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0819D214AA0031E006 /* user_without_email.json */; };\n\t\tEAD9FB0B19D214AA0031E006 /* TemplateIcon2x.png in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0919D214AA0031E006 /* TemplateIcon2x.png */; };\n\t\tEAD9FB0E19D215570031E006 /* OptionalPropertyDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0D19D215570031E006 /* OptionalPropertyDecodingTests.swift */; };\n\t\tEAD9FB1019D21AF50031E006 /* JSONFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0F19D21AF50031E006 /* JSONFileReader.swift */; };\n\t\tEAD9FB1219D30E660031E006 /* EmbeddedJSONDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1119D30E660031E006 /* EmbeddedJSONDecodingTests.swift */; };\n\t\tEAD9FB1419D30ED00031E006 /* comment.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1319D30ED00031E006 /* comment.json */; };\n\t\tEAD9FB1619D30F8D0031E006 /* post_no_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1519D30F8D0031E006 /* post_no_comments.json */; };\n\t\tEAD9FB1819D49A3E0031E006 /* TestModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1719D49A3E0031E006 /* TestModel.swift */; };\n\t\tEADADCB21A5DB6F600B180EC /* EquatableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EADADCB11A5DB6F600B180EC /* EquatableTests.swift */; };\n\t\tEADADCB41A5DB7F800B180EC /* EquatableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EADADCB11A5DB6F600B180EC /* EquatableTests.swift */; };\n\t\tF802D4C31A5EE061005E236C /* NSURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F802D4C21A5EE061005E236C /* NSURL.swift */; };\n\t\tF802D4C41A5EE172005E236C /* NSURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F802D4C21A5EE061005E236C /* NSURL.swift */; };\n\t\tF802D4C61A5EE2D5005E236C /* url.json in Resources */ = {isa = PBXBuildFile; fileRef = F802D4C51A5EE2D5005E236C /* url.json */; };\n\t\tF802D4C71A5EE2D5005E236C /* url.json in Resources */ = {isa = PBXBuildFile; fileRef = F802D4C51A5EE2D5005E236C /* url.json */; };\n\t\tF82D15F31C3C82730079FFB5 /* NSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = F82D15F21C3C82730079FFB5 /* NSNumber.swift */; };\n\t\tF84290291B57EFAE008F57B4 /* Curry.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F84290281B57EFAE008F57B4 /* Curry.framework */; };\n\t\tF842902B1B57EFB5008F57B4 /* Curry.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F842902A1B57EFB5008F57B4 /* Curry.framework */; };\n\t\tF84318A81B9A2D7A00165216 /* DecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = F84318A71B9A2D7A00165216 /* DecodeError.swift */; };\n\t\tF84318A91B9A2D7A00165216 /* DecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = F84318A71B9A2D7A00165216 /* DecodeError.swift */; };\n\t\tF84318AA1B9A2D7A00165216 /* DecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = F84318A71B9A2D7A00165216 /* DecodeError.swift */; };\n\t\tF862E0AB1A519D470093B028 /* TypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA08313019D5EEAF003B90D7 /* TypeTests.swift */; };\n\t\tF862E0AC1A519D520093B028 /* post_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313219D5EEF2003B90D7 /* post_comments.json */; };\n\t\tF862E0AD1A519D560093B028 /* types.json in Resources */ = {isa = PBXBuildFile; fileRef = EA08313419D5EFC0003B90D7 /* types.json */; };\n\t\tF862E0AE1A519D5C0093B028 /* types_fail_embedded.json in Resources */ = {isa = PBXBuildFile; fileRef = EA4EAF7219DD96330036AE0D /* types_fail_embedded.json */; };\n\t\tF874B7EA1A66BF52004CCE5E /* root_array.json in Resources */ = {isa = PBXBuildFile; fileRef = F874B7E91A66BF52004CCE5E /* root_array.json */; };\n\t\tF874B7EB1A66C221004CCE5E /* root_array.json in Resources */ = {isa = PBXBuildFile; fileRef = F874B7E91A66BF52004CCE5E /* root_array.json */; };\n\t\tF876F1D71B56FBB300B38589 /* Runes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F876F1D61B56FBB300B38589 /* Runes.swift */; };\n\t\tF876F1D81B56FBB300B38589 /* Runes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F876F1D61B56FBB300B38589 /* Runes.swift */; };\n\t\tF87897EF1A927864009316A5 /* Argo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EAD9FACF19D0EAB50031E006 /* Argo.framework */; };\n\t\tF87EB6A21ABC5F1300E3B0AB /* curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6991ABC5F1300E3B0AB /* curry.swift */; };\n\t\tF87EB6A31ABC5F1300E3B0AB /* curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6991ABC5F1300E3B0AB /* curry.swift */; };\n\t\tF87EB6A41ABC5F1300E3B0AB /* decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69A1ABC5F1300E3B0AB /* decode.swift */; };\n\t\tF87EB6A51ABC5F1300E3B0AB /* decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69A1ABC5F1300E3B0AB /* decode.swift */; };\n\t\tF87EB6A61ABC5F1300E3B0AB /* flatReduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */; };\n\t\tF87EB6A71ABC5F1300E3B0AB /* flatReduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */; };\n\t\tF87EB6A81ABC5F1300E3B0AB /* sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69C1ABC5F1300E3B0AB /* sequence.swift */; };\n\t\tF87EB6A91ABC5F1300E3B0AB /* sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69C1ABC5F1300E3B0AB /* sequence.swift */; };\n\t\tF87EB6AA1ABC5F1300E3B0AB /* Decoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69E1ABC5F1300E3B0AB /* Decoded.swift */; };\n\t\tF87EB6AB1ABC5F1300E3B0AB /* Decoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69E1ABC5F1300E3B0AB /* Decoded.swift */; };\n\t\tF87EB6AC1ABC5F1300E3B0AB /* JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69F1ABC5F1300E3B0AB /* JSON.swift */; };\n\t\tF87EB6AD1ABC5F1300E3B0AB /* JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB69F1ABC5F1300E3B0AB /* JSON.swift */; };\n\t\tF87EB6AE1ABC5F1300E3B0AB /* Decodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A01ABC5F1300E3B0AB /* Decodable.swift */; };\n\t\tF87EB6AF1ABC5F1300E3B0AB /* Decodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A01ABC5F1300E3B0AB /* Decodable.swift */; };\n\t\tF87EB6B01ABC5F1300E3B0AB /* StandardTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */; };\n\t\tF87EB6B11ABC5F1300E3B0AB /* StandardTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */; };\n\t\tF893355F1A4CE83000B88685 /* Argo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F89335541A4CE83000B88685 /* Argo.framework */; };\n\t\tF893356E1A4CE8FC00B88685 /* Argo.h in Headers */ = {isa = PBXBuildFile; fileRef = F893356D1A4CE8FC00B88685 /* Argo.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF893356F1A4CE8FC00B88685 /* Argo.h in Headers */ = {isa = PBXBuildFile; fileRef = F893356D1A4CE8FC00B88685 /* Argo.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF89335761A4CE93600B88685 /* Decode.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAF519D0F7900031E006 /* Decode.swift */; };\n\t\tF8C2561A1C3C855B00B70968 /* NSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = F82D15F21C3C82730079FFB5 /* NSNumber.swift */; };\n\t\tF8C2561B1C3C855C00B70968 /* NSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = F82D15F21C3C82730079FFB5 /* NSNumber.swift */; };\n\t\tF8C2561C1C3C855C00B70968 /* NSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = F82D15F21C3C82730079FFB5 /* NSNumber.swift */; };\n\t\tF8C5927E1CB726C7007C5ABC /* booleans.json in Resources */ = {isa = PBXBuildFile; fileRef = F8C5927D1CB726C7007C5ABC /* booleans.json */; };\n\t\tF8C5927F1CB726CA007C5ABC /* booleans.json in Resources */ = {isa = PBXBuildFile; fileRef = F8C5927D1CB726C7007C5ABC /* booleans.json */; };\n\t\tF8C592801CB726CB007C5ABC /* booleans.json in Resources */ = {isa = PBXBuildFile; fileRef = F8C5927D1CB726C7007C5ABC /* booleans.json */; };\n\t\tF8C592821CB726FB007C5ABC /* Booleans.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8C592811CB726FB007C5ABC /* Booleans.swift */; };\n\t\tF8C592831CB726FE007C5ABC /* Booleans.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8C592811CB726FB007C5ABC /* Booleans.swift */; };\n\t\tF8C592841CB726FF007C5ABC /* Booleans.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8C592811CB726FB007C5ABC /* Booleans.swift */; };\n\t\tF8CBE6671A64521000316FBC /* Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CBE6661A64521000316FBC /* Dictionary.swift */; };\n\t\tF8CBE6681A64526300316FBC /* Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CBE6661A64521000316FBC /* Dictionary.swift */; };\n\t\tF8E33FA51A51E0C20025A6E5 /* post_bad_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = F8E33FA41A51E0C20025A6E5 /* post_bad_comments.json */; };\n\t\tF8EF432F1BBC728A001886BA /* catDecoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8EF432E1BBC728A001886BA /* catDecoded.swift */; };\n\t\tF8EF43301BBC729F001886BA /* catDecoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8EF432E1BBC728A001886BA /* catDecoded.swift */; };\n\t\tF8EF43311BBC729F001886BA /* catDecoded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8EF432E1BBC728A001886BA /* catDecoded.swift */; };\n\t\tF8EF756A1A4CEC6100BDCC2D /* OptionalPropertyDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0D19D215570031E006 /* OptionalPropertyDecodingTests.swift */; };\n\t\tF8EF756B1A4CEC6400BDCC2D /* EmbeddedJSONDecodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1119D30E660031E006 /* EmbeddedJSONDecodingTests.swift */; };\n\t\tF8EF756C1A4CEC7100BDCC2D /* JSONFileReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0F19D21AF50031E006 /* JSONFileReader.swift */; };\n\t\tF8EF756D1A4CEC7100BDCC2D /* user_with_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0419D2143A0031E006 /* user_with_email.json */; };\n\t\tF8EF756E1A4CEC7100BDCC2D /* user_without_email.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0819D214AA0031E006 /* user_without_email.json */; };\n\t\tF8EF756F1A4CEC7100BDCC2D /* TemplateIcon2x.png in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB0919D214AA0031E006 /* TemplateIcon2x.png */; };\n\t\tF8EF75701A4CEC7100BDCC2D /* comment.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1319D30ED00031E006 /* comment.json */; };\n\t\tF8EF75711A4CEC7100BDCC2D /* post_no_comments.json in Resources */ = {isa = PBXBuildFile; fileRef = EAD9FB1519D30F8D0031E006 /* post_no_comments.json */; };\n\t\tF8EF75721A4CEC7800BDCC2D /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFD19D2113C0031E006 /* User.swift */; };\n\t\tF8EF75731A4CEC7800BDCC2D /* Comment.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FAFF19D211630031E006 /* Comment.swift */; };\n\t\tF8EF75741A4CEC7800BDCC2D /* Post.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB0119D211C10031E006 /* Post.swift */; };\n\t\tF8EF75751A4CEC7800BDCC2D /* TestModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD9FB1719D49A3E0031E006 /* TestModel.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t809754CC1BADF34200C409E6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = EAD9FAC619D0EAB50031E006 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 809754C01BADF34100C409E6;\n\t\t\tremoteInfo = \"Argo-tvOS\";\n\t\t};\n\t\tEA395DC01A51FF5200EB607E /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = EAD9FAC619D0EAB50031E006 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = EAD9FACE19D0EAB50031E006;\n\t\t\tremoteInfo = \"Argo-iOS\";\n\t\t};\n\t\tF89335601A4CE83000B88685 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = EAD9FAC619D0EAB50031E006 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = F89335531A4CE83000B88685;\n\t\t\tremoteInfo = \"Argo-Mac\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\tF87D9D8C1A92676900C8AF1D /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF87D9D8E1A92677500C8AF1D /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8C05D481A649A14004A8D0F /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8C05D4B1A649A21004A8D0F /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\t4D5F6DD81B3832C200D79B25 /* user_with_nested_name.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = user_with_nested_name.json; sourceTree = \"<group>\"; };\n\t\t809586041BB84CE7004F9319 /* Curry.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Curry.framework; path = \"Carthage/Checkouts/Curry/build/Debug-appletvos/Curry.framework\"; sourceTree = \"<group>\"; };\n\t\t809754C11BADF34100C409E6 /* Argo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Argo.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t809754CA1BADF34200C409E6 /* Argo-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Argo-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tBF92789C1B9365900038A7E1 /* RawRepresentable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = RawRepresentable.swift; path = Argo/Extensions/RawRepresentable.swift; sourceTree = SOURCE_ROOT; };\n\t\tD0592EB61B77DD7800EFEF39 /* Argo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Argo.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEA04D5901BBF1F40001DE23B /* Monad.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Monad.swift; sourceTree = \"<group>\"; };\n\t\tEA04D5941BBF1F80001DE23B /* Functor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Functor.swift; sourceTree = \"<group>\"; };\n\t\tEA04D5981BBF1FA4001DE23B /* Applicative.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Applicative.swift; sourceTree = \"<group>\"; };\n\t\tEA04D59C1BBF1FB9001DE23B /* Alternative.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Alternative.swift; sourceTree = \"<group>\"; };\n\t\tEA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FailureCoalescing.swift; sourceTree = \"<group>\"; };\n\t\tEA04D5A41BBF2047001DE23B /* Argo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Argo.swift; sourceTree = \"<group>\"; };\n\t\tEA08313019D5EEAF003B90D7 /* TypeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TypeTests.swift; sourceTree = \"<group>\"; };\n\t\tEA08313219D5EEF2003B90D7 /* post_comments.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = post_comments.json; sourceTree = \"<group>\"; };\n\t\tEA08313419D5EFC0003B90D7 /* types.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = types.json; sourceTree = \"<group>\"; };\n\t\tEA1200CA1BAB5CBA006DDBD8 /* RawRepresentableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RawRepresentableTests.swift; sourceTree = \"<group>\"; };\n\t\tEA395DC31A52F8EB00EB607E /* array_root.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = array_root.json; sourceTree = \"<group>\"; };\n\t\tEA395DC61A52F93B00EB607E /* ExampleTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleTests.swift; sourceTree = \"<group>\"; };\n\t\tEA395DC91A52FC1400EB607E /* root_object.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = root_object.json; sourceTree = \"<group>\"; };\n\t\tEA47BB521AFC5B76002D2CCD /* DecodedTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DecodedTests.swift; sourceTree = \"<group>\"; };\n\t\tEA47BB551AFC5DAC002D2CCD /* user_with_bad_type.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = user_with_bad_type.json; sourceTree = \"<group>\"; };\n\t\tEA47BB581AFC5E65002D2CCD /* user_without_key.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = user_without_key.json; sourceTree = \"<group>\"; };\n\t\tEA4EAF7219DD96330036AE0D /* types_fail_embedded.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = types_fail_embedded.json; sourceTree = \"<group>\"; };\n\t\tEA6DD69B1AB383FB00CA3A5B /* PerformanceTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PerformanceTests.swift; sourceTree = \"<group>\"; };\n\t\tEA6DD69E1AB384C700CA3A5B /* big_data.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = big_data.json; sourceTree = \"<group>\"; };\n\t\tEABDF6891A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SwiftDictionaryDecodingTests.swift; sourceTree = \"<group>\"; };\n\t\tEABDF68D1A9CD4EA00B6CC83 /* PListFileReader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PListFileReader.swift; sourceTree = \"<group>\"; };\n\t\tEABDF68E1A9CD4EA00B6CC83 /* types.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = types.plist; sourceTree = \"<group>\"; };\n\t\tEABDF6931A9CD4FC00B6CC83 /* PListDecodingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PListDecodingTests.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FACF19D0EAB50031E006 /* Argo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Argo.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEAD9FAD319D0EAB50031E006 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tEAD9FADA19D0EAB60031E006 /* ArgoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ArgoTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEAD9FADD19D0EAB60031E006 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tEAD9FAF519D0F7900031E006 /* Decode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Decode.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FAFD19D2113C0031E006 /* User.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FAFF19D211630031E006 /* Comment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Comment.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FB0119D211C10031E006 /* Post.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Post.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FB0419D2143A0031E006 /* user_with_email.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = user_with_email.json; sourceTree = \"<group>\"; };\n\t\tEAD9FB0819D214AA0031E006 /* user_without_email.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = user_without_email.json; sourceTree = \"<group>\"; };\n\t\tEAD9FB0919D214AA0031E006 /* TemplateIcon2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TemplateIcon2x.png; sourceTree = \"<group>\"; };\n\t\tEAD9FB0D19D215570031E006 /* OptionalPropertyDecodingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OptionalPropertyDecodingTests.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FB0F19D21AF50031E006 /* JSONFileReader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = JSONFileReader.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FB1119D30E660031E006 /* EmbeddedJSONDecodingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EmbeddedJSONDecodingTests.swift; sourceTree = \"<group>\"; };\n\t\tEAD9FB1319D30ED00031E006 /* comment.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = comment.json; sourceTree = \"<group>\"; };\n\t\tEAD9FB1519D30F8D0031E006 /* post_no_comments.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = post_no_comments.json; sourceTree = \"<group>\"; };\n\t\tEAD9FB1719D49A3E0031E006 /* TestModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = TestModel.swift; path = ../../../Argo/ArgoTests/Models/TestModel.swift; sourceTree = \"<group>\"; };\n\t\tEADADCB11A5DB6F600B180EC /* EquatableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EquatableTests.swift; sourceTree = \"<group>\"; };\n\t\tF802D4C21A5EE061005E236C /* NSURL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSURL.swift; sourceTree = \"<group>\"; };\n\t\tF802D4C51A5EE2D5005E236C /* url.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = url.json; sourceTree = \"<group>\"; };\n\t\tF82D15F21C3C82730079FFB5 /* NSNumber.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSNumber.swift; sourceTree = \"<group>\"; };\n\t\tF84290281B57EFAE008F57B4 /* Curry.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Curry.framework; path = \"Carthage/Checkouts/Curry/build/Debug-iphoneos/Curry.framework\"; sourceTree = \"<group>\"; };\n\t\tF842902A1B57EFB5008F57B4 /* Curry.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Curry.framework; path = Carthage/Checkouts/Curry/build/Debug/Curry.framework; sourceTree = \"<group>\"; };\n\t\tF84318A71B9A2D7A00165216 /* DecodeError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DecodeError.swift; sourceTree = \"<group>\"; };\n\t\tF874B7E91A66BF52004CCE5E /* root_array.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = root_array.json; sourceTree = \"<group>\"; };\n\t\tF876F1D61B56FBB300B38589 /* Runes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Runes.swift; path = Carthage/Checkouts/Runes/Source/Runes.swift; sourceTree = SOURCE_ROOT; };\n\t\tF87EB6991ABC5F1300E3B0AB /* curry.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = curry.swift; sourceTree = \"<group>\"; };\n\t\tF87EB69A1ABC5F1300E3B0AB /* decode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = decode.swift; sourceTree = \"<group>\"; };\n\t\tF87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = flatReduce.swift; sourceTree = \"<group>\"; };\n\t\tF87EB69C1ABC5F1300E3B0AB /* sequence.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = sequence.swift; sourceTree = \"<group>\"; };\n\t\tF87EB69E1ABC5F1300E3B0AB /* Decoded.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Decoded.swift; path = Argo/Types/Decoded/Decoded.swift; sourceTree = SOURCE_ROOT; };\n\t\tF87EB69F1ABC5F1300E3B0AB /* JSON.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = JSON.swift; sourceTree = \"<group>\"; };\n\t\tF87EB6A01ABC5F1300E3B0AB /* Decodable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Decodable.swift; sourceTree = \"<group>\"; };\n\t\tF87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StandardTypes.swift; sourceTree = \"<group>\"; };\n\t\tF89335541A4CE83000B88685 /* Argo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Argo.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF893355E1A4CE83000B88685 /* Argo-MacTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Argo-MacTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF893356D1A4CE8FC00B88685 /* Argo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Argo.h; sourceTree = \"<group>\"; };\n\t\tF8C5927D1CB726C7007C5ABC /* booleans.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = booleans.json; sourceTree = \"<group>\"; };\n\t\tF8C592811CB726FB007C5ABC /* Booleans.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Booleans.swift; sourceTree = \"<group>\"; };\n\t\tF8CBE6661A64521000316FBC /* Dictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Dictionary.swift; sourceTree = \"<group>\"; };\n\t\tF8E33FA41A51E0C20025A6E5 /* post_bad_comments.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = post_bad_comments.json; sourceTree = \"<group>\"; };\n\t\tF8EF432E1BBC728A001886BA /* catDecoded.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = catDecoded.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t809754BD1BADF34100C409E6 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t809754C71BADF34200C409E6 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t809586051BB84CEE004F9319 /* Curry.framework in Frameworks */,\n\t\t\t\t809754CB1BADF34200C409E6 /* Argo.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD0592EB21B77DD7800EFEF39 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FACB19D0EAB50031E006 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FAD719D0EAB60031E006 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF84290291B57EFAE008F57B4 /* Curry.framework in Frameworks */,\n\t\t\t\tF87897EF1A927864009316A5 /* Argo.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF89335501A4CE83000B88685 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF893355B1A4CE83000B88685 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF842902B1B57EFB5008F57B4 /* Curry.framework in Frameworks */,\n\t\t\t\tF893355F1A4CE83000B88685 /* Argo.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tEA04D5A81BBF43C7001DE23B /* Decoded */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF87EB69E1ABC5F1300E3B0AB /* Decoded.swift */,\n\t\t\t\tEA04D5901BBF1F40001DE23B /* Monad.swift */,\n\t\t\t\tEA04D5941BBF1F80001DE23B /* Functor.swift */,\n\t\t\t\tEA04D5981BBF1FA4001DE23B /* Applicative.swift */,\n\t\t\t\tEA04D59C1BBF1FB9001DE23B /* Alternative.swift */,\n\t\t\t\tEA04D5A01BBF2021001DE23B /* FailureCoalescing.swift */,\n\t\t\t);\n\t\t\tpath = Decoded;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEABDF68C1A9CD4EA00B6CC83 /* plists */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEABDF68D1A9CD4EA00B6CC83 /* PListFileReader.swift */,\n\t\t\t\tEABDF68E1A9CD4EA00B6CC83 /* types.plist */,\n\t\t\t);\n\t\t\tpath = plists;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FAC519D0EAB50031E006 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEAD9FAD119D0EAB50031E006 /* Argo */,\n\t\t\t\tEAD9FADB19D0EAB60031E006 /* ArgoTests */,\n\t\t\t\tEAD9FAD019D0EAB50031E006 /* Products */,\n\t\t\t\tF87AD8BB1AF7DFD200D6E3FF /* Frameworks */,\n\t\t\t);\n\t\t\tindentWidth = 2;\n\t\t\tsourceTree = \"<group>\";\n\t\t\ttabWidth = 2;\n\t\t\tusesTabs = 0;\n\t\t};\n\t\tEAD9FAD019D0EAB50031E006 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEAD9FACF19D0EAB50031E006 /* Argo.framework */,\n\t\t\t\tEAD9FADA19D0EAB60031E006 /* ArgoTests.xctest */,\n\t\t\t\tF89335541A4CE83000B88685 /* Argo.framework */,\n\t\t\t\tF893355E1A4CE83000B88685 /* Argo-MacTests.xctest */,\n\t\t\t\tD0592EB61B77DD7800EFEF39 /* Argo.framework */,\n\t\t\t\t809754C11BADF34100C409E6 /* Argo.framework */,\n\t\t\t\t809754CA1BADF34200C409E6 /* Argo-tvOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FAD119D0EAB50031E006 /* Argo */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF87EB69D1ABC5F1300E3B0AB /* Types */,\n\t\t\t\tEAD9FAE919D0F6480031E006 /* Operators */,\n\t\t\t\tF87EB6981ABC5F1300E3B0AB /* Functions */,\n\t\t\t\tF8CBE6651A6451F800316FBC /* Extensions */,\n\t\t\t\tEAD9FAE819D0F5B50031E006 /* Resources */,\n\t\t\t);\n\t\t\tname = Argo;\n\t\t\tpath = ../Argo/Argo;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FADB19D0EAB60031E006 /* ArgoTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEAD9FB0C19D215020031E006 /* Tests */,\n\t\t\t\tEAD9FB0319D213F30031E006 /* JSON */,\n\t\t\t\tEABDF68C1A9CD4EA00B6CC83 /* plists */,\n\t\t\t\tEAD9FAFC19D2110D0031E006 /* Models */,\n\t\t\t\tEAD9FADC19D0EAB60031E006 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = ArgoTests;\n\t\t\tpath = ../Argo/ArgoTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FADC19D0EAB60031E006 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEAD9FADD19D0EAB60031E006 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FAE819D0F5B50031E006 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEAD9FAD319D0EAB50031E006 /* Info.plist */,\n\t\t\t\tF893356D1A4CE8FC00B88685 /* Argo.h */,\n\t\t\t);\n\t\t\tpath = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FAE919D0F6480031E006 /* Operators */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF876F1D61B56FBB300B38589 /* Runes.swift */,\n\t\t\t\tEA04D5A41BBF2047001DE23B /* Argo.swift */,\n\t\t\t\tEAD9FAF519D0F7900031E006 /* Decode.swift */,\n\t\t\t);\n\t\t\tpath = Operators;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FAFC19D2110D0031E006 /* Models */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8C592811CB726FB007C5ABC /* Booleans.swift */,\n\t\t\t\tEAD9FAFD19D2113C0031E006 /* User.swift */,\n\t\t\t\tEAD9FAFF19D211630031E006 /* Comment.swift */,\n\t\t\t\tEAD9FB0119D211C10031E006 /* Post.swift */,\n\t\t\t\tEAD9FB1719D49A3E0031E006 /* TestModel.swift */,\n\t\t\t\tF802D4C21A5EE061005E236C /* NSURL.swift */,\n\t\t\t);\n\t\t\tpath = Models;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FB0319D213F30031E006 /* JSON */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8C5927D1CB726C7007C5ABC /* booleans.json */,\n\t\t\t\tEAD9FB0F19D21AF50031E006 /* JSONFileReader.swift */,\n\t\t\t\tEAD9FB0419D2143A0031E006 /* user_with_email.json */,\n\t\t\t\tEAD9FB0819D214AA0031E006 /* user_without_email.json */,\n\t\t\t\t4D5F6DD81B3832C200D79B25 /* user_with_nested_name.json */,\n\t\t\t\tF802D4C51A5EE2D5005E236C /* url.json */,\n\t\t\t\tF874B7E91A66BF52004CCE5E /* root_array.json */,\n\t\t\t\tEAD9FB0919D214AA0031E006 /* TemplateIcon2x.png */,\n\t\t\t\tEAD9FB1319D30ED00031E006 /* comment.json */,\n\t\t\t\tEAD9FB1519D30F8D0031E006 /* post_no_comments.json */,\n\t\t\t\tEA08313219D5EEF2003B90D7 /* post_comments.json */,\n\t\t\t\tF8E33FA41A51E0C20025A6E5 /* post_bad_comments.json */,\n\t\t\t\tEA08313419D5EFC0003B90D7 /* types.json */,\n\t\t\t\tEA4EAF7219DD96330036AE0D /* types_fail_embedded.json */,\n\t\t\t\tEA395DC31A52F8EB00EB607E /* array_root.json */,\n\t\t\t\tEA395DC91A52FC1400EB607E /* root_object.json */,\n\t\t\t\tEA6DD69E1AB384C700CA3A5B /* big_data.json */,\n\t\t\t\tEA47BB551AFC5DAC002D2CCD /* user_with_bad_type.json */,\n\t\t\t\tEA47BB581AFC5E65002D2CCD /* user_without_key.json */,\n\t\t\t);\n\t\t\tpath = JSON;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEAD9FB0C19D215020031E006 /* Tests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEABDF6931A9CD4FC00B6CC83 /* PListDecodingTests.swift */,\n\t\t\t\tEABDF6891A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift */,\n\t\t\t\tEAD9FB0D19D215570031E006 /* OptionalPropertyDecodingTests.swift */,\n\t\t\t\tEAD9FB1119D30E660031E006 /* EmbeddedJSONDecodingTests.swift */,\n\t\t\t\tEA08313019D5EEAF003B90D7 /* TypeTests.swift */,\n\t\t\t\tEA395DC61A52F93B00EB607E /* ExampleTests.swift */,\n\t\t\t\tEADADCB11A5DB6F600B180EC /* EquatableTests.swift */,\n\t\t\t\tEA6DD69B1AB383FB00CA3A5B /* PerformanceTests.swift */,\n\t\t\t\tEA47BB521AFC5B76002D2CCD /* DecodedTests.swift */,\n\t\t\t\tEA1200CA1BAB5CBA006DDBD8 /* RawRepresentableTests.swift */,\n\t\t\t);\n\t\t\tpath = Tests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF87AD8BB1AF7DFD200D6E3FF /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF842902A1B57EFB5008F57B4 /* Curry.framework */,\n\t\t\t\tF84290281B57EFAE008F57B4 /* Curry.framework */,\n\t\t\t\t809586041BB84CE7004F9319 /* Curry.framework */,\n\t\t\t\tF87AD8BD1AF7E04B00D6E3FF /* Mac */,\n\t\t\t\tF87AD8BC1AF7E04500D6E3FF /* iOS */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF87AD8BC1AF7E04500D6E3FF /* iOS */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t);\n\t\t\tname = iOS;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF87AD8BD1AF7E04B00D6E3FF /* Mac */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t);\n\t\t\tname = Mac;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF87EB6981ABC5F1300E3B0AB /* Functions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8EF432E1BBC728A001886BA /* catDecoded.swift */,\n\t\t\t\tF87EB6991ABC5F1300E3B0AB /* curry.swift */,\n\t\t\t\tF87EB69A1ABC5F1300E3B0AB /* decode.swift */,\n\t\t\t\tF87EB69B1ABC5F1300E3B0AB /* flatReduce.swift */,\n\t\t\t\tF87EB69C1ABC5F1300E3B0AB /* sequence.swift */,\n\t\t\t);\n\t\t\tpath = Functions;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF87EB69D1ABC5F1300E3B0AB /* Types */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEA04D5A81BBF43C7001DE23B /* Decoded */,\n\t\t\t\tF87EB69F1ABC5F1300E3B0AB /* JSON.swift */,\n\t\t\t\tF87EB6A01ABC5F1300E3B0AB /* Decodable.swift */,\n\t\t\t\tF87EB6A11ABC5F1300E3B0AB /* StandardTypes.swift */,\n\t\t\t\tF84318A71B9A2D7A00165216 /* DecodeError.swift */,\n\t\t\t);\n\t\t\tpath = Types;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF8CBE6651A6451F800316FBC /* Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF82D15F21C3C82730079FFB5 /* NSNumber.swift */,\n\t\t\t\tF8CBE6661A64521000316FBC /* Dictionary.swift */,\n\t\t\t\tBF92789C1B9365900038A7E1 /* RawRepresentable.swift */,\n\t\t\t);\n\t\t\tpath = Extensions;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t809754BE1BADF34100C409E6 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t809754E71BADF37200C409E6 /* Argo.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD0592EB31B77DD7800EFEF39 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FACC19D0EAB50031E006 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF893356E1A4CE8FC00B88685 /* Argo.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF89335511A4CE83000B88685 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF893356F1A4CE8FC00B88685 /* Argo.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t809754C01BADF34100C409E6 /* Argo-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 809754D61BADF34200C409E6 /* Build configuration list for PBXNativeTarget \"Argo-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t809754BC1BADF34100C409E6 /* Sources */,\n\t\t\t\t809754BD1BADF34100C409E6 /* Frameworks */,\n\t\t\t\t809754BE1BADF34100C409E6 /* Headers */,\n\t\t\t\t809754BF1BADF34100C409E6 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Argo-tvOS\";\n\t\t\tproductName = \"Argo-tvOS\";\n\t\t\tproductReference = 809754C11BADF34100C409E6 /* Argo.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t809754C91BADF34200C409E6 /* Argo-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 809754D71BADF34200C409E6 /* Build configuration list for PBXNativeTarget \"Argo-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t809754C61BADF34200C409E6 /* Sources */,\n\t\t\t\t809754C71BADF34200C409E6 /* Frameworks */,\n\t\t\t\t809754C81BADF34200C409E6 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t809754CD1BADF34200C409E6 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Argo-tvOSTests\";\n\t\t\tproductName = \"Argo-tvOSTests\";\n\t\t\tproductReference = 809754CA1BADF34200C409E6 /* Argo-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD0592EB51B77DD7800EFEF39 /* Argo-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D0592EBD1B77DD7800EFEF39 /* Build configuration list for PBXNativeTarget \"Argo-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD0592EB11B77DD7800EFEF39 /* Sources */,\n\t\t\t\tD0592EB21B77DD7800EFEF39 /* Frameworks */,\n\t\t\t\tD0592EB31B77DD7800EFEF39 /* Headers */,\n\t\t\t\tD0592EB41B77DD7800EFEF39 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Argo-watchOS\";\n\t\t\tproductName = \"Argo-watchOS\";\n\t\t\tproductReference = D0592EB61B77DD7800EFEF39 /* Argo.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tEAD9FACE19D0EAB50031E006 /* Argo-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EAD9FAE219D0EAB60031E006 /* Build configuration list for PBXNativeTarget \"Argo-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEAD9FACA19D0EAB50031E006 /* Sources */,\n\t\t\t\tEAD9FACB19D0EAB50031E006 /* Frameworks */,\n\t\t\t\tEAD9FACC19D0EAB50031E006 /* Headers */,\n\t\t\t\tEAD9FACD19D0EAB50031E006 /* Resources */,\n\t\t\t\t2BF79DC6DAAA04A8DB0169BA /* Warn for TODO and FIXME comments */,\n\t\t\t\tF8C05D481A649A14004A8D0F /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Argo-iOS\";\n\t\t\tproductName = argo;\n\t\t\tproductReference = EAD9FACF19D0EAB50031E006 /* Argo.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tEAD9FAD919D0EAB60031E006 /* ArgoTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EAD9FAE519D0EAB60031E006 /* Build configuration list for PBXNativeTarget \"ArgoTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEAD9FAD619D0EAB60031E006 /* Sources */,\n\t\t\t\tEAD9FAD719D0EAB60031E006 /* Frameworks */,\n\t\t\t\tEAD9FAD819D0EAB60031E006 /* Resources */,\n\t\t\t\tF87D9D8C1A92676900C8AF1D /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tEA395DC11A51FF5200EB607E /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = ArgoTests;\n\t\t\tproductName = argoTests;\n\t\t\tproductReference = EAD9FADA19D0EAB60031E006 /* ArgoTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tF89335531A4CE83000B88685 /* Argo-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F89335671A4CE83000B88685 /* Build configuration list for PBXNativeTarget \"Argo-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF893354F1A4CE83000B88685 /* Sources */,\n\t\t\t\tF89335501A4CE83000B88685 /* Frameworks */,\n\t\t\t\tF89335511A4CE83000B88685 /* Headers */,\n\t\t\t\tF89335521A4CE83000B88685 /* Resources */,\n\t\t\t\tF8C05D4B1A649A21004A8D0F /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Argo-Mac\";\n\t\t\tproductName = \"Argo-Mac\";\n\t\t\tproductReference = F89335541A4CE83000B88685 /* Argo.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF893355D1A4CE83000B88685 /* Argo-MacTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F893356A1A4CE83000B88685 /* Build configuration list for PBXNativeTarget \"Argo-MacTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF893355A1A4CE83000B88685 /* Sources */,\n\t\t\t\tF893355B1A4CE83000B88685 /* Frameworks */,\n\t\t\t\tF893355C1A4CE83000B88685 /* Resources */,\n\t\t\t\tF87D9D8E1A92677500C8AF1D /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tF89335611A4CE83000B88685 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Argo-MacTests\";\n\t\t\tproductName = \"Argo-MacTests\";\n\t\t\tproductReference = F893355E1A4CE83000B88685 /* Argo-MacTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tEAD9FAC619D0EAB50031E006 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = thoughtbot;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t809754C01BADF34100C409E6 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t809754C91BADF34200C409E6 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD0592EB51B77DD7800EFEF39 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tEAD9FACE19D0EAB50031E006 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tEAD9FAD919D0EAB60031E006 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tF89335531A4CE83000B88685 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tF893355D1A4CE83000B88685 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = EAD9FAC919D0EAB50031E006 /* Build configuration list for PBXProject \"Argo\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = EAD9FAC519D0EAB50031E006;\n\t\t\tproductRefGroup = EAD9FAD019D0EAB50031E006 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tEAD9FACE19D0EAB50031E006 /* Argo-iOS */,\n\t\t\t\tEAD9FAD919D0EAB60031E006 /* ArgoTests */,\n\t\t\t\tF89335531A4CE83000B88685 /* Argo-Mac */,\n\t\t\t\tF893355D1A4CE83000B88685 /* Argo-MacTests */,\n\t\t\t\tD0592EB51B77DD7800EFEF39 /* Argo-watchOS */,\n\t\t\t\t809754C01BADF34100C409E6 /* Argo-tvOS */,\n\t\t\t\t809754C91BADF34200C409E6 /* Argo-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t809754BF1BADF34100C409E6 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t809754C81BADF34200C409E6 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t809755081BADF3ED00C409E6 /* user_with_bad_type.json in Resources */,\n\t\t\t\t809754FA1BADF3ED00C409E6 /* user_without_email.json in Resources */,\n\t\t\t\t809755031BADF3ED00C409E6 /* types.json in Resources */,\n\t\t\t\tF8C592801CB726CB007C5ABC /* booleans.json in Resources */,\n\t\t\t\t809754FD1BADF3ED00C409E6 /* root_array.json in Resources */,\n\t\t\t\t809754FE1BADF3ED00C409E6 /* TemplateIcon2x.png in Resources */,\n\t\t\t\t809754FB1BADF3ED00C409E6 /* user_with_nested_name.json in Resources */,\n\t\t\t\t809755071BADF3ED00C409E6 /* big_data.json in Resources */,\n\t\t\t\t809755011BADF3ED00C409E6 /* post_comments.json in Resources */,\n\t\t\t\t809755061BADF3ED00C409E6 /* root_object.json in Resources */,\n\t\t\t\t809755021BADF3ED00C409E6 /* post_bad_comments.json in Resources */,\n\t\t\t\t809755001BADF3ED00C409E6 /* post_no_comments.json in Resources */,\n\t\t\t\t809754F91BADF3ED00C409E6 /* user_with_email.json in Resources */,\n\t\t\t\t8097550A1BADF3F200C409E6 /* types.plist in Resources */,\n\t\t\t\t809755041BADF3ED00C409E6 /* types_fail_embedded.json in Resources */,\n\t\t\t\t809755051BADF3ED00C409E6 /* array_root.json in Resources */,\n\t\t\t\t809754FC1BADF3ED00C409E6 /* url.json in Resources */,\n\t\t\t\t809755091BADF3ED00C409E6 /* user_without_key.json in Resources */,\n\t\t\t\t809754FF1BADF3ED00C409E6 /* comment.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD0592EB41B77DD7800EFEF39 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FACD19D0EAB50031E006 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FAD819D0EAB60031E006 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEA47BB561AFC5DAC002D2CCD /* user_with_bad_type.json in Resources */,\n\t\t\t\tEA08313519D5EFC0003B90D7 /* types.json in Resources */,\n\t\t\t\tEA4EAF7319DD96330036AE0D /* types_fail_embedded.json in Resources */,\n\t\t\t\tF8C5927E1CB726C7007C5ABC /* booleans.json in Resources */,\n\t\t\t\tEA395DCA1A52FC1400EB607E /* root_object.json in Resources */,\n\t\t\t\tF874B7EA1A66BF52004CCE5E /* root_array.json in Resources */,\n\t\t\t\tEAD9FB1619D30F8D0031E006 /* post_no_comments.json in Resources */,\n\t\t\t\tEA6DD69F1AB384C700CA3A5B /* big_data.json in Resources */,\n\t\t\t\tEA08313319D5EEF2003B90D7 /* post_comments.json in Resources */,\n\t\t\t\t4D5F6DD91B3832C200D79B25 /* user_with_nested_name.json in Resources */,\n\t\t\t\tEABDF6911A9CD4EA00B6CC83 /* types.plist in Resources */,\n\t\t\t\tEAD9FB0A19D214AA0031E006 /* user_without_email.json in Resources */,\n\t\t\t\tEAD9FB0619D2143A0031E006 /* user_with_email.json in Resources */,\n\t\t\t\tEAD9FB0B19D214AA0031E006 /* TemplateIcon2x.png in Resources */,\n\t\t\t\tEA47BB591AFC5E65002D2CCD /* user_without_key.json in Resources */,\n\t\t\t\tEA395DC41A52F8EB00EB607E /* array_root.json in Resources */,\n\t\t\t\tF8E33FA51A51E0C20025A6E5 /* post_bad_comments.json in Resources */,\n\t\t\t\tEAD9FB1419D30ED00031E006 /* comment.json in Resources */,\n\t\t\t\tF802D4C61A5EE2D5005E236C /* url.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF89335521A4CE83000B88685 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF893355C1A4CE83000B88685 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEA47BB571AFC5DAC002D2CCD /* user_with_bad_type.json in Resources */,\n\t\t\t\tF862E0AD1A519D560093B028 /* types.json in Resources */,\n\t\t\t\tF862E0AE1A519D5C0093B028 /* types_fail_embedded.json in Resources */,\n\t\t\t\tF8C5927F1CB726CA007C5ABC /* booleans.json in Resources */,\n\t\t\t\tEA395DCB1A52FC1400EB607E /* root_object.json in Resources */,\n\t\t\t\tF874B7EB1A66C221004CCE5E /* root_array.json in Resources */,\n\t\t\t\tF8EF75711A4CEC7100BDCC2D /* post_no_comments.json in Resources */,\n\t\t\t\tEA6DD6A01AB384C700CA3A5B /* big_data.json in Resources */,\n\t\t\t\tF862E0AC1A519D520093B028 /* post_comments.json in Resources */,\n\t\t\t\t4D5F6DDA1B3832C200D79B25 /* user_with_nested_name.json in Resources */,\n\t\t\t\tEABDF6921A9CD4EA00B6CC83 /* types.plist in Resources */,\n\t\t\t\tF8EF756E1A4CEC7100BDCC2D /* user_without_email.json in Resources */,\n\t\t\t\tF8EF756D1A4CEC7100BDCC2D /* user_with_email.json in Resources */,\n\t\t\t\tF8EF756F1A4CEC7100BDCC2D /* TemplateIcon2x.png in Resources */,\n\t\t\t\tEA47BB5A1AFC5E65002D2CCD /* user_without_key.json in Resources */,\n\t\t\t\tEA395DC51A52F8EE00EB607E /* array_root.json in Resources */,\n\t\t\t\tEA395DC21A5209C000EB607E /* post_bad_comments.json in Resources */,\n\t\t\t\tF8EF75701A4CEC7100BDCC2D /* comment.json in Resources */,\n\t\t\t\tF802D4C71A5EE2D5005E236C /* url.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t2BF79DC6DAAA04A8DB0169BA /* Warn for TODO and FIXME comments */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Warn for TODO and FIXME comments\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"KEYWORDS=\\\"TODO:|FIXME:|\\\\?\\\\?\\\\?:|\\\\!\\\\!\\\\!:\\\"\\nFILE_EXTENSIONS=\\\"h|m|mm|c|cpp\\\"\\nfind -E \\\"${SRCROOT}\\\" -ipath \\\"${SRCROOT}/pods\\\" -prune -o \\\\( -regex \\\".*\\\\.($FILE_EXTENSIONS)$\\\" \\\\) -print0 | xargs -0 egrep --with-filename --line-number --only-matching \\\"($KEYWORDS).*\\\\$\\\" | perl -p -e \\\"s/($KEYWORDS)/ warning: \\\\$1/\\\"\\n\";\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t809754BC1BADF34100C409E6 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEA9159F81BDE74E400D85292 /* Monad.swift in Sources */,\n\t\t\t\t809754DF1BADF36D00C409E6 /* (null) in Sources */,\n\t\t\t\tEA9159F71BDE74C700D85292 /* catDecoded.swift in Sources */,\n\t\t\t\tEA9159FC1BDE74FC00D85292 /* FailureCoalescing.swift in Sources */,\n\t\t\t\t809754E31BADF36D00C409E6 /* flatReduce.swift in Sources */,\n\t\t\t\t809754DB1BADF36D00C409E6 /* StandardTypes.swift in Sources */,\n\t\t\t\tEA9159F91BDE74EB00D85292 /* Functor.swift in Sources */,\n\t\t\t\t809754DA1BADF36D00C409E6 /* Decodable.swift in Sources */,\n\t\t\t\t809754DE1BADF36D00C409E6 /* Decode.swift in Sources */,\n\t\t\t\t809754D81BADF36D00C409E6 /* Decoded.swift in Sources */,\n\t\t\t\t809754E41BADF36D00C409E6 /* sequence.swift in Sources */,\n\t\t\t\t809754DD1BADF36D00C409E6 /* Runes.swift in Sources */,\n\t\t\t\t809754E21BADF36D00C409E6 /* decode.swift in Sources */,\n\t\t\t\t809754DC1BADF36D00C409E6 /* DecodeError.swift in Sources */,\n\t\t\t\tEA9159FA1BDE74F300D85292 /* Applicative.swift in Sources */,\n\t\t\t\t809754E51BADF36D00C409E6 /* Dictionary.swift in Sources */,\n\t\t\t\t809754E61BADF36D00C409E6 /* RawRepresentable.swift in Sources */,\n\t\t\t\t809754D91BADF36D00C409E6 /* JSON.swift in Sources */,\n\t\t\t\tF8C2561C1C3C855C00B70968 /* NSNumber.swift in Sources */,\n\t\t\t\tEA9159F61BDE74BC00D85292 /* Argo.swift in Sources */,\n\t\t\t\tEA9159FB1BDE74F800D85292 /* Alternative.swift in Sources */,\n\t\t\t\t809754E11BADF36D00C409E6 /* curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t809754C61BADF34200C409E6 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t809754F01BADF3E400C409E6 /* DecodedTests.swift in Sources */,\n\t\t\t\t809754F11BADF3E400C409E6 /* RawRepresentableTests.swift in Sources */,\n\t\t\t\t809754F31BADF3E400C409E6 /* PListFileReader.swift in Sources */,\n\t\t\t\t809754EB1BADF3E400C409E6 /* EmbeddedJSONDecodingTests.swift in Sources */,\n\t\t\t\tF8C592841CB726FF007C5ABC /* Booleans.swift in Sources */,\n\t\t\t\t809754EA1BADF3E400C409E6 /* OptionalPropertyDecodingTests.swift in Sources */,\n\t\t\t\t809754F81BADF3E400C409E6 /* NSURL.swift in Sources */,\n\t\t\t\t809754F41BADF3E400C409E6 /* User.swift in Sources */,\n\t\t\t\t809754EC1BADF3E400C409E6 /* TypeTests.swift in Sources */,\n\t\t\t\t809754E81BADF3E400C409E6 /* PListDecodingTests.swift in Sources */,\n\t\t\t\t809754E91BADF3E400C409E6 /* SwiftDictionaryDecodingTests.swift in Sources */,\n\t\t\t\t809754F51BADF3E400C409E6 /* Comment.swift in Sources */,\n\t\t\t\t809754F61BADF3E400C409E6 /* Post.swift in Sources */,\n\t\t\t\t809754F21BADF3E400C409E6 /* JSONFileReader.swift in Sources */,\n\t\t\t\t809754EE1BADF3E400C409E6 /* EquatableTests.swift in Sources */,\n\t\t\t\t809754ED1BADF3E400C409E6 /* ExampleTests.swift in Sources */,\n\t\t\t\t809754F71BADF3E400C409E6 /* TestModel.swift in Sources */,\n\t\t\t\t809754EF1BADF3E400C409E6 /* PerformanceTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD0592EB11B77DD7800EFEF39 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD0592EC41B77DD9A00EFEF39 /* curry.swift in Sources */,\n\t\t\t\tEA04D59B1BBF1FA4001DE23B /* Applicative.swift in Sources */,\n\t\t\t\tD0592EC11B77DD8E00EFEF39 /* StandardTypes.swift in Sources */,\n\t\t\t\tEA04D59F1BBF1FB9001DE23B /* Alternative.swift in Sources */,\n\t\t\t\tD0592EC01B77DD8E00EFEF39 /* Decodable.swift in Sources */,\n\t\t\t\tD0592EC51B77DD9A00EFEF39 /* decode.swift in Sources */,\n\t\t\t\tF8C2561B1C3C855C00B70968 /* NSNumber.swift in Sources */,\n\t\t\t\tD0592EC81B77DD9A00EFEF39 /* Dictionary.swift in Sources */,\n\t\t\t\tEA04D5A31BBF2021001DE23B /* FailureCoalescing.swift in Sources */,\n\t\t\t\tD0592EBE1B77DD8E00EFEF39 /* Decoded.swift in Sources */,\n\t\t\t\tF84318AA1B9A2D7A00165216 /* DecodeError.swift in Sources */,\n\t\t\t\tD0592EBF1B77DD8E00EFEF39 /* JSON.swift in Sources */,\n\t\t\t\tD0592EC21B77DD9300EFEF39 /* Runes.swift in Sources */,\n\t\t\t\tF8EF43311BBC729F001886BA /* catDecoded.swift in Sources */,\n\t\t\t\tD0592EC31B77DD9300EFEF39 /* Decode.swift in Sources */,\n\t\t\t\tEA1200CE1BAB621C006DDBD8 /* RawRepresentable.swift in Sources */,\n\t\t\t\tEA04D5931BBF1F40001DE23B /* Monad.swift in Sources */,\n\t\t\t\tEA04D5971BBF1F80001DE23B /* Functor.swift in Sources */,\n\t\t\t\tD0592EC71B77DD9A00EFEF39 /* sequence.swift in Sources */,\n\t\t\t\tEA04D5A71BBF2047001DE23B /* Argo.swift in Sources */,\n\t\t\t\tD0592EC61B77DD9A00EFEF39 /* flatReduce.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FACA19D0EAB50031E006 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF87EB6AA1ABC5F1300E3B0AB /* Decoded.swift in Sources */,\n\t\t\t\tEA04D5991BBF1FA4001DE23B /* Applicative.swift in Sources */,\n\t\t\t\tBF92789D1B9365900038A7E1 /* RawRepresentable.swift in Sources */,\n\t\t\t\tEA04D59D1BBF1FB9001DE23B /* Alternative.swift in Sources */,\n\t\t\t\tF87EB6AE1ABC5F1300E3B0AB /* Decodable.swift in Sources */,\n\t\t\t\tF87EB6A41ABC5F1300E3B0AB /* decode.swift in Sources */,\n\t\t\t\tF82D15F31C3C82730079FFB5 /* NSNumber.swift in Sources */,\n\t\t\t\tF87EB6AC1ABC5F1300E3B0AB /* JSON.swift in Sources */,\n\t\t\t\tEA04D5A11BBF2021001DE23B /* FailureCoalescing.swift in Sources */,\n\t\t\t\tF87EB6A61ABC5F1300E3B0AB /* flatReduce.swift in Sources */,\n\t\t\t\tF87EB6A81ABC5F1300E3B0AB /* sequence.swift in Sources */,\n\t\t\t\tF84318A81B9A2D7A00165216 /* DecodeError.swift in Sources */,\n\t\t\t\tF876F1D71B56FBB300B38589 /* Runes.swift in Sources */,\n\t\t\t\tF8CBE6671A64521000316FBC /* Dictionary.swift in Sources */,\n\t\t\t\tEAD9FAF619D0F7900031E006 /* Decode.swift in Sources */,\n\t\t\t\tF87EB6B01ABC5F1300E3B0AB /* StandardTypes.swift in Sources */,\n\t\t\t\tEA04D5911BBF1F40001DE23B /* Monad.swift in Sources */,\n\t\t\t\tEA04D5951BBF1F80001DE23B /* Functor.swift in Sources */,\n\t\t\t\tF87EB6A21ABC5F1300E3B0AB /* curry.swift in Sources */,\n\t\t\t\tEA04D5A51BBF2047001DE23B /* Argo.swift in Sources */,\n\t\t\t\tF8EF432F1BBC728A001886BA /* catDecoded.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEAD9FAD619D0EAB60031E006 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEAD9FB1219D30E660031E006 /* EmbeddedJSONDecodingTests.swift in Sources */,\n\t\t\t\tF802D4C31A5EE061005E236C /* NSURL.swift in Sources */,\n\t\t\t\tEABDF68F1A9CD4EA00B6CC83 /* PListFileReader.swift in Sources */,\n\t\t\t\tEAD9FB1019D21AF50031E006 /* JSONFileReader.swift in Sources */,\n\t\t\t\tF8C592821CB726FB007C5ABC /* Booleans.swift in Sources */,\n\t\t\t\tEAD9FB0219D211C10031E006 /* Post.swift in Sources */,\n\t\t\t\tEABDF6941A9CD4FC00B6CC83 /* PListDecodingTests.swift in Sources */,\n\t\t\t\tEAD9FB1819D49A3E0031E006 /* TestModel.swift in Sources */,\n\t\t\t\tEAD9FB0E19D215570031E006 /* OptionalPropertyDecodingTests.swift in Sources */,\n\t\t\t\tEA47BB531AFC5B76002D2CCD /* DecodedTests.swift in Sources */,\n\t\t\t\tEAD9FAFE19D2113C0031E006 /* User.swift in Sources */,\n\t\t\t\tEAD9FB0019D211630031E006 /* Comment.swift in Sources */,\n\t\t\t\tEA6DD69C1AB383FB00CA3A5B /* PerformanceTests.swift in Sources */,\n\t\t\t\tEA1200CB1BAB5CBA006DDBD8 /* RawRepresentableTests.swift in Sources */,\n\t\t\t\tEABDF68A1A9CD46100B6CC83 /* SwiftDictionaryDecodingTests.swift in Sources */,\n\t\t\t\tEA08313119D5EEAF003B90D7 /* TypeTests.swift in Sources */,\n\t\t\t\tEA395DC71A52F93B00EB607E /* ExampleTests.swift in Sources */,\n\t\t\t\tEADADCB21A5DB6F600B180EC /* EquatableTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF893354F1A4CE83000B88685 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF87EB6AB1ABC5F1300E3B0AB /* Decoded.swift in Sources */,\n\t\t\t\tEA04D59A1BBF1FA4001DE23B /* Applicative.swift in Sources */,\n\t\t\t\tF87EB6AF1ABC5F1300E3B0AB /* Decodable.swift in Sources */,\n\t\t\t\tEA04D59E1BBF1FB9001DE23B /* Alternative.swift in Sources */,\n\t\t\t\tF87EB6A51ABC5F1300E3B0AB /* decode.swift in Sources */,\n\t\t\t\tF87EB6AD1ABC5F1300E3B0AB /* JSON.swift in Sources */,\n\t\t\t\tF8C2561A1C3C855B00B70968 /* NSNumber.swift in Sources */,\n\t\t\t\tF87EB6A71ABC5F1300E3B0AB /* flatReduce.swift in Sources */,\n\t\t\t\tEA04D5A21BBF2021001DE23B /* FailureCoalescing.swift in Sources */,\n\t\t\t\tF87EB6A91ABC5F1300E3B0AB /* sequence.swift in Sources */,\n\t\t\t\tF84318A91B9A2D7A00165216 /* DecodeError.swift in Sources */,\n\t\t\t\tF876F1D81B56FBB300B38589 /* Runes.swift in Sources */,\n\t\t\t\tF8CBE6681A64526300316FBC /* Dictionary.swift in Sources */,\n\t\t\t\tF8EF43301BBC729F001886BA /* catDecoded.swift in Sources */,\n\t\t\t\tF89335761A4CE93600B88685 /* Decode.swift in Sources */,\n\t\t\t\tEA1200CD1BAB621C006DDBD8 /* RawRepresentable.swift in Sources */,\n\t\t\t\tEA04D5921BBF1F40001DE23B /* Monad.swift in Sources */,\n\t\t\t\tEA04D5961BBF1F80001DE23B /* Functor.swift in Sources */,\n\t\t\t\tF87EB6B11ABC5F1300E3B0AB /* StandardTypes.swift in Sources */,\n\t\t\t\tEA04D5A61BBF2047001DE23B /* Argo.swift in Sources */,\n\t\t\t\tF87EB6A31ABC5F1300E3B0AB /* curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF893355A1A4CE83000B88685 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF8EF75731A4CEC7800BDCC2D /* Comment.swift in Sources */,\n\t\t\t\tF802D4C41A5EE172005E236C /* NSURL.swift in Sources */,\n\t\t\t\tEABDF6901A9CD4EA00B6CC83 /* PListFileReader.swift in Sources */,\n\t\t\t\tF8EF75721A4CEC7800BDCC2D /* User.swift in Sources */,\n\t\t\t\tF8C592831CB726FE007C5ABC /* Booleans.swift in Sources */,\n\t\t\t\tF8EF756B1A4CEC6400BDCC2D /* EmbeddedJSONDecodingTests.swift in Sources */,\n\t\t\t\tEABDF6951A9CD4FC00B6CC83 /* PListDecodingTests.swift in Sources */,\n\t\t\t\tF8EF75751A4CEC7800BDCC2D /* TestModel.swift in Sources */,\n\t\t\t\tF8EF75741A4CEC7800BDCC2D /* Post.swift in Sources */,\n\t\t\t\tEA47BB541AFC5B76002D2CCD /* DecodedTests.swift in Sources */,\n\t\t\t\tF8EF756A1A4CEC6100BDCC2D /* OptionalPropertyDecodingTests.swift in Sources */,\n\t\t\t\tF8EF756C1A4CEC7100BDCC2D /* JSONFileReader.swift in Sources */,\n\t\t\t\tEA6DD69D1AB383FB00CA3A5B /* PerformanceTests.swift in Sources */,\n\t\t\t\tEA1200CC1BAB5CBA006DDBD8 /* RawRepresentableTests.swift in Sources */,\n\t\t\t\tEABDF68B1A9CD46400B6CC83 /* SwiftDictionaryDecodingTests.swift in Sources */,\n\t\t\t\tF862E0AB1A519D470093B028 /* TypeTests.swift in Sources */,\n\t\t\t\tEA395DC81A52FA5300EB607E /* ExampleTests.swift in Sources */,\n\t\t\t\tEADADCB41A5DB7F800B180EC /* EquatableTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t809754CD1BADF34200C409E6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 809754C01BADF34100C409E6 /* Argo-tvOS */;\n\t\t\ttargetProxy = 809754CC1BADF34200C409E6 /* PBXContainerItemProxy */;\n\t\t};\n\t\tEA395DC11A51FF5200EB607E /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = EAD9FACE19D0EAB50031E006 /* Argo-iOS */;\n\t\t\ttargetProxy = EA395DC01A51FF5200EB607E /* PBXContainerItemProxy */;\n\t\t};\n\t\tF89335611A4CE83000B88685 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = F89335531A4CE83000B88685 /* Argo-Mac */;\n\t\t\ttargetProxy = F89335601A4CE83000B88685 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t809754D21BADF34200C409E6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.thoughtbot.Argo;\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t809754D31BADF34200C409E6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.thoughtbot.Argo;\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t809754D41BADF34200C409E6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t809754D51BADF34200C409E6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD0592EBB1B77DD7800EFEF39 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = marker;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=watchsimulator*]\" = \"\";\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD0592EBC1B77DD7800EFEF39 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=watchsimulator*]\" = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEAD9FAE019D0EAB60031E006 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_CHECK_SWITCH_STATEMENTS = YES;\n\t\t\t\tGCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;\n\t\t\t\tGCC_WARN_MISSING_PARENTHESES = YES;\n\t\t\t\tGCC_WARN_SHADOW = YES;\n\t\t\t\tGCC_WARN_SIGN_COMPARE = YES;\n\t\t\t\tGCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_LABEL = YES;\n\t\t\t\tGCC_WARN_UNUSED_VALUE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tRUN_CLANG_STATIC_ANALYZER = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEAD9FAE119D0EAB60031E006 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_CHECK_SWITCH_STATEMENTS = YES;\n\t\t\t\tGCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;\n\t\t\t\tGCC_WARN_MISSING_PARENTHESES = YES;\n\t\t\t\tGCC_WARN_SHADOW = YES;\n\t\t\t\tGCC_WARN_SIGN_COMPARE = YES;\n\t\t\t\tGCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_LABEL = YES;\n\t\t\t\tGCC_WARN_UNUSED_VALUE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tRUN_CLANG_STATIC_ANALYZER = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEAD9FAE319D0EAB60031E006 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = marker;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphonesimulator*]\" = \"\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEAD9FAE419D0EAB60031E006 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphonesimulator*]\" = \"\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEAD9FAE619D0EAB60031E006 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = ArgoTests;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEAD9FAE719D0EAB60031E006 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = ArgoTests;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF89335681A4CE83000B88685 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = marker;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF89335691A4CE83000B88685 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Argo/Resources/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME)\";\n\t\t\t\tPRODUCT_NAME = Argo;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF893356B1A4CE83000B88685 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF893356C1A4CE83000B88685 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = ArgoTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t809754D61BADF34200C409E6 /* Build configuration list for PBXNativeTarget \"Argo-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t809754D21BADF34200C409E6 /* Debug */,\n\t\t\t\t809754D31BADF34200C409E6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t809754D71BADF34200C409E6 /* Build configuration list for PBXNativeTarget \"Argo-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t809754D41BADF34200C409E6 /* Debug */,\n\t\t\t\t809754D51BADF34200C409E6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD0592EBD1B77DD7800EFEF39 /* Build configuration list for PBXNativeTarget \"Argo-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD0592EBB1B77DD7800EFEF39 /* Debug */,\n\t\t\t\tD0592EBC1B77DD7800EFEF39 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEAD9FAC919D0EAB50031E006 /* Build configuration list for PBXProject \"Argo\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEAD9FAE019D0EAB60031E006 /* Debug */,\n\t\t\t\tEAD9FAE119D0EAB60031E006 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEAD9FAE219D0EAB60031E006 /* Build configuration list for PBXNativeTarget \"Argo-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEAD9FAE319D0EAB60031E006 /* Debug */,\n\t\t\t\tEAD9FAE419D0EAB60031E006 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEAD9FAE519D0EAB60031E006 /* Build configuration list for PBXNativeTarget \"ArgoTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEAD9FAE619D0EAB60031E006 /* Debug */,\n\t\t\t\tEAD9FAE719D0EAB60031E006 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF89335671A4CE83000B88685 /* Build configuration list for PBXNativeTarget \"Argo-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF89335681A4CE83000B88685 /* Debug */,\n\t\t\t\tF89335691A4CE83000B88685 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF893356A1A4CE83000B88685 /* Build configuration list for PBXNativeTarget \"Argo-MacTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF893356B1A4CE83000B88685 /* Debug */,\n\t\t\t\tF893356C1A4CE83000B88685 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = EAD9FAC619D0EAB50031E006 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Argo.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/xcshareddata/xcschemes/Argo-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F89335531A4CE83000B88685\"\n               BuildableName = \"Argo.framework\"\n               BlueprintName = \"Argo-Mac\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Release\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F893355D1A4CE83000B88685\"\n               BuildableName = \"Argo-MacTests.xctest\"\n               BlueprintName = \"Argo-MacTests\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F89335531A4CE83000B88685\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-Mac\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F89335531A4CE83000B88685\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-Mac\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F89335531A4CE83000B88685\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-Mac\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/xcshareddata/xcschemes/Argo-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EAD9FACE19D0EAB50031E006\"\n               BuildableName = \"Argo.framework\"\n               BlueprintName = \"Argo-iOS\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Release\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EAD9FAD919D0EAB60031E006\"\n               BuildableName = \"ArgoTests.xctest\"\n               BlueprintName = \"ArgoTests\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EAD9FACE19D0EAB50031E006\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-iOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EAD9FACE19D0EAB50031E006\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-iOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EAD9FACE19D0EAB50031E006\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-iOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/xcshareddata/xcschemes/Argo-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"809754C01BADF34100C409E6\"\n               BuildableName = \"Argo.framework\"\n               BlueprintName = \"Argo-tvOS\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"809754C91BADF34200C409E6\"\n               BuildableName = \"Argo-tvOSTests.xctest\"\n               BlueprintName = \"Argo-tvOSTests\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"809754C01BADF34100C409E6\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-tvOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"809754C01BADF34100C409E6\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-tvOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"809754C01BADF34100C409E6\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-tvOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcodeproj/xcshareddata/xcschemes/Argo-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D0592EB51B77DD7800EFEF39\"\n               BuildableName = \"Argo.framework\"\n               BlueprintName = \"Argo-watchOS\"\n               ReferencedContainer = \"container:Argo.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D0592EB51B77DD7800EFEF39\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-watchOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D0592EB51B77DD7800EFEF39\"\n            BuildableName = \"Argo.framework\"\n            BlueprintName = \"Argo-watchOS\"\n            ReferencedContainer = \"container:Argo.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Argo.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Argo.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Carthage/Checkouts/Curry/Curry.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Argo Playground.playground\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/JSONFileReader.swift",
    "content": "import Foundation\n\nfunc JSONFromFile(file: String) -> AnyObject? {\n  return NSBundle(forClass: JSONFileReader.self).pathForResource(file, ofType: \"json\")\n    .flatMap { NSData(contentsOfFile: $0) }\n    .flatMap(JSONObjectWithData)\n}\n\nprivate func JSONObjectWithData(data: NSData) -> AnyObject? {\n  return try? NSJSONSerialization.JSONObjectWithData(data, options: [])\n}\n\nprivate class JSONFileReader { }\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/array_root.json",
    "content": "[\n  \"foo\",\n  \"bar\",\n  \"baz\"\n]"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/big_data.json",
    "content": "[{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n},\n{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n}]\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/booleans.json",
    "content": "{\n  \"realBool\": true,\n  \"numberBool\": 1\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/comment.json",
    "content": "{\n  \"id\": 6,\n  \"text\": \"Cool story bro.\",\n  \"author\": {\n    \"id\": 1,\n    \"name\": \"Cool User\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/post_bad_comments.json",
    "content": "{\n  \"id\": 3,\n  \"text\": \"A Cool story.\",\n  \"author\": {\n    \"id\": 1,\n    \"name\": \"Cool User\"\n  },\n  \"comments\": [\n    {\n    \"id\": 6,\n    \"text\": \"Cool story bro.\",\n    \"author\": {\n      \"id\": 1,\n      \"name\": \"Cool User\"\n      }\n    },\n    {\n    \"id\": 6,\n    \"author\": {\n      \"id\": 1,\n      \"name\": \"Cool User\"\n      }\n    }\n  ]\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/post_comments.json",
    "content": "{\n  \"id\": 3,\n  \"text\": \"A Cool story.\",\n  \"author\": {\n    \"id\": 1,\n    \"name\": \"Cool User\"\n  },\n  \"comments\": [\n    {\n    \"id\": 6,\n    \"text\": \"Cool story bro.\",\n    \"author\": {\n      \"id\": 1,\n      \"name\": \"Cool User\"\n      }\n    },\n    {\n    \"id\": 6,\n    \"text\": \"Cool story bro.\",\n    \"author\": {\n      \"id\": 1,\n      \"name\": \"Cool User\"\n      }\n    }\n  ]\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/post_no_comments.json",
    "content": "{\n  \"id\": 3,\n  \"text\": \"A Cool story.\",\n  \"author\": {\n    \"id\": 1,\n    \"name\": \"Cool User\"\n  },\n  \"comments\": []\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/root_array.json",
    "content": "[\n  {\n    \"title\": \"Foo\",\n    \"age\": 21\n  },\n  {\n    \"title\": \"Bar\",\n    \"age\": 32\n  }\n]\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/root_object.json",
    "content": "{\n  \"user\": {\n    \"id\": 1,\n    \"name\": \"Cool User\",\n    \"email\": \"u.cool@example.com\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/types.json",
    "content": "{\n  \"numerics\": {\n    \"int\": 5,\n    \"int64\": 9007199254740992,\n    \"int64_string\": \"1076543210012345678\",\n    \"double\": 3.4,\n    \"float\": 1.1,\n    \"int_opt\": 4,\n    \"uint\": 500,\n    \"uint64\": 9223372036854775807,\n    \"uint64_string\": \"18446744073709551614\"\n  },\n  \"bool\": false,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"string_array_opt\": null,\n  \"embedded\": {\n    \"string_array\": [\n      \"hello\",\n      \"world\"\n    ],\n    \"string_array_opt\": []\n  },\n  \"user_opt\": {\n    \"id\": 6,\n    \"name\": \"Cooler User\"\n  },\n  \"dict\": {\n    \"foo\": \"bar\"\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/types_fail_embedded.json",
    "content": "{\n  \"int\": 5,\n  \"double\": 3.4,\n  \"bool\": false,\n  \"int_opt\": 4,\n  \"string_array\": [\n    \"hello\",\n    \"world\"\n  ],\n  \"user_opt\": {\n    \"id\": 6,\n    \"fail\": \"Cooler User\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/url.json",
    "content": "{\n  \"url\": \"http://example.com\",\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/user_with_bad_type.json",
    "content": "{\n  \"id\": \"1\",\n  \"name\": \"Cool User\",\n  \"email\": \"u.cool@example.com\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/user_with_email.json",
    "content": "{\n  \"id\": 1,\n  \"name\": \"Cool User\",\n  \"email\": \"u.cool@example.com\"\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/user_with_nested_name.json",
    "content": "{\n  \"id\": 1,\n  \"userinfo\": {\n        \"name\": \"Very Cool User\"\n      },\n  \"email\": \"u.cool@example.com\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/user_without_email.json",
    "content": "{\n  \"id\": 1,\n  \"name\": \"Cool User\"\n}"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/JSON/user_without_key.json",
    "content": "{\n  \"name\": \"Cool User\",\n  \"email\": \"u.cool@example.com\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/Booleans.swift",
    "content": "import Argo\nimport Curry\n\nstruct Booleans: Decodable {\n  let bool: Bool\n  let number: Bool\n\n  static func decode(j: JSON) -> Decoded<Booleans> {\n    return curry(Booleans.init)\n      <^> j <| \"realBool\"\n      <*> j <| \"numberBool\"\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/Comment.swift",
    "content": "import Argo\nimport Curry\n\nstruct Comment {\n  let id: Int\n  let text: String\n  let authorName: String\n}\n\nextension Comment: Decodable {\n  static func decode(j: JSON) -> Decoded<Comment> {\n    return curry(self.init)\n      <^> j <| \"id\"\n      <*> j <| \"text\"\n      <*> j <| [\"author\", \"name\"]\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/NSURL.swift",
    "content": "import Argo\nimport Foundation\n\nextension NSURL: Decodable {\n  public typealias DecodedType = NSURL\n\n  public class func decode(j: JSON) -> Decoded<NSURL> {\n    switch j {\n    case .String(let urlString):\n      return NSURL(string: urlString).map(pure) ?? .typeMismatch(\"URL\", actual: j)\n    default: return .typeMismatch(\"URL\", actual: j)\n    }\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/Post.swift",
    "content": "import Argo\nimport Curry\n\nstruct Post {\n  let id: Int\n  let text: String\n  let author: User\n  let comments: [Comment]\n}\n\nextension Post: Decodable {\n  static func decode(j: JSON) -> Decoded<Post> {\n    return curry(self.init)\n      <^> j <| \"id\"\n      <*> j <| \"text\"\n      <*> j <| \"author\"\n      <*> j <|| \"comments\"\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/TestModel.swift",
    "content": "import Argo\nimport Curry\n\nstruct TestModel {\n  let numerics: TestModelNumerics\n  let string: String\n  let bool: Bool\n  let stringArray: [String]\n  let stringArrayOpt: [String]?\n  let eStringArray: [String]\n  let eStringArrayOpt: [String]?\n  let userOpt: User?\n  let dict: [String: String]\n}\n\nextension TestModel: Decodable {\n  static func decode(j: JSON) -> Decoded<TestModel> {\n    let curriedInit = curry(self.init)\n    return curriedInit\n      <^> j <| \"numerics\"\n      <*> j <| [\"user_opt\", \"name\"]\n      <*> j <| \"bool\"\n      <*> j <|| \"string_array\"\n      <*> j <||? \"string_array_opt\"\n      <*> j <|| [\"embedded\", \"string_array\"]\n      <*> j <||? [\"embedded\", \"string_array_opt\"]\n      <*> j <|? \"user_opt\"\n      <*> (j <| \"dict\" >>- { [String: String].decode($0) })\n  }\n}\n\nstruct TestModelNumerics {\n  let int: Int\n  let int64: Int64\n  let int64String: Int64\n  let double: Double\n  let float: Float\n  let intOpt: Int?\n  let uint: UInt\n  let uint64: UInt64\n  let uint64String: UInt64\n}\n\nextension TestModelNumerics: Decodable {\n  static func decode(j: JSON) -> Decoded<TestModelNumerics> {\n    return curry(self.init)\n      <^> j <| \"int\"\n      <*> j <| \"int64\"\n      <*> j <| \"int64_string\"\n      <*> j <| \"double\"\n      <*> j <| \"float\"\n      <*> j <|? \"int_opt\"\n      <*> j <| \"uint\"\n      <*> j <| \"uint64\"\n      <*> j <| \"uint64_string\"\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Models/User.swift",
    "content": "import Argo\nimport Curry\n\nstruct User {\n  let id: Int\n  let name: String\n  let email: String?\n}\n\nextension User: Decodable {\n  static func decode(j: JSON) -> Decoded<User> {\n    return curry(self.init)\n      <^> j <| \"id\"\n      <*> j <| [\"userinfo\", \"name\"] <|> j <| \"name\"\n      <*> j <|? \"email\"\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/DecodedTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass DecodedTests: XCTestCase {\n  func testDecodedSuccess() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n\n    switch user {\n    case let .Success(x): XCTAssert(user.description == \"Success(\\(x))\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n  \n  func testDecodedWithError() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_bad_type\")!)\n    \n    switch user.error {\n    case .Some: XCTAssert(true)\n    case .None: XCTFail(\"Unexpected Success\")\n    }\n  }\n  \n  func testDecodedWithNoError() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n    \n    switch user.error {\n    case .Some: XCTFail(\"Unexpected Error Occurred\")\n    case .None: XCTAssert(true)\n    }\n  }\n\n  func testDecodedTypeMissmatch() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_bad_type\")!)\n\n    switch user {\n    case let .Failure(.TypeMismatch(expected, actual)): XCTAssert(user.description == \"Failure(TypeMismatch(Expected \\(expected), got \\(actual)))\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n\n  func testDecodedMissingKey() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_without_key\")!)\n\n    switch user {\n    case let .Failure(.MissingKey(s)): XCTAssert(user.description == \"Failure(MissingKey(\\(s)))\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n\n  func testDecodedCustomError() {\n    let customError: Decoded<Dummy> = decode([:])\n\n    switch customError {\n    case let .Failure(e): XCTAssert(e.description == \"Custom(My Custom Error)\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n  \n  func testDecodedMaterializeSuccess() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n    let materialized = materialize { user.value! }\n    \n    switch materialized {\n    case let .Success(x): XCTAssert(user.description == \"Success(\\(x))\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n  \n  func testDecodedMaterializeFailure() {\n    let error = NSError(domain: \"com.thoughtbot.Argo\", code: 0, userInfo: nil)\n    let materialized = materialize { throw error }\n    \n    switch materialized {\n    case let .Failure(e): XCTAssert(e.description == \"Custom(\\(error.description))\")\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n  \n  func testDecodedDematerializeSuccess() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n    \n    do {\n      try user.dematerialize()\n      XCTAssert(true)\n    } catch {\n      XCTFail(\"Unexpected Error Occurred\")\n    }\n  }\n  \n  func testDecodedDematerializeTypeMismatch() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_with_bad_type\")!)\n    \n    do {\n      try user.dematerialize()\n      XCTFail(\"Unexpected Success\")\n    } catch DecodeError.TypeMismatch {\n      XCTAssert(true)\n    } catch DecodeError.MissingKey {\n      XCTFail(\"Unexpected Error Occurred\")\n    } catch {\n      XCTFail(\"Unexpected Error Occurred\")\n    }\n  }\n  \n  func testDecodedDematerializeMissingKey() {\n    let user: Decoded<User> = decode(JSONFromFile(\"user_without_key\")!)\n    \n    do {\n      try user.dematerialize()\n      XCTFail(\"Unexpected Success\")\n    } catch DecodeError.MissingKey {\n      XCTAssert(true)\n    } catch DecodeError.TypeMismatch {\n      XCTFail(\"Unexpected Error Occurred\")\n    } catch {\n      XCTFail(\"Unexpected Error Occurred\")\n    }\n  }\n\n  func testDecodedOrWithSuccess() {\n    let successUser: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n    let failedUser: Decoded<User> = decode(JSONFromFile(\"user_with_bad_type\")!)\n\n    let result = successUser.or(failedUser)\n\n    switch result {\n    case .Success: XCTAssert(result.description == successUser.description)\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n\n  func testDecodedOrWithError() {\n    let successUser: Decoded<User> = decode(JSONFromFile(\"user_with_email\")!)\n    let failedUser: Decoded<User> = decode(JSONFromFile(\"user_with_bad_type\")!)\n\n    let result = failedUser.or(successUser)\n\n    switch result {\n    case .Success: XCTAssert(result.description == successUser.description)\n    default: XCTFail(\"Unexpected Case Occurred\")\n    }\n  }\n}\n\nprivate struct Dummy: Decodable {\n  static func decode(json: JSON) -> Decoded<Dummy> {\n    return .Failure(.Custom(\"My Custom Error\"))\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/EmbeddedJSONDecodingTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass EmbeddedJSONDecodingTests: XCTestCase {\n  func testCommentDecodingWithEmbeddedUserName() {\n    let comment: Comment? = JSONFromFile(\"comment\").flatMap(decode)\n\n    XCTAssert(comment != nil)\n    XCTAssert(comment?.id == 6)\n    XCTAssert(comment?.text == \"Cool story bro.\")\n    XCTAssert(comment?.authorName == \"Cool User\")\n  }\n\n  func testPostDecodingWithEmbeddedUserModel() {\n    let post: Post? = JSONFromFile(\"post_no_comments\").flatMap(decode)\n\n    XCTAssert(post != nil)\n    XCTAssert(post?.id == 3)\n    XCTAssert(post?.text == \"A Cool story.\")\n    XCTAssert(post?.author.name == \"Cool User\")\n    XCTAssert(post?.comments.count == 0)\n  }\n\n  func testPostDecodingWithEmbeddedUserModelAndComments() {\n    let post: Post? = JSONFromFile(\"post_comments\").flatMap(decode)\n\n    XCTAssert(post != nil)\n    XCTAssert(post?.id == 3)\n    XCTAssert(post?.text == \"A Cool story.\")\n    XCTAssert(post?.author.name == \"Cool User\")\n    XCTAssert(post?.comments.count == 2)\n  }\n\n  func testPostDecodingWithBadComments() {\n    let post: Post? = JSONFromFile(\"post_bad_comments\").flatMap(decode)\n\n    XCTAssert(post == nil)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/EquatableTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass EquatableTests: XCTestCase {\n  func testEqualJSONObjects() {\n    let json = JSONFromFile(\"types\").map(JSON.init)\n    let anotherParsed = JSONFromFile(\"types\").map(JSON.init)\n\n    XCTAssertEqual(json!, anotherParsed!)\n  }\n\n  func testNotEqualJSONObjects() {\n    let json = JSONFromFile(\"types\").map(JSON.init)\n    let anotherJSON = JSONFromFile(\"types_fail_embedded\").map(JSON.init)\n\n    XCTAssertNotEqual(json!, anotherJSON!)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/ExampleTests.swift",
    "content": "import XCTest\nimport Argo\nimport Curry\n\nclass ExampleTests: XCTestCase {\n  func testJSONWithRootArray() {\n    let stringArray: [String]? = JSONFromFile(\"array_root\").flatMap(decode)\n\n    XCTAssertNotNil(stringArray)\n    XCTAssertEqual(stringArray!, [\"foo\", \"bar\", \"baz\"])\n  }\n\n  func testJSONWithRootObject() {\n    let object = JSONFromFile(\"root_object\") as? [String: AnyObject]\n    let user: User? = object.flatMap { decode($0, rootKey: \"user\") }\n\n    XCTAssert(user != nil)\n    XCTAssert(user?.id == 1)\n    XCTAssert(user?.name == \"Cool User\")\n    XCTAssert(user?.email != nil)\n    XCTAssert(user?.email! == \"u.cool@example.com\")\n  }\n\n  func testDecodingNonFinalClass() {\n    let object = JSONFromFile(\"url\") as? [String: AnyObject]\n    let url: NSURL? = object.flatMap { decode($0, rootKey: \"url\") }\n\n    XCTAssert(url != nil)\n    XCTAssert(url?.absoluteString == \"http://example.com\")\n  }\n\n  func testDecodingJSONWithRootArray() {\n    let expected = JSON([[\"title\": \"Foo\", \"age\": 21], [\"title\": \"Bar\", \"age\": 32]])\n    let json = JSONFromFile(\"root_array\").map(JSON.init)\n\n    XCTAssert(.Some(expected) == json)\n  }\n\n  func testFlatMapOptionals() {\n    let json: AnyObject? = JSONFromFile(\"user_with_email\")\n    let user: User? = json.flatMap(decode)\n\n    XCTAssert(user?.id == 1)\n    XCTAssert(user?.name == \"Cool User\")\n    XCTAssert(user?.email == \"u.cool@example.com\")\n  }\n  \n  func testNilCoalescing() {\n    let json: AnyObject? = JSONFromFile(\"user_with_nested_name\")\n    let user: User? = json.flatMap(decode)\n\n    XCTAssert(user?.id == 1)\n    XCTAssert(user?.name == \"Very Cool User\")\n    XCTAssert(user?.email == \"u.cool@example.com\")\n  }\n\n  func testFlatMapDecoded() {\n    let json: AnyObject? = JSONFromFile(\"user_with_email\")\n    let user: Decoded<User> = .fromOptional(json) >>- decode\n\n    XCTAssert(user.value?.id == 1)\n    XCTAssert(user.value?.name == \"Cool User\")\n    XCTAssert(user.value?.email == \"u.cool@example.com\")\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/OptionalPropertyDecodingTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass OptionalPropertyDecodingTests: XCTestCase {\n  func testUserDecodingWithEmail() {\n    let user: User? = JSONFromFile(\"user_with_email\").flatMap(decode)\n\n    XCTAssert(user != nil)\n    XCTAssert(user?.id == 1)\n    XCTAssert(user?.name == \"Cool User\")\n    XCTAssert(user?.email != nil)\n    XCTAssert(user?.email! == \"u.cool@example.com\")\n  }\n\n  func testUserDecodingWithoutEmail() {\n    let user: User? = JSONFromFile(\"user_without_email\").flatMap(decode)\n\n    XCTAssert(user != nil)\n    XCTAssert(user?.id == 1)\n    XCTAssert(user?.name == \"Cool User\")\n    XCTAssert(user?.email == nil)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/PListDecodingTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass PListDecodingTests: XCTestCase {\n  func testDecodingAllTypesFromPList() {\n    let model: TestModel? = PListFileReader.plist(fromFile: \"types\").flatMap(decode)\n\n    XCTAssert(model != nil)\n    XCTAssert(model?.numerics.int == 5)\n    XCTAssert(model?.numerics.int64 == 9007199254740992)\n    XCTAssert(model?.numerics.uint == 500)\n    XCTAssert(model?.numerics.uint64 == 9223372036854775807)\n    XCTAssert(model?.numerics.uint64String == 18446744073709551614)\n    XCTAssert(model?.numerics.double == 3.4)\n    XCTAssert(model?.numerics.float == 1.1)\n    XCTAssert(model?.numerics.intOpt == nil)\n    XCTAssert(model?.string == \"Cooler User\")\n    XCTAssert(model?.bool == false)\n    XCTAssert(model?.stringArray.count == 2)\n    XCTAssert(model?.stringArrayOpt == nil)\n    XCTAssert(model?.eStringArray.count == 2)\n    XCTAssert(model?.eStringArrayOpt != nil)\n    XCTAssert(model?.eStringArrayOpt?.count == 0)\n    XCTAssert(model?.userOpt != nil)\n    XCTAssert(model?.userOpt?.id == 6)\n    XCTAssert(model?.dict ?? [:] == [\"foo\": \"bar\"])\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/PerformanceTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass PerformanceTests: XCTestCase {\n  func testParsePerformance() {\n    let json: AnyObject = JSONFromFile(\"big_data\")!\n\n    measureBlock {\n      _ = JSON(json)\n    }\n  }\n\n  func testDecodePerformance() {\n    let json: AnyObject = JSONFromFile(\"big_data\")!\n    let j = JSON(json)\n\n    measureBlock {\n      [TestModel].decode(j)\n    }\n  }\n\n  func testBigDataDecodesCorrectly() {\n    let json: AnyObject = JSONFromFile(\"big_data\")!\n    let j = JSON(json)\n    let models = [TestModel].decode(j)\n    XCTAssertEqual(models.value!.count, 10_000, \"Decoded big_data should have 10_000 results.\")\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/RawRepresentableTests.swift",
    "content": "import XCTest\nimport Argo\n\nenum TestRawString: String {\n  case CoolString\n  case NotCoolStringBro\n}\n\nenum TestRawInt: Int {\n  case Zero\n  case One\n}\n\nextension TestRawString: Decodable { }\nextension TestRawInt: Decodable { }\n\nclass RawRepresentable: XCTestCase {\n  func testStringEnum() {\n    let json = JSON.Object([\n      \"string\": JSON.String(\"CoolString\"),\n      \"another\": JSON.String(\"NotCoolStringBro\")\n      ])\n\n    let string: TestRawString? = (json <| \"string\").value\n    let another: TestRawString? = (json <| \"another\").value\n    XCTAssert(TestRawString.CoolString == string)\n    XCTAssert(TestRawString.NotCoolStringBro == another)\n  }\n\n  func testIntEnum() {\n    let json = JSON.Object([\n      \"zero\": JSON.Number(0),\n      \"one\": JSON.Number(1)\n      ])\n\n    let zero: TestRawInt? = (json <| \"zero\").value\n    let one: TestRawInt? = (json <| \"one\").value\n    XCTAssert(TestRawInt.Zero == zero)\n    XCTAssert(TestRawInt.One == one)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/SwiftDictionaryDecodingTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass SwiftDictionaryDecodingTests: XCTestCase {\n  func testDecodingAllTypesFromSwiftDictionary() {\n    let typesDict = [\n       \"numerics\": [\n        \"int\": 5,\n        \"int64\": 900719,//9254740992, Dictionaries can't handle 64bit ints (iOS only, Mac works)\n        \"int64_string\": \"1076543210012345678\",\n        \"double\": 3.4,\n        \"float\": 1.1,\n        \"int_opt\": 4,\n        \"uint\": 500,\n        \"uint64\": 1039288,\n        \"uint64_string\": \"18446744073709551614\"\n      ],\n      \"bool\": false,\n      \"string_array\": [\"hello\", \"world\"],\n      \"embedded\": [\n        \"string_array\": [\"hello\", \"world\"],\n        \"string_array_opt\": []\n      ],\n      \"user_opt\": [\n        \"id\": 6,\n        \"name\": \"Cooler User\"\n      ],\n      \"dict\": [\n        \"foo\": \"bar\"\n      ]\n    ]\n\n    let model: TestModel? = decode(typesDict)\n\n    XCTAssert(model != nil)\n    XCTAssert(model?.numerics.int == 5)\n    XCTAssert(model?.numerics.int64 == 900719)//9254740992)\n    XCTAssert(model?.numerics.uint == 500)\n    XCTAssert(model?.numerics.uint64 == 1039288)\n    XCTAssert(model?.numerics.uint64String == 18446744073709551614)\n    XCTAssert(model?.numerics.double == 3.4)\n    XCTAssert(model?.numerics.float == 1.1)\n    XCTAssert(model?.numerics.intOpt != nil)\n    XCTAssert(model?.numerics.intOpt! == 4)\n    XCTAssert(model?.string == \"Cooler User\")\n    XCTAssert(model?.bool == false)\n    XCTAssert(model?.stringArray.count == 2)\n    XCTAssert(model?.stringArrayOpt == nil)\n    XCTAssert(model?.eStringArray.count == 2)\n    XCTAssert(model?.eStringArrayOpt != nil)\n    XCTAssert(model?.eStringArrayOpt?.count == 0)\n    XCTAssert(model?.userOpt != nil)\n    XCTAssert(model?.userOpt?.id == 6)\n    XCTAssert(model?.dict ?? [:] == [\"foo\": \"bar\"])\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/Tests/TypeTests.swift",
    "content": "import XCTest\nimport Argo\n\nclass TypeTests: XCTestCase {\n  func testAllTheTypes() {\n    let model: TestModel? = JSONFromFile(\"types\").flatMap(decode)\n\n    XCTAssert(model != nil)\n    XCTAssert(model?.numerics.int == 5)\n    XCTAssert(model?.numerics.int64 == 9007199254740992)\n    XCTAssert(model?.numerics.int64String == 1076543210012345678)\n    XCTAssert(model?.numerics.uint == 500)\n    XCTAssert(model?.numerics.uint64 == 9223372036854775807)\n    XCTAssert(model?.numerics.uint64String == 18446744073709551614)\n    XCTAssert(model?.numerics.double == 3.4)\n    XCTAssert(model?.numerics.float == 1.1)\n    XCTAssert(model?.numerics.intOpt != nil)\n    XCTAssert(model?.numerics.intOpt! == 4)\n    XCTAssert(model?.string == \"Cooler User\")\n    XCTAssert(model?.bool == false)\n    XCTAssert(model?.stringArray.count == 2)\n    XCTAssert(model?.stringArrayOpt == nil)\n    XCTAssert(model?.eStringArray.count == 2)\n    XCTAssert(model?.eStringArrayOpt != nil)\n    XCTAssert(model?.eStringArrayOpt?.count == 0)\n    XCTAssert(model?.userOpt != nil)\n    XCTAssert(model?.userOpt?.id == 6)\n    XCTAssert(model?.dict ?? [:] == [\"foo\": \"bar\"])\n  }\n\n  func testFailingEmbedded() {\n    let model: TestModel? = JSONFromFile(\"types_fail_embedded\").flatMap(decode)\n\n    XCTAssert(model == nil)\n  }\n\n  func testBooleanDecoding() {\n    let bools: Booleans? = JSONFromFile(\"booleans\").flatMap(decode)\n\n    XCTAssert(bools != nil)\n    XCTAssert(bools?.bool == true)\n    XCTAssert(bools?.number == true)\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/plists/PListFileReader.swift",
    "content": "import Foundation\n\nclass PListFileReader {\n  class func plist(fromFile file: String) -> AnyObject? {\n    let path = NSBundle(forClass: self).pathForResource(file, ofType: \"plist\")\n\n    if let p = path {\n      if let dict = NSDictionary(contentsOfFile: p) { return dict }\n      if let arr = NSArray(contentsOfFile: p) { return arr }\n    }\n\n    return .None\n  }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ArgoTests/plists/types.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>numerics</key>\n\t<dict>\n\t\t<key>int</key>\n\t\t<integer>5</integer>\n\t\t<key>int64</key>\n\t\t<integer>9007199254740992</integer>\n\t\t<key>int64_string</key>\n\t\t<string>1076543210012345678</string>\n\t\t<key>double</key>\n\t\t<real>3.4</real>\n\t\t<key>float</key>\n\t\t<real>1.1</real>\n\t\t<key>uint</key>\n\t\t<integer>500</integer>\n\t\t<key>uint64</key>\n\t\t<integer>9223372036854775807</integer>\n\t\t<key>uint64_string</key>\n\t\t<string>18446744073709551614</string>\n\t</dict>\n\t<key>bool</key>\n\t<false/>\n\t<key>embedded</key>\n\t<dict>\n\t\t<key>string_array</key>\n\t\t<array>\n\t\t\t<string>hello</string>\n\t\t\t<string>world</string>\n\t\t</array>\n\t\t<key>string_array_opt</key>\n\t\t<array/>\n\t</dict>\n\t<key>string_array</key>\n\t<array>\n\t\t<string>hello</string>\n\t\t<string>world</string>\n\t</array>\n\t<key>user_opt</key>\n\t<dict>\n\t\t<key>id</key>\n\t\t<integer>6</integer>\n\t\t<key>name</key>\n\t\t<string>Cooler User</string>\n\t</dict>\n\t<key>dict</key>\n\t<dict>\n\t\t<key>foo</key>\n\t\t<string>bar</string>\n\t</dict>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/CONTRIBUTING.md",
    "content": "We love pull requests from everyone. Follow the thoughtbot [code of conduct]\nwhile contributing.\n\n[code of conduct]: https://thoughtbot.com/open-source-code-of-conduct\n\n## Dependencies\n\nArgo uses [Carthage][] for dependency management. Running `bin/setup` will\ninstall Carthage if it isn't already installed, then download the\ndependencies.\n\n[Carthage]: https://github.com/Carthage/Carthage\n\n## Contributing\n\n1. Fork the repo.\n2. Run the tests. We only take pull requests with passing tests, and it's\n   great to know that you have a clean slate.\n3. Add a test for your change. Only refactoring and documentation changes\n   require no new tests. If you are adding functionality or fixing a bug, we\n   need a test!\n4. Make the test pass.\n5. Push to your fork and submit a pull request.\n\nAt this point you're waiting on us. We like to at least comment on, if not\naccept, pull requests within three business days (and, typically, one business\nday). We may suggest some changes or improvements or alternatives.\n\nSome things that will increase the chance that your pull request is accepted,\n\n* Include tests that fail without your code, and pass with it\n* Update the documentation, the surrounding one, examples elsewhere, guides,\n  whatever is affected by your contribution\n* Follow the existing style of the project\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Cartfile.private",
    "content": "github \"thoughtbot/Curry\" ~> 2.3.2\ngithub \"thoughtbot/Runes\" >= 3.0.0\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Cartfile.resolved",
    "content": "github \"thoughtbot/Curry\" \"v2.3.2\"\ngithub \"thoughtbot/Runes\" \"v3.2.0\"\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/.gitattributes",
    "content": "*.pbxproj merge=union\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/.gitignore",
    "content": "# OS X Finder\n.DS_Store\n\n# Xcode per-user config\n*.mode1\n*.mode1v3\n*.mode2v3\n*.perspective\n*.perspectivev3\n*.pbxuser\nxcuserdata\n*.xccheckout\n\n# Build products\nbuild/\n*.o\n*.LinkFileList\n*.hmap\n\n# Automatic backup files\n*~.nib/\n*.swp\n*~\n*.dat\n*.dep\n\n# Cocoapods\nPods\n\n# Carthage\nCarthage/Build\n\n# Swift Package Manager\n.build\nPackages\n\n# AppCode specific files\n.idea/\n*.iml\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/CONTRIBUTING.md",
    "content": "We love pull requests from everyone. Follow the thoughtbot [code of conduct]\nwhile contributing.\n\n[code of conduct]: https://thoughtbot.com/open-source-code-of-conduct\n\n## Contributing\n\n1. Fork the repo.\n2. Push to your fork and submit a pull request.\n\nAt this point you're waiting on us. We like to at least comment on, if not\naccept, pull requests within three business days (and, typically, one business\nday). We may suggest some changes or improvements or alternatives.\n\nSome things that will increase the chance that your pull request is accepted,\n\n* Update the documentation, the surrounding one, examples elsewhere, guides,\n  whatever is affected by your contribution\n* Follow the existing style of the project\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.podspec",
    "content": "Pod::Spec.new do |spec|\n  spec.name = 'Curry'\n  spec.version = '2.3.2'\n  spec.summary = 'Function Currying for Swift'\n  spec.homepage = 'https://github.com/thoughtbot/curry'\n  spec.license = { :type => 'MIT', :file => 'LICENSE' }\n  spec.author = {\n    'Gordon Fontenot' => 'gordon@thoughtbot.com',\n    'thoughtbot' => nil,\n  }\n  spec.social_media_url = 'http://twitter.com/thoughtbot'\n  spec.source = { :git => 'https://github.com/thoughtbot/curry.git', :tag => \"v#{spec.version}\" }\n  spec.source_files = 'Source/**/*.{h,swift}'\n  spec.requires_arc = true\n  spec.ios.deployment_target = '8.0'\n  spec.osx.deployment_target = '10.9'\n  spec.watchos.deployment_target = '2.0'\n  spec.tvos.deployment_target = '9.0'\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t804D01FB1BA3687E0005BBC4 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\t804D01FC1BA368820005BBC4 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t80E0590F1BA9FAC10077CBA7 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\t80E059101BA9FAC50077CBA7 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF88630761B4EF9B200F53969 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF88630961B4EFA2700F53969 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF886309A1B4EFD7600F53969 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\tF886309B1B4EFD7600F53969 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t804D01F31BA3684C0005BBC4 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t80E059071BA9FA7F0077CBA7 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630561B4EF96200F53969 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630741B4EF9B200F53969 /* Curry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Curry.h; sourceTree = \"<group>\"; };\n\t\tF88630751B4EF9B200F53969 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tF886307D1B4EF9F800F53969 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630991B4EFD7600F53969 /* Curry.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Curry.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t804D01EF1BA3684C0005BBC4 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059031BA9FA7F0077CBA7 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630521B4EF96200F53969 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630791B4EF9F800F53969 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tF886304C1B4EF96200F53969 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630731B4EF9B200F53969 /* Resources */,\n\t\t\t\tF88630721B4EF9B200F53969 /* Source */,\n\t\t\t\tF88630571B4EF96200F53969 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630571B4EF96200F53969 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630561B4EF96200F53969 /* Curry.framework */,\n\t\t\t\tF886307D1B4EF9F800F53969 /* Curry.framework */,\n\t\t\t\t804D01F31BA3684C0005BBC4 /* Curry.framework */,\n\t\t\t\t80E059071BA9FA7F0077CBA7 /* Curry.framework */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630721B4EF9B200F53969 /* Source */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630991B4EFD7600F53969 /* Curry.swift */,\n\t\t\t);\n\t\t\tpath = Source;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630731B4EF9B200F53969 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630741B4EF9B200F53969 /* Curry.h */,\n\t\t\t\tF88630751B4EF9B200F53969 /* Info.plist */,\n\t\t\t);\n\t\t\tpath = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t804D01F01BA3684C0005BBC4 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t804D01FC1BA368820005BBC4 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059041BA9FA7F0077CBA7 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t80E059101BA9FAC50077CBA7 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630531B4EF96200F53969 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF88630761B4EF9B200F53969 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF886307A1B4EF9F800F53969 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF88630961B4EFA2700F53969 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t804D01F21BA3684C0005BBC4 /* Curry-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 804D01FA1BA3684C0005BBC4 /* Build configuration list for PBXNativeTarget \"Curry-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t804D01EE1BA3684C0005BBC4 /* Sources */,\n\t\t\t\t804D01EF1BA3684C0005BBC4 /* Frameworks */,\n\t\t\t\t804D01F01BA3684C0005BBC4 /* Headers */,\n\t\t\t\t804D01F11BA3684C0005BBC4 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-watchOS\";\n\t\t\tproductName = \"Curry-watchOS\";\n\t\t\tproductReference = 804D01F31BA3684C0005BBC4 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t80E059061BA9FA7F0077CBA7 /* Curry-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 80E0590E1BA9FA7F0077CBA7 /* Build configuration list for PBXNativeTarget \"Curry-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t80E059021BA9FA7F0077CBA7 /* Sources */,\n\t\t\t\t80E059031BA9FA7F0077CBA7 /* Frameworks */,\n\t\t\t\t80E059041BA9FA7F0077CBA7 /* Headers */,\n\t\t\t\t80E059051BA9FA7F0077CBA7 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-tvOS\";\n\t\t\tproductName = \"Curry-tvOS\";\n\t\t\tproductReference = 80E059071BA9FA7F0077CBA7 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF88630551B4EF96200F53969 /* Curry-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F886306C1B4EF96200F53969 /* Build configuration list for PBXNativeTarget \"Curry-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF88630511B4EF96200F53969 /* Sources */,\n\t\t\t\tF88630521B4EF96200F53969 /* Frameworks */,\n\t\t\t\tF88630531B4EF96200F53969 /* Headers */,\n\t\t\t\tF88630541B4EF96200F53969 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-iOS\";\n\t\t\tproductName = Curry;\n\t\t\tproductReference = F88630561B4EF96200F53969 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF886307C1B4EF9F800F53969 /* Curry-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F88630901B4EF9F800F53969 /* Build configuration list for PBXNativeTarget \"Curry-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF88630781B4EF9F800F53969 /* Sources */,\n\t\t\t\tF88630791B4EF9F800F53969 /* Frameworks */,\n\t\t\t\tF886307A1B4EF9F800F53969 /* Headers */,\n\t\t\t\tF886307B1B4EF9F800F53969 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-Mac\";\n\t\t\tproductName = \"Curry-Mac\";\n\t\t\tproductReference = F886307D1B4EF9F800F53969 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF886304D1B4EF96200F53969 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = thoughtbot;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t804D01F21BA3684C0005BBC4 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.0;\n\t\t\t\t\t};\n\t\t\t\t\t80E059061BA9FA7F0077CBA7 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t};\n\t\t\t\t\tF88630551B4EF96200F53969 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t};\n\t\t\t\t\tF886307C1B4EF9F800F53969 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = F88630501B4EF96200F53969 /* Build configuration list for PBXProject \"Curry\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = F886304C1B4EF96200F53969;\n\t\t\tproductRefGroup = F88630571B4EF96200F53969 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF88630551B4EF96200F53969 /* Curry-iOS */,\n\t\t\t\tF886307C1B4EF9F800F53969 /* Curry-Mac */,\n\t\t\t\t804D01F21BA3684C0005BBC4 /* Curry-watchOS */,\n\t\t\t\t80E059061BA9FA7F0077CBA7 /* Curry-tvOS */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t804D01F11BA3684C0005BBC4 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059051BA9FA7F0077CBA7 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630541B4EF96200F53969 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF886307B1B4EF9F800F53969 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t804D01EE1BA3684C0005BBC4 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t804D01FB1BA3687E0005BBC4 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059021BA9FA7F0077CBA7 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t80E0590F1BA9FAC10077CBA7 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630511B4EF96200F53969 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF886309A1B4EFD7600F53969 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630781B4EF9F800F53969 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF886309B1B4EFD7600F53969 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\t804D01F81BA3684C0005BBC4 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t804D01F91BA3684C0005BBC4 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t80E0590C1BA9FA7F0077CBA7 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t80E0590D1BA9FA7F0077CBA7 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF886306A1B4EF96200F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF886306B1B4EF96200F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF886306D1B4EF96200F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF886306E1B4EF96200F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF88630911B4EF9F800F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF88630921B4EF9F800F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t804D01FA1BA3684C0005BBC4 /* Build configuration list for PBXNativeTarget \"Curry-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t804D01F81BA3684C0005BBC4 /* Debug */,\n\t\t\t\t804D01F91BA3684C0005BBC4 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t80E0590E1BA9FA7F0077CBA7 /* Build configuration list for PBXNativeTarget \"Curry-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t80E0590C1BA9FA7F0077CBA7 /* Debug */,\n\t\t\t\t80E0590D1BA9FA7F0077CBA7 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF88630501B4EF96200F53969 /* Build configuration list for PBXProject \"Curry\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF886306A1B4EF96200F53969 /* Debug */,\n\t\t\t\tF886306B1B4EF96200F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF886306C1B4EF96200F53969 /* Build configuration list for PBXNativeTarget \"Curry-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF886306D1B4EF96200F53969 /* Debug */,\n\t\t\t\tF886306E1B4EF96200F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF88630901B4EF9F800F53969 /* Build configuration list for PBXNativeTarget \"Curry-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF88630911B4EF9F800F53969 /* Debug */,\n\t\t\t\tF88630921B4EF9F800F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F886304D1B4EF96200F53969 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Curry.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-Mac\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-Mac\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-Mac\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-iOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-iOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-iOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-tvOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-tvOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-tvOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-watchOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-watchOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-watchOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/LICENSE",
    "content": "Copyright (c) 2014 thoughtbot, inc.\n\nMIT License\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n  name: \"Curry\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/README.md",
    "content": "[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n# Curry #\n\nSwift implementations for function currying.\n\nFor more info on function currying in Swift, please refer to [this blog\npost][tb-curry]\n\n[tb-curry]: https://robots.thoughtbot.com/introduction-to-function-currying-in-swift\n\n## Installation ##\n\n### [Carthage] ###\n\n[Carthage]: https://github.com/Carthage/Carthage\n\n```\ngithub \"thoughtbot/Curry\"\n```\n\nThen run `carthage update`.\n\nFollow the current instructions in [Carthage's README][carthage-installation]\nfor up to date installation instructions.\n\n[carthage-installation]: https://github.com/Carthage/Carthage#adding-frameworks-to-an-application\n\n### [CocoaPods] ###\n\n[CocoaPods]: http://cocoapods.org\n\nAdd the following to your [Podfile](http://guides.cocoapods.org/using/the-podfile.html):\n\n```ruby\npod 'Curry'\n```\n\nYou will also need to make sure you're opting into using frameworks:\n\n```ruby\nuse_frameworks!\n```\n\nThen run `pod install` with CocoaPods 0.36 or newer.\n\nContributing\n------------\n\nSee the [CONTRIBUTING] document. Thank you, [contributors]!\n\n[CONTRIBUTING]: CONTRIBUTING.md\n[contributors]: https://github.com/thoughtbot/Curry/graphs/contributors\n\nLicense\n-------\n\nCurry is Copyright (c) 2015 thoughtbot, inc. It is free software, and may be\nredistributed under the terms specified in the [LICENSE] file.\n\n[LICENSE]: /LICENSE\n\nAbout\n-----\n\n![thoughtbot](https://thoughtbot.com/logo.png)\n\nCurry is maintained and funded by thoughtbot, inc. The names and logos for\nthoughtbot are trademarks of thoughtbot, inc.\n\nWe love open source software! See [our other projects][community] or look at\nour product [case studies] and [hire us][hire] to help build your iOS app.\n\n[community]: https://thoughtbot.com/community?utm_source=github\n[case studies]: https://thoughtbot.com/ios?utm_source=github\n[hire]: https://thoughtbot.com/hire-us?utm_source=github\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Resources/Curry.h",
    "content": "//\n//  Curry.h\n//  Curry\n//\n//  Created by Gordon Fontenot on 7/9/15.\n//  Copyright (c) 2015 thoughtbot. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n//! Project version number for Curry.\nFOUNDATION_EXPORT double CurryVersionNumber;\n\n//! Project version string for Curry.\nFOUNDATION_EXPORT const unsigned char CurryVersionString[];\n\n// In this header, you should import all the public headers of your framework using statements like #import <Curry/PublicHeader.h>\n\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Resources/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.3.2</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/Source/Curry.swift",
    "content": "public func curry<A, B>(_ function: (A) -> B) -> (A) -> B {\n    return { (`a`: A) -> B in function(`a`) }\n}\n\npublic func curry<A, B, C>(_ function: (A, B) -> C) -> (A) -> (B) -> C {\n    return { (`a`: A) -> (B) -> C in { (`b`: B) -> C in function(`a`, `b`) } }\n}\n\npublic func curry<A, B, C, D>(_ function: (A, B, C) -> D) -> (A) -> (B) -> (C) -> D {\n    return { (`a`: A) -> (B) -> (C) -> D in { (`b`: B) -> (C) -> D in { (`c`: C) -> D in function(`a`, `b`, `c`) } } }\n}\n\npublic func curry<A, B, C, D, E>(_ function: (A, B, C, D) -> E) -> (A) -> (B) -> (C) -> (D) -> E {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> E in { (`b`: B) -> (C) -> (D) -> E in { (`c`: C) -> (D) -> E in { (`d`: D) -> E in function(`a`, `b`, `c`, `d`) } } } }\n}\n\npublic func curry<A, B, C, D, E, F>(_ function: (A, B, C, D, E) -> F) -> (A) -> (B) -> (C) -> (D) -> (E) -> F {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> F in { (`b`: B) -> (C) -> (D) -> (E) -> F in { (`c`: C) -> (D) -> (E) -> F in { (`d`: D) -> (E) -> F in { (`e`: E) -> F in function(`a`, `b`, `c`, `d`, `e`) } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G>(_ function: (A, B, C, D, E, F) -> G) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> G {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> G in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> G in { (`c`: C) -> (D) -> (E) -> (F) -> G in { (`d`: D) -> (E) -> (F) -> G in { (`e`: E) -> (F) -> G in { (`f`: F) -> G in function(`a`, `b`, `c`, `d`, `e`, `f`) } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H>(_ function: (A, B, C, D, E, F, G) -> H) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> H in { (`d`: D) -> (E) -> (F) -> (G) -> H in { (`e`: E) -> (F) -> (G) -> H in { (`f`: F) -> (G) -> H in { (`g`: G) -> H in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`) } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I>(_ function: (A, B, C, D, E, F, G, H) -> I) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> I in { (`e`: E) -> (F) -> (G) -> (H) -> I in { (`f`: F) -> (G) -> (H) -> I in { (`g`: G) -> (H) -> I in { (`h`: H) -> I in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`) } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J>(_ function: (A, B, C, D, E, F, G, H, I) -> J) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> J in { (`f`: F) -> (G) -> (H) -> (I) -> J in { (`g`: G) -> (H) -> (I) -> J in { (`h`: H) -> (I) -> J in { (`i`: I) -> J in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`) } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K>(_ function: (A, B, C, D, E, F, G, H, I, J) -> K) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> K in { (`g`: G) -> (H) -> (I) -> (J) -> K in { (`h`: H) -> (I) -> (J) -> K in { (`i`: I) -> (J) -> K in { (`j`: J) -> K in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`) } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L>(_ function: (A, B, C, D, E, F, G, H, I, J, K) -> L) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> L in { (`h`: H) -> (I) -> (J) -> (K) -> L in { (`i`: I) -> (J) -> (K) -> L in { (`j`: J) -> (K) -> L in { (`k`: K) -> L in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`) } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L) -> M) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> M in { (`i`: I) -> (J) -> (K) -> (L) -> M in { (`j`: J) -> (K) -> (L) -> M in { (`k`: K) -> (L) -> M in { (`l`: L) -> M in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`) } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M) -> N) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> N in { (`j`: J) -> (K) -> (L) -> (M) -> N in { (`k`: K) -> (L) -> (M) -> N in { (`l`: L) -> (M) -> N in { (`m`: M) -> N in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`) } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> O) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> O in { (`k`: K) -> (L) -> (M) -> (N) -> O in { (`l`: L) -> (M) -> (N) -> O in { (`m`: M) -> (N) -> O in { (`n`: N) -> O in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`) } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) -> P) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> P in { (`l`: L) -> (M) -> (N) -> (O) -> P in { (`m`: M) -> (N) -> (O) -> P in { (`n`: N) -> (O) -> P in { (`o`: O) -> P in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`) } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) -> Q) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`m`: M) -> (N) -> (O) -> (P) -> Q in { (`n`: N) -> (O) -> (P) -> Q in { (`o`: O) -> (P) -> Q in { (`p`: P) -> Q in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`) } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> R) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`n`: N) -> (O) -> (P) -> (Q) -> R in { (`o`: O) -> (P) -> (Q) -> R in { (`p`: P) -> (Q) -> R in { (`q`: Q) -> R in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`) } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) -> S) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`o`: O) -> (P) -> (Q) -> (R) -> S in { (`p`: P) -> (Q) -> (R) -> S in { (`q`: Q) -> (R) -> S in { (`r`: R) -> S in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`) } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) -> T) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`p`: P) -> (Q) -> (R) -> (S) -> T in { (`q`: Q) -> (R) -> (S) -> T in { (`r`: R) -> (S) -> T in { (`s`: S) -> T in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`) } } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) -> U) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`p`: P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`q`: Q) -> (R) -> (S) -> (T) -> U in { (`r`: R) -> (S) -> (T) -> U in { (`s`: S) -> (T) -> U in { (`t`: T) -> U in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`, `t`) } } } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) -> V) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`p`: P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`q`: Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`r`: R) -> (S) -> (T) -> (U) -> V in { (`s`: S) -> (T) -> (U) -> V in { (`t`: T) -> (U) -> V in { (`u`: U) -> V in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`, `t`, `u`) } } } } } } } } } } } } } } } } } } } } }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Carthage/Checkouts/Curry/bin/generate",
    "content": "#!/usr/bin/env xcrun swift\n\n// Generates a Swift file with implementation of function currying for a ridicolously high number of arguments\n\nimport Foundation\n\nlet generics = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\", \"J\", \"K\", \"L\", \"M\", \"N\", \"O\", \"P\", \"Q\", \"R\", \"S\", \"T\", \"U\", \"V\", \"W\", \"X\", \"Y\", \"Z\"]\n\nextension Array {\n  subscript(safe index: Int) -> Element? {\n    return indices ~= index ? self[index] : .none\n  }\n}\n\nfunc genericType(for position: Int) -> String {\n  let max = generics.count\n  switch position {\n  case _ where position < max: return generics[position % max]\n  default: return generics[position / max - 1] + generics[position % max]\n  }\n}\n\nfunc commaConcat(_ xs: [String]) -> String {\n  return xs.joined(separator: \", \")\n}\n\nfunc singleParameterFunctions(_ xs: [String]) -> String {\n  guard let first = xs.first else { fatalError(\"Attempted to nest functions with no arguments\") }\n  guard xs.last != first else { return first }\n  let remainder = Array(xs.dropFirst())\n  return \"(\\(first)) -> \\(singleParameterFunctions(remainder))\"\n}\n\nfunc curryDefinitionGenerator(arguments: Int) -> String {\n  let genericParameters = (0..<arguments).map(genericType) // [\"A\", \"B\", \"C\", \"D\"]\n  let genericTypeDefinition = \"<\\(commaConcat(genericParameters))>\" // \"<A, B, C, D>\"\n\n  let inputParameters = Array(genericParameters[0..<arguments - 1]) // [\"A\", \"B\", \"C\"]\n  let lowerFunctionArguments = inputParameters.map { \"`\\($0.lowercased())`\" } // [\"`a`\", \"`b`\", \"`c`\"]\n  let returnType = genericParameters.last! // \"D\"\n\n  let functionArguments = \"(\\(commaConcat(inputParameters)))\" // \"(A, B, C)\"\n  let returnFunction = singleParameterFunctions(genericParameters) // \" (A) -> (B) -> (C) -> D\"\n  let innerFunctionArguments = commaConcat(lowerFunctionArguments) // \"`a`, `b`, `c`\"\n\n  let functionDefinition = \"function(\\(innerFunctionArguments))\" // function(`a`, `b`, `c`)\n\n  let implementation = lowerFunctionArguments.enumerated().reversed().reduce(functionDefinition) { accum, tuple in\n    let (index, argument) = tuple\n    let functionParameters = Array(genericParameters.suffix(from: index + 1))\n    return \"{ (\\(argument): \\(inputParameters[index])) -> \\(singleParameterFunctions(functionParameters)) in \\(accum) }\"\n  } // \"{ (`a`: A) -> (B) -> (C) -> D in { (`b`: B) -> (C) -> D in { (`c`: C) -> D in function(`a`, `b`, `c`) } } }\"\n\n  let curry = [\n    \"public func curry\\(genericTypeDefinition)(_ function: \\(functionArguments) -> \\(returnType)) -> \\(returnFunction) {\",\n    \"    return \\(implementation)\",\n    \"}\"\n  ]\n\n  return curry.joined(separator: \"\\n\")\n}\n\nprint(\"Generating 💬\")\n\nlet input = Process.arguments[safe: 1] ?? \"20\"\nlet limit = Int(input)!\n\nlet start = 2\nlet curries = (start...limit+1).map { curryDefinitionGenerator(arguments: $0) }\n\nlet output = curries.joined(separator: \"\\n\\n\") + \"\\n\"\n\nlet outputPath = \"Source/Curry.swift\"\nlet currentPath = NSURL(fileURLWithPath: FileManager.default().currentDirectoryPath)\nlet currySwiftPath = currentPath.appendingPathComponent(outputPath)!\n\ndo {\n  try output.write(to: currySwiftPath, atomically: true, encoding: String.Encoding.utf8)\n} catch let e as NSError {\n  print(\"An error occurred while saving the generated functions. Error: \\(e)\")\n}\n\nprint(\"Done, curry functions files written at \\(outputPath) 👍\")\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/.gitkeep",
    "content": ""
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Basic-Usage.md",
    "content": "## Usage\n\nArgo uses Swift's type system along with concepts from functional programming to\nlet you smoothly transform JSON data into Swift model types. Argo does this with\na minimum of syntax, while at the same time improving type safety and data\nintegrity compared to other approaches.\n\nYou may need to learn a few things in order to learn Argo effectively, but once\nyou do so, you'll have a powerful new tool to hang on your belt!\n\n### Decoding basics\n\nArgo's whole purpose is to let you easily pick apart structured data (normally\nin the form of a dictionary created from JSON data) and create Swift objects\nbased on the decoded content. Typically, you'll want to do this with JSON data\nreceived from a server or elsewhere. The first thing you need to do is convert\nthe JSON data from `NSData` to an `AnyObject` using `Foundation`'s\n`NSJSONSerialization` API.  Once you have the `AnyObject`, you can call Argo's\nglobal `decode` function to get back the decoded model.\n\n```swift\nlet json: AnyObject? = try? NSJSONSerialization.JSONObjectWithData(responseData, options: [])\n\nif let j: AnyObject = json {\n  let user: User? = decode(j)                  // ignore failure info or\n  let decodedUser: Decoded<User> = decode(j)   // preserve failure info\n}\n```\n\nAs you see in this example, Argo introduces a new type: `Decoded<T>`.  This new\ntype contains either a successfully decoded object or a failure state that\npreserves information about why a decoding failed. You can choose to either\nignore the `Decoded` type and just get back the optional value or keep the\n`Decoded` type and use it to debug or report decoding failures.  When you decode\nan `AnyObject` into a model using the global `decode` function, you can specify\nwhether you want an `Optional` model or a `Decoded` model by specifying the\nreturn type as seen in the code block above.\n\n### Implementing `Decodable`\n\nIn order for this to work with your own model types, you need to make sure that\nmodels that you wish to decode from JSON conform to the `Decodable` protocol:\n\n```swift\npublic protocol Decodable {\n  typealias DecodedType = Self\n  static func decode(json: JSON) -> Decoded<DecodedType>\n}\n```\n\nIn your model, you need to implement the `decode` function to perform whatever\ntransformations are needed in order to create your model from the given JSON\nstructure.  To illustrate this, we will decode a simple model type called\n`User`. Start by creating this `User` model:\n\n```swift\nstruct User {\n  let id: Int\n  let name: String\n}\n```\n\n### Currying `User.init`\n\nWe will be using another small library called [`Curry`] to help with decoding\nour `User` model. Currying allows us to partially apply the `init` function over\nthe course of the decoding process. This basically means that we can build up\nthe `init` function call bit by bit, adding one parameter at a time, if and only\nif Argo can successfully decode them. If any of the parameters don't meet our\nexpectations, Argo will skip the `init` call and return a special failure state. \n\n[`Curry`]: https://github.com/thoughtbot/Curry\n\n> If you'd like to learn more about currying, we recommend the following articles:\n> \n> \n> - [Apple's documentation of curried functions](https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/doc/uid/TP40014097-CH34-XID_615)\n> - [Introduction to Function Currying in Swift](http://robots.thoughtbot.com/introduction-to-function-currying-in-swift)\n\nNow, we make `User` conform to `Decodable` and implement the required `decode`\nfunction. We will implement this function by using some [functional\nconcepts](Functional-Concepts.md),\nspecifically the `map` (`<^>`) and `apply` (`<*>`) operators, to conditionally\npass the required parameters to the curried init function. The common pattern\nwill look like this:\n\n\n```swift\n  static func decode(json: JSON) -> Decoded<DecodedType> {\n    return curry(Model.init) <^> paramOne <*> paramTwo <*> paramThree\n  }\n```\n\nand so on. If any of those parameters are a failure state, then the entire\ncreation process will fail, and the function will return the first failure\nstate. If all of the parameters are successful, the value will be unwrapped and\npassed to the `init` function.\n\n### Safely pulling values from JSON\n\nIn the example above, we showed some non-existent parameters (`paramOne`, etc), but\none of Argo's main features is the ability to help you grab the real parameters\nfrom the JSON structure in a way that is type-safe and concise. You don't need\nto manually check to make sure that a value is non-nil, or that it's of the\nright type. Argo leverages Swift's expressive type system to do that heavy\nlifting for you. To help with the decoding process, Argo introduces two new\noperators for parsing a value out of the JSON:\n\n- `<|` will attempt to parse a single value from the JSON\n- `<||` will attempt to parse an array of values from the JSON\n\nThese are infix operators that correspond to familiar operations:\n\n- `json <| \"name\"` is analogous to `json[\"name\"]`, in cases where a single item\n  is associated with the `\"name\"` key\n- `json <|| \"posts\"` is analogous to `json[\"posts\"]`, in cases where an array of\n  items is associated with the `\"posts\"` key\n\nAs a bonus, if your JSON contains nested data whose elements are also\n`Decodable`, then you can retrieve a nested value by using an array of strings:\n\n- `json <| [\"location\", \"city\"]` is analogous to `json[\"location\"][\"city\"]`\n\nEach of these operators will attempt to extract the specified value from the\nJSON structure. If a value is found, the operator will then attempt to cast the\nvalue to the expected type. If that all works out, the operator will return the\ndecoded object wrapped inside a `Decoded<T>.Success(.Some(value))`. If the value\nit finds is of the wrong type, the function will return a\n`Decoded<T>.Failure(.TypeMismatch(expected: String, actual: String))` failure state. If\nit can't find any value at all for the specified key, the function will return a\n`Decoded<T>.Failure(.MissingKey(name: String))` failure state. \n\nThere are also Optional versions of these operators:\n\n- `<|?` will attempt to parse an optional value from the JSON\n- `<||?` will attempt to parse an optional array of values from the JSON\n\nUsage is the same as for the non-optional variants. The difference is that if\nthese operators happen to pull a `nil` value from the JSON, they will consider\nthis a success and continue on, rather than returning a failure state.  This is\nuseful for including parameters that truly are optional values. For example, if\nyour system doesn't require someone to supply an email address, you could have\nan optional property on `User` such as `let email: String?` and use `json <|?\n\"email\"` to decode either an email string or a `nil` value.\n\n### Finally implementing your `decode` function\n\nSo, to implement our `decode` function, we can use the JSON parsing operator in\nconjunction with `map` and `apply`:\n\n```swift\nextension User: Decodable {\n  static func decode(j: JSON) -> Decoded<User> {\n    return curry(User.init)\n      <^> j <| \"id\"\n      <*> j <| \"name\"\n  }\n}\n```\n\nFor comparison, an implementation of a similar function without Argo could look\nlike this:\n\n```swift\nextension User {\n  static func decode(j: NSDictionary) -> User? {\n    if let id = j[\"id\"] as? Int,\n       let name = j[\"name\"] as? String\n    {\n      return User(id: id, name: name)\n    }\n\n    return .None\n  }\n}\n```\n\nNot only is that code much more verbose than the equivalent code using Argo, it\nalso doesn't return to the caller any indication of where or why any failures\noccur. This technique also requires you to specify the type of\neach value in multiple places, which means that if the type of one of your\nvalues changes, you'll have to change it at multiple places in your code. If\nyou're using Argo, however, you just need to declare the types of your\nproperties in your model, and then the Swift compiler will infer the types that\nneed to be sent to the curried `decode` function and therefore the types that\nneed to be found in the JSON structure.\n\nYou can decode custom types the same way, as long as the type also conforms to\n`Decodable`. This is how we implement [relationships].\n\n[relationships]: Relationships.md\n\nFor more Argo usage examples, see our [test suite](../ArgoTests).\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Decode-Enums.md",
    "content": "# Decoding Enums\n\nDecoding Structs and Classes is a similar process, but Enums can mix things up.\nIf your Enum inherits from a Raw Type (`String` or `Int`), then making it\nconform to `Decodable` is as simple as pie. Let's look at a `Role` type enum:\n\n```swift\nenum Role: String {\n  case User \n  case Admin\n  case SuperAdmin\n}\n```\n\nTo make `Role` conform to `Decodable`, use this one line:\n\n```swift\nextension Role: Decodable { }\n```\n\n\"THAT'S IT?! How?\", you ask. Enums with a raw type like `String` or `Int`\nconform to `RawRepresentable`. Enums that are `RawRepresentable` are given a\ndefault value by the Swift compiler. With `Int`, the first case is `0` and each\ncase is one more than the previous case. With `String`, the default raw value\nis the case name. So for `Role`, the raw value that represents the case `User`\nis `\"User\"`. `RawRepresentable` enums also get a default initialize\n`init(rawValue: )`. We added a [default implementation] to Argo for `Int` and\n`String` enums so decoding can be this simple.\n\n[default implementation]: ../Argo/Extensions/RawRepresentable.swift\n\nSo, what if the enum doesn't have a raw type? Conforming to `Decodable` is a\nbit more involved but not too hard. Let's look at an example:\n\n```swift\nenum FootRace {\n  case HalfMarathon\n  case Marathon\n  case UltraMarathon\n}\n```\n\nWe can write `Decodable` for `FootRace` like so:\n\n```swift\nextension FootRace: Decodable {\n  static func decode(j: JSON) -> Decoded<FootRace> {\n    switch j {\n\n    // First, make sure JSON is a number.\n    case let .Number(distance):\n\n      // Next, match the number to the enum case.\n      switch distance {\n\n      // When a case matches, use pure to wrap the enum in Decoded.\n      case 13.1: return pure(.HalfMarathon)\n      case 26.2: return pure(.Marathon)\n      case _ where distance > 26.2: return pure(.UltraMarathon)\n\n      // Return an error if no case matched\n      default: return .typeMismatch(\"marathon distance\", actual: distance)\n      }\n\n    // Return an error if JSON is not a number.\n    default: return .typeMismatch(\"Number\", actual: j)\n    }\n  }\n}\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Decode-Root-Keys.md",
    "content": "# Decoding with Root Keys\n\nThe easiest way to decode models from JSON is to use the global `decode`\nfunction: pass the `AnyObject` variable returned from `NSJSONSerialization`\ndirectly to `decode`, and you'll get the model back. However, many times the\nJSON for the model is embedded within a root key:\n\n```\n{\n  \"user\": {\n    \"id\": 1881372911,\n    \"name\": \"George Senior\"\n  }\n}\n```\n\nIn this case, you can't use the global `decode` function because it assumes\nthe object you're trying to decode is at the root level. To get around this,\nfirst transform the `AnyObject` into a `JSON` type, then use the `<|` operator\nto pull out the object and decode it into its model.\n\n```swift\nlet json = JSON(anyObject)\n\nlet user: Decoded<User> = json <| \"user\"\n// or\nlet user: User? = json <| \"user\"\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Functional-Concepts.md",
    "content": "## Functional Concepts\n\nArgo really wants to be used with patterns borrowed from functional programming\nsuch as `map` (`<^>`) and `apply` (`<*>`). We feel that these patterns greatly\nreduce the pain felt in trying to use JSON (an inherently loosely typed format)\nwith Swift (a strictly typed language). It also gives us a way to succinctly\nmaintain Argo's core concept, and short circuit the decoding process if any part\nof it fails.\n\nAdditionally, we feel that the use of operators for these functions greatly\nimproves the readability of the code we're suggesting. Using named functions\nwould lead to nested functions and a confusing number of parenthesis.\n\nIf you aren't familiar with how these functions work (or just aren't\ncomfortable with using operators), that's totally OK. It's possible to use the\nlibrary without using them, although it might be a little more painful.\n\nIf you're looking to learn more about these functions, we would recommend\nreading the following articles:\n\n- [Functional Swift for Dealing with Optional Values](http://robots.thoughtbot.com/functional-swift-for-dealing-with-optional-values)\n- [Railway Oriented Programming](http://fsharpforfunandprofit.com/posts/recipe-part2/)\n\nAnd check out this talk:\n\n- [How I Learned To Stop Worrying And Love The Functor](https://github.com/gfontenot/talks/tree/master/Functors)\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Ideology.md",
    "content": "## Ideology\n\nArgo's core concept is that in order to maintain type safety, you should only\nbe able to successfully decode an object if all parameters are satisfied\nproperly. So if you have a model that looks like this:\n\n```swift\nstruct User {\n  let id: Int\n  let name: String\n}\n```\n\nbut the JSON you receive from the server looks like this:\n\n```json\n{\n  \"user\": {\n    \"id\": \"this isn't a number\",\n    \"name\": \"Gob Bluth\"\n  }\n}\n```\n\nthen ideally, JSON parsing would fail, and you'd get an error state instead of\na `User` object. In Argo, if JSON parsing succeeds you'll receive the `User`\nobject and you can be sure that it is full and valid. If it fails, you will\ninstead be given the reason why the `User` couldn't be constructed.\n\nIf you're interested in learning more about the concepts and ideology that\nwent into building Argo, we recommend reading the series of articles that were\nwritten alongside its development:\n\n- [Efficient JSON in Swift with Functional Concepts and Generics](http://robots.thoughtbot.com/efficient-json-in-swift-with-functional-concepts-and-generics)\n- [Real World JSON Parsing with Swift](http://robots.thoughtbot.com/real-world-json-parsing-with-swift)\n- [Parsing Embedded JSON and Arrays in Swift](http://robots.thoughtbot.com/parsing-embedded-json-and-arrays-in-swift)\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/README.md",
    "content": "# Documentation #\n\nArgo allows you to easily decode loosely typed structures into strongly typed\nmodels. When paired with functional programming concepts, Argo becomes a\nbeautiful way to decode JSON from network responses into your application\nmodels. The following guides will teach you how to use Argo and how powerful it\ncan be.\n\n## High Level Concepts ##\n\n- [Overarching ideology](Ideology.md)\n- [Functional concepts](Functional-Concepts.md)\n\n## Basic Usage ##\n\n- [Decoding your first model](Basic-Usage.md)\n- [Relationships](Relationships.md)\n\n## Advanced Usage ##\n\n- [Decoding root keys](Decode-Root-Keys.md)\n- [Decoding Enums](Decode-Enums.md)\n- Understanding the Decode operators // TODO\n- Interacting with the `JSON` enum // TODO\n- Writing your own custom parser // TODO\n- More complex parsers // TODO\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/Documentation/Relationships.md",
    "content": "# Decoding Relationships\n\nIt's very common to have models that relate to other models. When all your\nmodels conform to `Decodable`, Argo makes it really easy to populate those\nrelationships. \"How does this work?\", you ask. Well, Argo is smart enough to\nknow it can decode anything that conforms to `Decodable` because internally,\nArgo is simply calling each type's `decode` function. That means that any type\nthat conforms to `Decodable` looks the same to Argo as a `String` or `Int`; in\nfact, Argo can only decode those Swift types because we've already implemented\n`Decodable` for them.\n\nLet's look at a `User`, `Post`, and `Comment` model and how they relate. First,\nour server is sending us the JSON for the `Post` model:\n\n```\n{\n  \"author\": {\n    \"id\": 6,\n    \"name\": \"Gob Bluth\"\n  },\n  \"text\": \"I've made a huge mistake.\"\n}\n```\n\nOur `Post` model could then be:\n\n```swift\nstruct Post {\n  let author: String\n  let text: String\n}\n```\n\nFor now, we only need the user's name and we can use the special embedded syntax\nto get it. Then our implementation of `Decodable` for `Post` looks\nlike this:\n\n```swift\nextension Post: Decodable {\n  static func decode(j: JSON) -> Decoded<Post> {\n    return curry(self.init)\n      <^> j <| [\"author\", \"name\"]\n      <*> j <| \"text\"\n  }\n}\n```\n\nGreat! Now we can decode JSON into `Post` models. However, let's be real, we\ncan't have posts without comments! Comments are like 90% of the fun on the\ninternet.\n\nMost likely the JSON will contain an embedded array of `Comment` models:\n\n```\n{\n  \"author\": {\n    \"id\": 53,\n    \"name\": \"Lindsay\"\n  },\n  \"text\": \"I have the afternoon free.\",\n  \"comments\": [\n    {\n      \"author\": {\n        \"id\": 1,\n        \"name\": \"Lucille\"\n      },\n      \"text\": \"Really? Did 'nothing' cancel?\"\n    }\n  ]\n}\n```\n\nSo then `Comment` will look like:\n\n```swift\nstruct Comment {\n  let author: String\n  let text: String\n}\n\nextension Comment: Decodable {\n  static func decode(j: JSON) -> Decoded<Comment> {\n    return curry(self.init)\n      <^> j <| [\"author\", \"name\"]\n      <*> j <| \"text\"\n  }\n}\n```\n\nNow, we can add an array of comments to our `Post` model:\n\n```swift\nstruct Post {\n  let author: String\n  let text: String\n  let comments: [Comment]\n}\n\nextension Post: Decodable {\n  static func decode(j: JSON) -> Decoded<Post> {\n    return curry(self.init)\n      <^> j <| [\"author\", \"name\"]\n      <*> j <| \"text\"\n      <*> j <|| \"comments\"\n  }\n}\n```\n\nWe added `comments` as a property on our `Post` model. Then we added a line to\ndecode the comments from the JSON. Notice how we use `<||` instead of `<|` with\n`comments` because it is an _Array_.\n\nStoring the name of the author with a post or comment isn't very flexible.\nWhat we really want to do is tie posts and comments to users. If we use the\n`User` struct from [Basic Usage]:\n\n[Basic Usage]: Basic-Usage.md\n\n```swift\nstruct User {\n  let id: Int\n  let name: String\n}\n\nextension User: Decodable {\n  static func decode(j: JSON) -> Decoded<User> {\n    return curry(User.init)\n      <^> j <| \"id\"\n      <*> j <| \"name\"\n  }\n}\n```\n\nWe can simply change the `author` property from `String` to `User` and point the\ndecoder directly at the author object. No joke! Take a look:\n\n```swift\nstruct Post {\n  let author: User\n  let text: String\n  let comments: [Comment]\n}\n\nextension Post: Decodable {\n  static func decode(j: JSON) -> Decoded<Post> {\n    return curry(self.init)\n      <^> j <| \"author\"\n      <*> j <| \"text\"\n      <*> j <|| \"comments\"\n  }\n}\n\nstruct Comment {\n  let author: User\n  let text: String\n}\n\nextension Comment: Decodable {\n  static func decode(j: JSON) -> Decoded<Comment> {\n    return curry(self.init)\n      <^> j <| \"author\"\n      <*> j <| \"text\"\n  }\n}\n```\n\nThat's it! Argo's use of Generics and the `Decodable` protocol means that\nsupporting custom types is straightforward, since that's internally the same way\nArgo decodes Swift's standard types.\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/ISSUE_TEMPLATE.md",
    "content": "_[Description of the issue you are experiencing]_\n\n### Error Messages\n\n_List all the error messages or warnings you are seeing, if any._\n\n### Sample JSON\n\n```\n{\n  \"key\": \"value\"\n}\n```\n\n### Models\n\n_All models involved, including their `Decodable` implementations._\n\n```\nstruct User {\n  // ...\n}\n\nextension User: Decodable {\n  // ...\n}\n```\n\n### Argo Version\n\n_example: Argo 3.0.0_\n\n### Dependency Manager\n\n_examples: Carthage, Cocoapods, git submodules, copied code, etc._\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/LICENSE",
    "content": "Copyright (c) 2014 thoughtbot, inc.\n\nMIT License\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/README.md",
    "content": "<img src=\"https://raw.githubusercontent.com/thoughtbot/Argo/gh-pages/Argo.png\" width=\"250\" />\n\n# Argo [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n\nArgo is a library that lets you extract models from JSON or similar structures in\na way that's concise, type-safe, and easy to extend. Using Argo, you won't need\nto write validation code to ensure that incoming data is of the right type, or\nto make sure required data fields aren't turning up empty. Argo uses Swift's\nexpressive type system to do that for you, and reports back explicit failure\nstates in case it doesn't find what you've told it to expect.\n\n_Argo_ is the Greek word for _swift_ and the name of the ship used by Jason, son\nof Aeson, of the Argonauts. Aeson is the JSON parsing library in Haskell that\ninspired Argo, much like Aeson inspired his son Jason.\n\nNOTE: For Swift 1.2 support, use the versions tagged 1.x.x. For Swift 1.1\nsupport, use the versions tagged 0.3.x. You can find those in the [releases].\n\n[releases]: https://github.com/thoughtbot/Argo/releases\n\n## Installation\n\n### [Carthage]\n\n[Carthage]: https://github.com/Carthage/Carthage\n\nAdd the following to your Cartfile:\n\n```\ngithub \"thoughtbot/Argo\"\n```\n\nThen run `carthage update`.\n\nFollow the current instructions in [Carthage's README][carthage-installation]\nfor up to date installation instructions.\n\n[carthage-installation]: https://github.com/Carthage/Carthage#adding-frameworks-to-an-application\n\n### [CocoaPods]\n\n[CocoaPods]: http://cocoapods.org\n\nAdd the following to your [Podfile](http://guides.cocoapods.org/using/the-podfile.html):\n\n```ruby\npod 'Argo'\n```\n\nYou will also need to make sure you're opting into using frameworks:\n\n```ruby\nuse_frameworks!\n```\n\nThen run `pod install` with CocoaPods 0.36 or newer.\n\n### Git Submodules\n\nI guess you could do it this way if that's your thing.\n\nAdd this repo as a submodule, and add the project file to your workspace. You\ncan then link against `Argo.framework` for your application target.\n\n## Usage tl;dr:\n\nPlease note: the example below requires an additional, external module named [Curry](https://github.com/thoughtbot/Curry) which lets us use the `curry` function to curry `User.init`.\n\n```swift\nimport Argo\nimport Curry\n\nstruct User {\n  let id: Int\n  let name: String\n  let email: String?\n  let role: Role\n  let companyName: String\n  let friends: [User]\n}\n\nextension User: Decodable {\n  static func decode(j: JSON) -> Decoded<User> {\n    return curry(User.init)\n      <^> j <| \"id\"\n      <*> j <| \"name\"\n      <*> j <|? \"email\" // Use ? for parsing optional values\n      <*> j <| \"role\" // Custom types that also conform to Decodable just work\n      <*> j <| [\"company\", \"name\"] // Parse nested objects\n      <*> j <|| \"friends\" // parse arrays of objects\n  }\n}\n\n// Wherever you receive JSON data:\n\nlet json: AnyObject? = try? NSJSONSerialization.JSONObjectWithData(data, options: [])\n\nif let j: AnyObject = json {\n  let user: User? = decode(j)\n}\n```\n\nFor more information, see the [Documentation](Documentation/)\n\n## Contributing\n\nSee the [CONTRIBUTING] document. Thank you, [contributors]!\n\n[CONTRIBUTING]: CONTRIBUTING.md\n[contributors]: https://github.com/thoughtbot/Argo/graphs/contributors\n\n## License\n\nArgo is Copyright (c) 2015 thoughtbot, inc. It is free software, and may be\nredistributed under the terms specified in the [LICENSE] file.\n\n[LICENSE]: /LICENSE\n\n## About\n\n![thoughtbot](https://thoughtbot.com/logo.png)\n\nArgo is maintained and funded by thoughtbot, inc. The names and logos for\nthoughtbot are trademarks of thoughtbot, inc.\n\nWe love open source software! See [our other projects][community] or look at\nour product [case studies] and [hire us][hire] to help build your iOS app.\n\n[community]: https://thoughtbot.com/community?utm_source=github\n[case studies]: https://thoughtbot.com/work?utm_source=github\n[hire]: https://thoughtbot.com/hire-us?utm_source=github\n\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/bin/archive",
    "content": "#!/usr/bin/env bash\n\ncarthage build --no-skip-current\ncarthage archive Argo\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/bin/setup",
    "content": "#!/usr/bin/env bash\n\nbrew install carthage 2> /dev/null\ncarthage bootstrap --use-submodules --no-build --no-use-binaries\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/bin/test",
    "content": "#!/usr/bin/env sh\n\nset -o pipefail\n\nxcrun xcodebuild \\\n  -workspace Argo.xcworkspace \\\n  -scheme Argo-Mac \\\n  test \\\n  | xcpretty --color\n\nxcrun xcodebuild \\\n  -workspace Argo.xcworkspace \\\n  -scheme Argo-iOS \\\n  -destination \"platform=iOS Simulator,name=iPhone 6\" \\\n  test \\\n  | xcpretty --color\n\nxcrun xcodebuild \\\n  -workspace Argo.xcworkspace \\\n  -scheme Argo-watchOS \\\n  -destination \"generic/platform=watchOS\" \\\n  CODE_SIGNING_REQUIRED=NO \\\n  CODE_SIGN_IDENTITY=\"\" \\\n  | xcpretty --color\n\nxcrun xcodebuild \\\n  -workspace Argo.xcworkspace \\\n  -scheme Argo-tvOS \\\n  -destination \"platform=tvOS Simulator,name=Apple TV 1080p\" \\\n  test \\\n  | xcpretty --color\n"
  },
  {
    "path": "Carthage/Checkouts/Argo/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n  environment:\n    XCODE_SCHEME: nonce\n    XCODE_WORKSPACE: nonce.xcworkspace\n\ndependencies:\n  override:\n    - git submodule update --init --recursive\n\ntest:\n  override:\n    - bin/test\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/.gitattributes",
    "content": "*.pbxproj merge=union\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/.gitignore",
    "content": "# OS X Finder\n.DS_Store\n\n# Xcode per-user config\n*.mode1\n*.mode1v3\n*.mode2v3\n*.perspective\n*.perspectivev3\n*.pbxuser\nxcuserdata\n*.xccheckout\n\n# Build products\nbuild/\n*.o\n*.LinkFileList\n*.hmap\n\n# Automatic backup files\n*~.nib/\n*.swp\n*~\n*.dat\n*.dep\n\n# Cocoapods\nPods\n\n# Carthage\nCarthage/Build\n\n# Swift Package Manager\n.build\nPackages\n\n# AppCode specific files\n.idea/\n*.iml\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/CONTRIBUTING.md",
    "content": "We love pull requests from everyone. Follow the thoughtbot [code of conduct]\nwhile contributing.\n\n[code of conduct]: https://thoughtbot.com/open-source-code-of-conduct\n\n## Contributing\n\n1. Fork the repo.\n2. Push to your fork and submit a pull request.\n\nAt this point you're waiting on us. We like to at least comment on, if not\naccept, pull requests within three business days (and, typically, one business\nday). We may suggest some changes or improvements or alternatives.\n\nSome things that will increase the chance that your pull request is accepted,\n\n* Update the documentation, the surrounding one, examples elsewhere, guides,\n  whatever is affected by your contribution\n* Follow the existing style of the project\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.podspec",
    "content": "Pod::Spec.new do |spec|\n  spec.name = 'Curry'\n  spec.version = '2.3.3'\n  spec.summary = 'Function Currying for Swift'\n  spec.homepage = 'https://github.com/thoughtbot/curry'\n  spec.license = { :type => 'MIT', :file => 'LICENSE' }\n  spec.author = {\n    'Gordon Fontenot' => 'gordon@thoughtbot.com',\n    'thoughtbot' => nil,\n  }\n  spec.social_media_url = 'http://twitter.com/thoughtbot'\n  spec.source = { :git => 'https://github.com/thoughtbot/curry.git', :tag => \"v#{spec.version}\" }\n  spec.source_files = 'Source/**/*.{h,swift}'\n  spec.requires_arc = true\n  spec.ios.deployment_target = '8.0'\n  spec.osx.deployment_target = '10.9'\n  spec.watchos.deployment_target = '2.0'\n  spec.tvos.deployment_target = '9.0'\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t804D01FB1BA3687E0005BBC4 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\t804D01FC1BA368820005BBC4 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t80E0590F1BA9FAC10077CBA7 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\t80E059101BA9FAC50077CBA7 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF88630761B4EF9B200F53969 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF88630961B4EFA2700F53969 /* Curry.h in Headers */ = {isa = PBXBuildFile; fileRef = F88630741B4EF9B200F53969 /* Curry.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF886309A1B4EFD7600F53969 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n\t\tF886309B1B4EFD7600F53969 /* Curry.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88630991B4EFD7600F53969 /* Curry.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t804D01F31BA3684C0005BBC4 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t80E059071BA9FA7F0077CBA7 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630561B4EF96200F53969 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630741B4EF9B200F53969 /* Curry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Curry.h; sourceTree = \"<group>\"; };\n\t\tF88630751B4EF9B200F53969 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tF886307D1B4EF9F800F53969 /* Curry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Curry.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF88630991B4EFD7600F53969 /* Curry.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Curry.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t804D01EF1BA3684C0005BBC4 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059031BA9FA7F0077CBA7 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630521B4EF96200F53969 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630791B4EF9F800F53969 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tF886304C1B4EF96200F53969 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630731B4EF9B200F53969 /* Resources */,\n\t\t\t\tF88630721B4EF9B200F53969 /* Source */,\n\t\t\t\tF88630571B4EF96200F53969 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630571B4EF96200F53969 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630561B4EF96200F53969 /* Curry.framework */,\n\t\t\t\tF886307D1B4EF9F800F53969 /* Curry.framework */,\n\t\t\t\t804D01F31BA3684C0005BBC4 /* Curry.framework */,\n\t\t\t\t80E059071BA9FA7F0077CBA7 /* Curry.framework */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630721B4EF9B200F53969 /* Source */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630991B4EFD7600F53969 /* Curry.swift */,\n\t\t\t);\n\t\t\tpath = Source;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF88630731B4EF9B200F53969 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF88630741B4EF9B200F53969 /* Curry.h */,\n\t\t\t\tF88630751B4EF9B200F53969 /* Info.plist */,\n\t\t\t);\n\t\t\tpath = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t804D01F01BA3684C0005BBC4 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t804D01FC1BA368820005BBC4 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059041BA9FA7F0077CBA7 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t80E059101BA9FAC50077CBA7 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630531B4EF96200F53969 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF88630761B4EF9B200F53969 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF886307A1B4EF9F800F53969 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF88630961B4EFA2700F53969 /* Curry.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t804D01F21BA3684C0005BBC4 /* Curry-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 804D01FA1BA3684C0005BBC4 /* Build configuration list for PBXNativeTarget \"Curry-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t804D01EE1BA3684C0005BBC4 /* Sources */,\n\t\t\t\t804D01EF1BA3684C0005BBC4 /* Frameworks */,\n\t\t\t\t804D01F01BA3684C0005BBC4 /* Headers */,\n\t\t\t\t804D01F11BA3684C0005BBC4 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-watchOS\";\n\t\t\tproductName = \"Curry-watchOS\";\n\t\t\tproductReference = 804D01F31BA3684C0005BBC4 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t80E059061BA9FA7F0077CBA7 /* Curry-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 80E0590E1BA9FA7F0077CBA7 /* Build configuration list for PBXNativeTarget \"Curry-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t80E059021BA9FA7F0077CBA7 /* Sources */,\n\t\t\t\t80E059031BA9FA7F0077CBA7 /* Frameworks */,\n\t\t\t\t80E059041BA9FA7F0077CBA7 /* Headers */,\n\t\t\t\t80E059051BA9FA7F0077CBA7 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-tvOS\";\n\t\t\tproductName = \"Curry-tvOS\";\n\t\t\tproductReference = 80E059071BA9FA7F0077CBA7 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF88630551B4EF96200F53969 /* Curry-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F886306C1B4EF96200F53969 /* Build configuration list for PBXNativeTarget \"Curry-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF88630511B4EF96200F53969 /* Sources */,\n\t\t\t\tF88630521B4EF96200F53969 /* Frameworks */,\n\t\t\t\tF88630531B4EF96200F53969 /* Headers */,\n\t\t\t\tF88630541B4EF96200F53969 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-iOS\";\n\t\t\tproductName = Curry;\n\t\t\tproductReference = F88630561B4EF96200F53969 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF886307C1B4EF9F800F53969 /* Curry-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F88630901B4EF9F800F53969 /* Build configuration list for PBXNativeTarget \"Curry-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF88630781B4EF9F800F53969 /* Sources */,\n\t\t\t\tF88630791B4EF9F800F53969 /* Frameworks */,\n\t\t\t\tF886307A1B4EF9F800F53969 /* Headers */,\n\t\t\t\tF886307B1B4EF9F800F53969 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Curry-Mac\";\n\t\t\tproductName = \"Curry-Mac\";\n\t\t\tproductReference = F886307D1B4EF9F800F53969 /* Curry.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF886304D1B4EF96200F53969 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = thoughtbot;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t804D01F21BA3684C0005BBC4 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t80E059061BA9FA7F0077CBA7 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tF88630551B4EF96200F53969 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tF886307C1B4EF9F800F53969 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = F88630501B4EF96200F53969 /* Build configuration list for PBXProject \"Curry\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = F886304C1B4EF96200F53969;\n\t\t\tproductRefGroup = F88630571B4EF96200F53969 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF88630551B4EF96200F53969 /* Curry-iOS */,\n\t\t\t\tF886307C1B4EF9F800F53969 /* Curry-Mac */,\n\t\t\t\t804D01F21BA3684C0005BBC4 /* Curry-watchOS */,\n\t\t\t\t80E059061BA9FA7F0077CBA7 /* Curry-tvOS */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t804D01F11BA3684C0005BBC4 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059051BA9FA7F0077CBA7 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630541B4EF96200F53969 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF886307B1B4EF9F800F53969 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t804D01EE1BA3684C0005BBC4 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t804D01FB1BA3687E0005BBC4 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t80E059021BA9FA7F0077CBA7 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t80E0590F1BA9FAC10077CBA7 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630511B4EF96200F53969 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF886309A1B4EFD7600F53969 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF88630781B4EF9F800F53969 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF886309B1B4EFD7600F53969 /* Curry.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\t804D01F81BA3684C0005BBC4 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t804D01F91BA3684C0005BBC4 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = 4;\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t80E0590C1BA9FA7F0077CBA7 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t80E0590D1BA9FA7F0077CBA7 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF886306A1B4EF96200F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF886306B1B4EF96200F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF886306D1B4EF96200F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF886306E1B4EF96200F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF88630911B4EF9F800F53969 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF88630921B4EF9F800F53969 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Resources/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.thoughtbot.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = Curry;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t804D01FA1BA3684C0005BBC4 /* Build configuration list for PBXNativeTarget \"Curry-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t804D01F81BA3684C0005BBC4 /* Debug */,\n\t\t\t\t804D01F91BA3684C0005BBC4 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t80E0590E1BA9FA7F0077CBA7 /* Build configuration list for PBXNativeTarget \"Curry-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t80E0590C1BA9FA7F0077CBA7 /* Debug */,\n\t\t\t\t80E0590D1BA9FA7F0077CBA7 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF88630501B4EF96200F53969 /* Build configuration list for PBXProject \"Curry\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF886306A1B4EF96200F53969 /* Debug */,\n\t\t\t\tF886306B1B4EF96200F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF886306C1B4EF96200F53969 /* Build configuration list for PBXNativeTarget \"Curry-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF886306D1B4EF96200F53969 /* Debug */,\n\t\t\t\tF886306E1B4EF96200F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF88630901B4EF9F800F53969 /* Build configuration list for PBXNativeTarget \"Curry-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF88630911B4EF9F800F53969 /* Debug */,\n\t\t\t\tF88630921B4EF9F800F53969 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F886304D1B4EF96200F53969 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Curry.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-Mac\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-Mac\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F886307C1B4EF9F800F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-Mac\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-iOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-iOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F88630551B4EF96200F53969\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-iOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-tvOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-tvOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"80E059061BA9FA7F0077CBA7\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-tvOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Curry.xcodeproj/xcshareddata/xcschemes/Curry-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n               BuildableName = \"Curry.framework\"\n               BlueprintName = \"Curry-watchOS\"\n               ReferencedContainer = \"container:Curry.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-watchOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"804D01F21BA3684C0005BBC4\"\n            BuildableName = \"Curry.framework\"\n            BlueprintName = \"Curry-watchOS\"\n            ReferencedContainer = \"container:Curry.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/LICENSE",
    "content": "Copyright (c) 2014 thoughtbot, inc.\n\nMIT License\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n  name: \"Curry\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/README.md",
    "content": "[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n# Curry #\n\nSwift implementations for function currying.\n\nFor more info on function currying in Swift, please refer to [this blog\npost][tb-curry]\n\n[tb-curry]: https://robots.thoughtbot.com/introduction-to-function-currying-in-swift\n\n## Installation ##\n\n### [Carthage] ###\n\n[Carthage]: https://github.com/Carthage/Carthage\n\n```\ngithub \"thoughtbot/Curry\"\n```\n\nThen run `carthage update`.\n\nFollow the current instructions in [Carthage's README][carthage-installation]\nfor up to date installation instructions.\n\n[carthage-installation]: https://github.com/Carthage/Carthage#adding-frameworks-to-an-application\n\n### [CocoaPods] ###\n\n[CocoaPods]: http://cocoapods.org\n\nAdd the following to your [Podfile](http://guides.cocoapods.org/using/the-podfile.html):\n\n```ruby\npod 'Curry'\n```\n\nYou will also need to make sure you're opting into using frameworks:\n\n```ruby\nuse_frameworks!\n```\n\nThen run `pod install` with CocoaPods 0.36 or newer.\n\nContributing\n------------\n\nSee the [CONTRIBUTING] document. Thank you, [contributors]!\n\n[CONTRIBUTING]: CONTRIBUTING.md\n[contributors]: https://github.com/thoughtbot/Curry/graphs/contributors\n\nLicense\n-------\n\nCurry is Copyright (c) 2015 thoughtbot, inc. It is free software, and may be\nredistributed under the terms specified in the [LICENSE] file.\n\n[LICENSE]: /LICENSE\n\nAbout\n-----\n\n![thoughtbot](https://thoughtbot.com/logo.png)\n\nCurry is maintained and funded by thoughtbot, inc. The names and logos for\nthoughtbot are trademarks of thoughtbot, inc.\n\nWe love open source software! See [our other projects][community] or look at\nour product [case studies] and [hire us][hire] to help build your iOS app.\n\n[community]: https://thoughtbot.com/community?utm_source=github\n[case studies]: https://thoughtbot.com/ios?utm_source=github\n[hire]: https://thoughtbot.com/hire-us?utm_source=github\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Resources/Curry.h",
    "content": "//\n//  Curry.h\n//  Curry\n//\n//  Created by Gordon Fontenot on 7/9/15.\n//  Copyright (c) 2015 thoughtbot. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n//! Project version number for Curry.\nFOUNDATION_EXPORT double CurryVersionNumber;\n\n//! Project version string for Curry.\nFOUNDATION_EXPORT const unsigned char CurryVersionString[];\n\n// In this header, you should import all the public headers of your framework using statements like #import <Curry/PublicHeader.h>\n\n\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Resources/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.3.3</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/Source/Curry.swift",
    "content": "public func curry<A, B>(_ function: (A) -> B) -> (A) -> B {\n    return { (`a`: A) -> B in function(`a`) }\n}\n\npublic func curry<A, B, C>(_ function: (A, B) -> C) -> (A) -> (B) -> C {\n    return { (`a`: A) -> (B) -> C in { (`b`: B) -> C in function(`a`, `b`) } }\n}\n\npublic func curry<A, B, C, D>(_ function: (A, B, C) -> D) -> (A) -> (B) -> (C) -> D {\n    return { (`a`: A) -> (B) -> (C) -> D in { (`b`: B) -> (C) -> D in { (`c`: C) -> D in function(`a`, `b`, `c`) } } }\n}\n\npublic func curry<A, B, C, D, E>(_ function: (A, B, C, D) -> E) -> (A) -> (B) -> (C) -> (D) -> E {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> E in { (`b`: B) -> (C) -> (D) -> E in { (`c`: C) -> (D) -> E in { (`d`: D) -> E in function(`a`, `b`, `c`, `d`) } } } }\n}\n\npublic func curry<A, B, C, D, E, F>(_ function: (A, B, C, D, E) -> F) -> (A) -> (B) -> (C) -> (D) -> (E) -> F {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> F in { (`b`: B) -> (C) -> (D) -> (E) -> F in { (`c`: C) -> (D) -> (E) -> F in { (`d`: D) -> (E) -> F in { (`e`: E) -> F in function(`a`, `b`, `c`, `d`, `e`) } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G>(_ function: (A, B, C, D, E, F) -> G) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> G {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> G in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> G in { (`c`: C) -> (D) -> (E) -> (F) -> G in { (`d`: D) -> (E) -> (F) -> G in { (`e`: E) -> (F) -> G in { (`f`: F) -> G in function(`a`, `b`, `c`, `d`, `e`, `f`) } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H>(_ function: (A, B, C, D, E, F, G) -> H) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> H in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> H in { (`d`: D) -> (E) -> (F) -> (G) -> H in { (`e`: E) -> (F) -> (G) -> H in { (`f`: F) -> (G) -> H in { (`g`: G) -> H in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`) } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I>(_ function: (A, B, C, D, E, F, G, H) -> I) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> I in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> I in { (`e`: E) -> (F) -> (G) -> (H) -> I in { (`f`: F) -> (G) -> (H) -> I in { (`g`: G) -> (H) -> I in { (`h`: H) -> I in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`) } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J>(_ function: (A, B, C, D, E, F, G, H, I) -> J) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> J in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> J in { (`f`: F) -> (G) -> (H) -> (I) -> J in { (`g`: G) -> (H) -> (I) -> J in { (`h`: H) -> (I) -> J in { (`i`: I) -> J in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`) } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K>(_ function: (A, B, C, D, E, F, G, H, I, J) -> K) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> K in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> K in { (`g`: G) -> (H) -> (I) -> (J) -> K in { (`h`: H) -> (I) -> (J) -> K in { (`i`: I) -> (J) -> K in { (`j`: J) -> K in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`) } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L>(_ function: (A, B, C, D, E, F, G, H, I, J, K) -> L) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> L in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> L in { (`h`: H) -> (I) -> (J) -> (K) -> L in { (`i`: I) -> (J) -> (K) -> L in { (`j`: J) -> (K) -> L in { (`k`: K) -> L in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`) } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L) -> M) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> M in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> M in { (`i`: I) -> (J) -> (K) -> (L) -> M in { (`j`: J) -> (K) -> (L) -> M in { (`k`: K) -> (L) -> M in { (`l`: L) -> M in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`) } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M) -> N) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> N in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> N in { (`j`: J) -> (K) -> (L) -> (M) -> N in { (`k`: K) -> (L) -> (M) -> N in { (`l`: L) -> (M) -> N in { (`m`: M) -> N in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`) } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> O) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> O in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> O in { (`k`: K) -> (L) -> (M) -> (N) -> O in { (`l`: L) -> (M) -> (N) -> O in { (`m`: M) -> (N) -> O in { (`n`: N) -> O in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`) } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) -> P) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> P in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> P in { (`l`: L) -> (M) -> (N) -> (O) -> P in { (`m`: M) -> (N) -> (O) -> P in { (`n`: N) -> (O) -> P in { (`o`: O) -> P in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`) } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) -> Q) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> Q in { (`m`: M) -> (N) -> (O) -> (P) -> Q in { (`n`: N) -> (O) -> (P) -> Q in { (`o`: O) -> (P) -> Q in { (`p`: P) -> Q in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`) } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> R) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> R in { (`n`: N) -> (O) -> (P) -> (Q) -> R in { (`o`: O) -> (P) -> (Q) -> R in { (`p`: P) -> (Q) -> R in { (`q`: Q) -> R in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`) } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) -> S) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> S in { (`o`: O) -> (P) -> (Q) -> (R) -> S in { (`p`: P) -> (Q) -> (R) -> S in { (`q`: Q) -> (R) -> S in { (`r`: R) -> S in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`) } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) -> T) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> T in { (`p`: P) -> (Q) -> (R) -> (S) -> T in { (`q`: Q) -> (R) -> (S) -> T in { (`r`: R) -> (S) -> T in { (`s`: S) -> T in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`) } } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) -> U) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`p`: P) -> (Q) -> (R) -> (S) -> (T) -> U in { (`q`: Q) -> (R) -> (S) -> (T) -> U in { (`r`: R) -> (S) -> (T) -> U in { (`s`: S) -> (T) -> U in { (`t`: T) -> U in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`, `t`) } } } } } } } } } } } } } } } } } } } }\n}\n\npublic func curry<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V>(_ function: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) -> V) -> (A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V {\n    return { (`a`: A) -> (B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`b`: B) -> (C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`c`: C) -> (D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`d`: D) -> (E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`e`: E) -> (F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`f`: F) -> (G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`g`: G) -> (H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`h`: H) -> (I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`i`: I) -> (J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`j`: J) -> (K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`k`: K) -> (L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`l`: L) -> (M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`m`: M) -> (N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`n`: N) -> (O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`o`: O) -> (P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`p`: P) -> (Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`q`: Q) -> (R) -> (S) -> (T) -> (U) -> V in { (`r`: R) -> (S) -> (T) -> (U) -> V in { (`s`: S) -> (T) -> (U) -> V in { (`t`: T) -> (U) -> V in { (`u`: U) -> V in function(`a`, `b`, `c`, `d`, `e`, `f`, `g`, `h`, `i`, `j`, `k`, `l`, `m`, `n`, `o`, `p`, `q`, `r`, `s`, `t`, `u`) } } } } } } } } } } } } } } } } } } } } }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Curry/bin/generate",
    "content": "#!/usr/bin/env xcrun swift\n\n// Generates a Swift file with implementation of function currying for a ridicolously high number of arguments\n\nimport Foundation\n\nlet generics = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\", \"J\", \"K\", \"L\", \"M\", \"N\", \"O\", \"P\", \"Q\", \"R\", \"S\", \"T\", \"U\", \"V\", \"W\", \"X\", \"Y\", \"Z\"]\n\nextension Array {\n  subscript(safe index: Int) -> Element? {\n    return indices ~= index ? self[index] : .none\n  }\n}\n\nfunc genericType(for position: Int) -> String {\n  let max = generics.count\n  switch position {\n  case _ where position < max: return generics[position % max]\n  default: return generics[position / max - 1] + generics[position % max]\n  }\n}\n\nfunc commaConcat(_ xs: [String]) -> String {\n  return xs.joined(separator: \", \")\n}\n\nfunc singleParameterFunctions(_ xs: [String]) -> String {\n  guard let first = xs.first else { fatalError(\"Attempted to nest functions with no arguments\") }\n  guard xs.last != first else { return first }\n  let remainder = Array(xs.dropFirst())\n  return \"(\\(first)) -> \\(singleParameterFunctions(remainder))\"\n}\n\nfunc curryDefinitionGenerator(arguments: Int) -> String {\n  let genericParameters = (0..<arguments).map(genericType) // [\"A\", \"B\", \"C\", \"D\"]\n  let genericTypeDefinition = \"<\\(commaConcat(genericParameters))>\" // \"<A, B, C, D>\"\n\n  let inputParameters = Array(genericParameters[0..<arguments - 1]) // [\"A\", \"B\", \"C\"]\n  let lowerFunctionArguments = inputParameters.map { \"`\\($0.lowercased())`\" } // [\"`a`\", \"`b`\", \"`c`\"]\n  let returnType = genericParameters.last! // \"D\"\n\n  let functionArguments = \"(\\(commaConcat(inputParameters)))\" // \"(A, B, C)\"\n  let returnFunction = singleParameterFunctions(genericParameters) // \" (A) -> (B) -> (C) -> D\"\n  let innerFunctionArguments = commaConcat(lowerFunctionArguments) // \"`a`, `b`, `c`\"\n\n  let functionDefinition = \"function(\\(innerFunctionArguments))\" // function(`a`, `b`, `c`)\n\n  let implementation = lowerFunctionArguments.enumerated().reversed().reduce(functionDefinition) { accum, tuple in\n    let (index, argument) = tuple\n    let functionParameters = Array(genericParameters.suffix(from: index + 1))\n    return \"{ (\\(argument): \\(inputParameters[index])) -> \\(singleParameterFunctions(functionParameters)) in \\(accum) }\"\n  } // \"{ (`a`: A) -> (B) -> (C) -> D in { (`b`: B) -> (C) -> D in { (`c`: C) -> D in function(`a`, `b`, `c`) } } }\"\n\n  let curry = [\n    \"public func curry\\(genericTypeDefinition)(_ function: \\(functionArguments) -> \\(returnType)) -> \\(returnFunction) {\",\n    \"    return \\(implementation)\",\n    \"}\"\n  ]\n\n  return curry.joined(separator: \"\\n\")\n}\n\nprint(\"Generating 💬\")\n\nlet input = Process.arguments[safe: 1] ?? \"20\"\nlet limit = Int(input)!\n\nlet start = 2\nlet curries = (start...limit+1).map { curryDefinitionGenerator(arguments: $0) }\n\nlet output = curries.joined(separator: \"\\n\\n\") + \"\\n\"\n\nlet outputPath = \"Source/Curry.swift\"\nlet currentPath = NSURL(fileURLWithPath: FileManager.default().currentDirectoryPath)\nlet currySwiftPath = currentPath.appendingPathComponent(outputPath)!\n\ndo {\n  try output.write(to: currySwiftPath, atomically: true, encoding: String.Encoding.utf8)\n} catch let e as NSError {\n  print(\"An error occurred while saving the generated functions. Error: \\(e)\")\n}\n\nprint(\"Done, curry functions files written at \\(outputPath) 👍\")\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/.gitignore",
    "content": "# Xcode\n.DS_Store\nbuild/\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata\nprofile\n*.moved-aside\nDerivedData\n.idea/"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/DZNEmptyDataSet.podspec",
    "content": "@version = \"1.8\"\n\nPod::Spec.new do |s|\n  s.name          = \"DZNEmptyDataSet\"\n  s.version       = @version\n  s.summary       = \"A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\"\n  s.description   = \"It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed.\"\n  s.homepage      = \"https://github.com/dzenbot/DZNEmptyDataSet\"\n  s.license       = { :type => 'MIT', :file => 'LICENSE' }\n  s.author        = { \"dzenbot\" => \"iromero@dzen.cl\" }\n  s.platform      = :ios, '6.0'\n  s.source        = { :git => \"https://github.com/dzenbot/DZNEmptyDataSet.git\", :tag => \"v#{s.version}\" }\n  s.source_files  = 'Classes', 'Source/**/*.{h,m}'\n  s.requires_arc  = true\n  s.framework     = \"UIKit\"\nend\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/AppDelegate.h",
    "content": "//\n//  AppDelegate.h\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface AppDelegate : UIResponder <UIApplicationDelegate>\n\n@property (strong, nonatomic) UIWindow *window;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/AppDelegate.m",
    "content": "//\n//  AppDelegate.m\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"AppDelegate.h\"\n#import \"MainViewController.h\"\n\n@implementation AppDelegate\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n    self.window.backgroundColor = [UIColor whiteColor];    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Application.h",
    "content": "//\n//  Application.h\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_ENUM(NSUInteger, ApplicationType) {\n    \n    ApplicationTypeUndefined = 0,\n    \n    ApplicationType500px = 1,\n    ApplicationTypeAirbnb,\n    ApplicationTypeAppstore,\n    ApplicationTypeCamera,\n    ApplicationTypeDropbox,\n    ApplicationTypeFacebook,\n    ApplicationTypeFancy,\n    ApplicationTypeFoursquare,\n    ApplicationTypeiCloud,\n    ApplicationTypeInstagram,\n    ApplicationTypeiTunesConnect,\n    ApplicationTypeKickstarter,\n    ApplicationTypePath,\n    ApplicationTypePinterest,\n    ApplicationTypePhotos,\n    ApplicationTypePodcasts,\n    ApplicationTypeRemote,\n    ApplicationTypeSafari,\n    ApplicationTypeSkype,\n    ApplicationTypeSlack,\n    ApplicationTypeTumblr,\n    ApplicationTypeTwitter,\n    ApplicationTypeVideos,\n    ApplicationTypeVesper,\n    ApplicationTypeVine,\n    ApplicationTypeWhatsapp,\n    ApplicationTypeWWDC,\n    \n    ApplicationCount // Used for count (27)\n};\n\n@interface Application : NSObject\n@property (nonatomic, strong) NSString *displayName;\n@property (nonatomic, strong) NSString *developerName;\n@property (nonatomic, strong) NSString *identifier;\n@property (nonatomic, strong) NSString *iconName;\n@property (nonatomic) ApplicationType type;\n\n- (instancetype)initWithDictionary:(NSDictionary *)dict;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Application.m",
    "content": "//\n//  Application.m\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"Application.h\"\n\n@implementation Application\n\n- (instancetype)initWithDictionary:(NSDictionary *)dict\n{\n    if (!dict) {\n        return nil;\n    }\n    \n    self = [super init];\n    if (self) {\n        self.displayName = [dict objectForKey:@\"display_name\"];\n        self.developerName = [dict objectForKey:@\"developer_name\"];\n        self.identifier = [dict objectForKey:@\"identifier\"];\n    }\n    return self;\n}\n\n- (void)setDisplayName:(NSString *)displayName\n{\n    _displayName = displayName;\n    \n    self.iconName = [[[NSString stringWithFormat:@\"icon_%@\", self.displayName] lowercaseString] stringByReplacingOccurrencesOfString:@\" \" withString:@\"_\"];\n    \n    self.type = applicationTypeFromString(self.displayName) + 1;\n}\n\nApplicationType applicationTypeFromString(NSString *string)\n{\n    NSArray *arr = @[\n                     @\"500px\",\n                     @\"Airbnb\",\n                     @\"AppStore\",\n                     @\"Camera\",\n                     @\"Dropbox\",\n                     @\"Facebook\",\n                     @\"Fancy\",\n                     @\"Foursquare\",\n                     @\"iCloud\",\n                     @\"Instagram\",\n                     @\"iTunes Connect\",\n                     @\"Kickstarter\",\n                     @\"Path\",\n                     @\"Pinterest\",\n                     @\"Photos\",\n                     @\"Podcasts\",\n                     @\"Remote\",\n                     @\"Safari\",\n                     @\"Skype\",\n                     @\"Slack\",\n                     @\"Tumblr\",\n                     @\"Twitter\",\n                     @\"Videos\",\n                     @\"Vesper\",\n                     @\"Vine\",\n                     @\"WhatsApp\",\n                     @\"WWDC\"\n                     ];\n    return (ApplicationType)[arr indexOfObject:string];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Applications-Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleDisplayName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIcons</key>\n\t<dict/>\n\t<key>CFBundleIcons~ipad</key>\n\t<dict/>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1.0</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UIAppFonts</key>\n\t<array>\n\t\t<string>IdealSans-Book-Pro.otf</string>\n\t\t<string>Lato-Regular.ttf</string>\n\t</array>\n\t<key>UIMainStoryboardFile</key>\n\t<string>Storyboard</string>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n\t<key>UIViewControllerBasedStatusBarAppearance</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Applications-Prefix.pch",
    "content": "//\n//  Prefix header\n//\n//  The contents of this file are implicitly included at the beginning of every source file.\n//\n\n#import <Availability.h>\n\n#ifndef __IPHONE_5_0\n#warning \"This project uses features only available in iOS SDK 5.0 and later.\"\n#endif\n\n#ifdef __OBJC__\n    #import <UIKit/UIKit.h>\n    #import <Foundation/Foundation.h>\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/DetailViewController.h",
    "content": "//\n//  DetailViewController.h\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import \"Application.h\"\n\n@interface DetailViewController : UITableViewController\n\n@property (nonatomic, weak) NSArray *applications;\n@property (nonatomic) BOOL allowShuffling;\n\n- (instancetype)initWithApplication:(Application *)app;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/DetailViewController.m",
    "content": "//\n//  DetailViewController.m\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"DetailViewController.h\"\n#import \"UIColor+Hexadecimal.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface DetailViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@property (nonatomic, strong) Application *application;\n@property (nonatomic, getter=isLoading) BOOL loading;\n@end\n\n@implementation DetailViewController\n\n- (instancetype)initWithApplication:(Application *)application\n{\n    self = [super initWithStyle:UITableViewStylePlain];\n    if (self) {\n        self.application = application;\n        self.title = application.displayName;\n    }\n    return self;\n}\n\n#pragma mark - View lifecycle\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.edgesForExtendedLayout = UIRectEdgeNone;\n    \n    self.tableView.emptyDataSetSource = self;\n    self.tableView.emptyDataSetDelegate = self;\n    \n    [self configureHeaderAndFooter];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    [self configureNavigationBar];\n}\n\n\n#pragma mark - Configuration and Event Methods\n\n- (void)configureNavigationBar\n{\n    UIColor *barColor = nil;\n    UIColor *tintColor = nil;\n    UIStatusBarStyle barstyle = UIStatusBarStyleDefault;\n    \n    self.navigationController.navigationBar.titleTextAttributes = nil;\n\n    switch (self.application.type) {\n        case ApplicationType500px:\n        {\n            barColor = [UIColor colorWithHex:@\"242424\"];\n            tintColor = [UIColor colorWithHex:@\"d7d7d7\"];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeAirbnb:\n        {\n            barColor = [UIColor colorWithHex:@\"f8f8f8\"];\n            tintColor = [UIColor colorWithHex:@\"08aeff\"];\n            break;\n        }\n        case ApplicationTypeCamera:\n        {\n            barColor = [UIColor colorWithHex:@\"595959\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: tintColor};\n            break;\n        }\n        case ApplicationTypeDropbox:\n        {\n            barColor = [UIColor whiteColor];\n            tintColor = [UIColor colorWithHex:@\"007ee5\"];\n            break;\n        }\n        case ApplicationTypeFacebook:\n        {\n            barColor = [UIColor colorWithHex:@\"506da8\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeFancy:\n        {\n            barColor = [UIColor colorWithHex:@\"353b49\"];\n            tintColor = [UIColor colorWithHex:@\"c4c7cb\"];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeFoursquare:\n        {\n            barColor = [UIColor colorWithHex:@\"00aeef\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeInstagram:\n        {\n            barColor = [UIColor colorWithHex:@\"2e5e86\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeKickstarter:\n        {\n            barColor = [UIColor colorWithHex:@\"f7f8f8\"];\n            tintColor = [UIColor colorWithHex:@\"2bde73\"];\n            break;\n        }\n        case ApplicationTypePath:\n        {\n            barColor = [UIColor colorWithHex:@\"544f49\"];\n            tintColor = [UIColor colorWithHex:@\"fffff2\"];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypePinterest:\n        {\n            barColor = [UIColor colorWithHex:@\"f4f4f4\"];\n            tintColor = [UIColor colorWithHex:@\"cb2027\"];\n            break;\n        }\n        case ApplicationTypeSlack:\n        {\n            barColor = [UIColor colorWithHex:@\"f4f5f6\"];\n            tintColor = [UIColor colorWithHex:@\"3eba92\"];\n            break;\n        }\n        case ApplicationTypeSkype:\n        {\n            barColor = [UIColor colorWithHex:@\"00aff0\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeTumblr:\n        {\n            barColor = [UIColor colorWithHex:@\"2e3e53\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeTwitter:\n        {\n            barColor = [UIColor colorWithHex:@\"58aef0\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeVesper:\n        {\n            barColor = [UIColor colorWithHex:@\"5e7d9a\"];\n            tintColor = [UIColor colorWithHex:@\"f8f8f8\"];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeVideos:\n        {\n            barColor = [UIColor colorWithHex:@\"4a4b4d\"];\n            tintColor = [UIColor blackColor];\n            break;\n        }\n        case ApplicationTypeVine:\n        {\n            barColor = [UIColor colorWithHex:@\"00bf8f\"];\n            tintColor = [UIColor whiteColor];\n            barstyle = UIStatusBarStyleLightContent;\n            break;\n        }\n        case ApplicationTypeWWDC:\n        {\n            tintColor = [UIColor colorWithHex:@\"fc6246\"];\n            break;\n        }\n        default:\n            barColor = [UIColor colorWithHex:@\"f8f8f8\"];\n            tintColor = [UIApplication sharedApplication].keyWindow.tintColor;\n            break;\n    }\n    \n    UIImage *logo = [UIImage imageNamed:[NSString stringWithFormat:@\"logo_%@\", [self.application.displayName lowercaseString]]];\n    if (logo) {\n        self.navigationItem.titleView = [[UIImageView alloc] initWithImage:logo];\n    }\n    else {\n        self.navigationItem.titleView = nil;\n        self.navigationItem.title = self.application.displayName;\n    }\n    \n    self.navigationController.navigationBar.barTintColor = barColor;\n    self.navigationController.navigationBar.tintColor = tintColor;\n    \n    [[UIApplication sharedApplication] setStatusBarStyle:barstyle animated:YES];\n}\n\n- (void)configureHeaderAndFooter\n{\n    NSString *imageName = nil;\n    \n    if (self.application.type == ApplicationTypePinterest) {\n        imageName = @\"header_pinterest\";\n    }\n    if (self.application.type == ApplicationTypePodcasts) {\n        imageName = @\"header_podcasts\";\n    }\n    \n    if (imageName) {\n        UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:imageName]];\n        imageView.userInteractionEnabled = YES;\n        \n        UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapHeaderView:)];\n        [imageView addGestureRecognizer:tapGesture];\n        \n        self.tableView.tableHeaderView = imageView;\n    }\n    else {\n        self.tableView.tableHeaderView = [UIView new];\n    }\n    \n    self.tableView.tableFooterView = [UIView new];\n}\n\n- (void)setAllowShuffling:(BOOL)allow\n{\n    _allowShuffling = allow;\n    \n    UIBarButtonItem *rightItem = nil;\n    \n    if (allow) {\n        rightItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(shuffle:)];\n    }\n    \n    self.navigationItem.rightBarButtonItem = rightItem;\n}\n\n- (void)didTapHeaderView:(id)sender\n{\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n- (void)shuffle:(id)sender\n{\n    Application *randomApp = [self randomApplication];\n    \n    while ([randomApp.identifier isEqualToString:self.application.identifier] || randomApp.type == ApplicationTypeUndefined) {\n        randomApp = [self randomApplication];\n    }\n    \n    self.application = randomApp;\n    \n    [self configureHeaderAndFooter];\n    [self configureNavigationBar];\n    \n    [self.tableView reloadEmptyDataSet];\n}\n\n- (Application *)randomApplication\n{\n    ApplicationType randomType = arc4random() % ApplicationCount;\n\n    NSPredicate *query = [NSPredicate predicateWithFormat:@\"type == %d\", randomType];\n    \n    return [[self.applications filteredArrayUsingPredicate:query] firstObject];\n}\n\n- (void)setLoading:(BOOL)loading\n{\n    if (self.isLoading == loading) {\n        return;\n    }\n    \n    _loading = loading;\n    \n    [self.tableView reloadEmptyDataSet];\n}\n\n\n#pragma mark - UITableViewDataSource Methods\n\n- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView\n{\n    return 1;\n}\n\n- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section\n{\n    return 0;\n}\n\n- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    static NSString *identifier = @\"Cell\";\n    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];\n    if (!cell) {\n        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];\n    }\n    \n    return cell;\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = nil;\n    UIFont *font = nil;\n    UIColor *textColor = nil;\n    \n    NSMutableDictionary *attributes = [NSMutableDictionary new];\n    \n    switch (self.application.type) {\n        case ApplicationType500px:\n        {\n            text = @\"No Photos\";\n            font = [UIFont boldSystemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:@\"545454\"];\n            break;\n        }\n        case ApplicationTypeAirbnb:\n        {\n            text = @\"No Messages\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Light\" size:22.0];\n            textColor = [UIColor colorWithHex:@\"c9c9c9\"];\n            break;\n        }\n        case ApplicationTypeCamera:\n        {\n            text = @\"Please Allow Photo Access\";\n            font = [UIFont boldSystemFontOfSize:18.0];\n            textColor = [UIColor colorWithHex:@\"5f6978\"];\n            break;\n        }\n        case ApplicationTypeDropbox:\n        {\n            text = @\"Star Your Favorite Files\";\n            font = [UIFont boldSystemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:@\"25282b\"];\n            break;\n        }\n        case ApplicationTypeFacebook:\n        {\n            text = @\"No friends to show.\";\n            font = [UIFont boldSystemFontOfSize:22.0];\n            textColor = [UIColor colorWithHex:@\"acafbd\"];\n            \n            NSShadow *shadow = [NSShadow new];\n            shadow.shadowColor = [UIColor whiteColor];\n            shadow.shadowOffset = CGSizeMake(0.0, 1.0);\n            [attributes setObject:shadow forKey:NSShadowAttributeName];\n            break;\n        }\n        case ApplicationTypeFancy:\n        {\n            text = @\"No Owns yet\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"494c53\"];\n            break;\n        }\n        case ApplicationTypeiCloud:\n        {\n            text = @\"iCloud Photo Sharing\";\n            break;\n        }\n        case ApplicationTypeInstagram:\n        {\n            text = @\"Instagram Direct\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Light\" size:26.0];\n            textColor = [UIColor colorWithHex:@\"444444\"];\n            break;\n        }\n        case ApplicationTypeiTunesConnect:\n        {\n            text = @\"No Favorites\";\n            font = [UIFont systemFontOfSize:22.0];\n            break;\n        }\n        case ApplicationTypeKickstarter:\n        {\n            text = @\"Activity empty\";\n            font = [UIFont boldSystemFontOfSize:16.0];\n            textColor = [UIColor colorWithHex:@\"828587\"];\n            [attributes setObject:@(-0.10) forKey:NSKernAttributeName];\n            break;\n        }\n        case ApplicationTypePath:\n        {\n            text = @\"Message Your Friends\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor whiteColor];\n            break;\n        }\n        case ApplicationTypePinterest:\n        {\n            text = @\"No boards to display\";\n            font = [UIFont boldSystemFontOfSize:18.0];\n            textColor = [UIColor colorWithHex:@\"666666\"];\n            break;\n        }\n        case ApplicationTypePhotos:\n        {\n            text = @\"No Photos or Videos\";\n            break;\n        }\n        case ApplicationTypePodcasts:\n        {\n            text = @\"No Podcasts\";\n            break;\n        }\n        case ApplicationTypeRemote:\n        {\n            text = @\"Cannot Connect to a Local Network\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Medium\" size:18.0];\n            textColor = [UIColor colorWithHex:@\"555555\"];\n            break;\n        }\n        case ApplicationTypeTumblr:\n        {\n            text = @\"This is your Dashboard.\";\n            font = [UIFont boldSystemFontOfSize:18.0];\n            textColor = [UIColor colorWithHex:@\"aab6c4\"];\n            break;\n        }\n        case ApplicationTypeTwitter:\n        {\n            text = @\"No lists\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"292f33\"];\n            break;\n        }\n        case ApplicationTypeVesper:\n        {\n            text = @\"No Notes\";\n            font = [UIFont fontWithName:@\"IdealSans-Book-Pro\" size:16.0];\n            textColor = [UIColor colorWithHex:@\"d9dce1\"];\n            break;\n        }\n        case ApplicationTypeVideos:\n        {\n            text = @\"AirPlay\";\n            font = [UIFont systemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:@\"414141\"];\n            break;\n        }\n        case ApplicationTypeVine:\n        {\n            text = @\"Welcome to VMs\";\n            font = [UIFont boldSystemFontOfSize:22.0];\n            textColor = [UIColor colorWithHex:@\"595959\"];\n            [attributes setObject:@(0.45) forKey:NSKernAttributeName];\n            break;\n        }\n        case ApplicationTypeWhatsapp:\n        {\n            text = @\"No Media\";\n            font = [UIFont systemFontOfSize:20.0];\n            textColor = [UIColor colorWithHex:@\"808080\"];\n            break;\n        }\n        case ApplicationTypeWWDC:\n        {\n            text = @\"No Favorites\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Medium\" size:16.0];\n            textColor = [UIColor colorWithHex:@\"b9b9b9\"];\n            break;\n        }\n        default:\n            return nil;\n    }\n    \n    if (!text) {\n        return nil;\n    }\n    \n    if (font) [attributes setObject:font forKey:NSFontAttributeName];\n    if (textColor) [attributes setObject:textColor forKey:NSForegroundColorAttributeName];\n    \n    return [[NSAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = nil;\n    UIFont *font = nil;\n    UIColor *textColor = nil;\n    \n    NSMutableDictionary *attributes = [NSMutableDictionary new];\n    \n    NSMutableParagraphStyle *paragraph = [NSMutableParagraphStyle new];\n    paragraph.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraph.alignment = NSTextAlignmentCenter;\n    \n    switch (self.application.type) {\n        case ApplicationType500px:\n        {\n            text = @\"Get started by uploading a photo.\";\n            font = [UIFont boldSystemFontOfSize:15.0];\n            textColor = [UIColor colorWithHex:@\"545454\"];\n            break;\n        }\n        case ApplicationTypeAirbnb:\n        {\n            text = @\"When you have messages, you’ll see them here.\";\n            font = [UIFont systemFontOfSize:13.0];\n            textColor = [UIColor colorWithHex:@\"cfcfcf\"];\n            paragraph.lineSpacing = 4.0;\n            break;\n        }\n        case ApplicationTypeAppstore:\n        {\n            text = @\"There are no results for “wwdc2014”.\";\n            font = [UIFont systemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"333333\"];\n            break;\n        }\n        case ApplicationTypeCamera:\n        {\n            text = @\"This allows you to share photos from your library and save photos to your camera roll.\";\n            font = [UIFont systemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"5f6978\"];\n            break;\n        }\n        case ApplicationTypeDropbox:\n        {\n            text = @\"Favorites are saved for offline access.\";\n            font = [UIFont systemFontOfSize:14.5];\n            textColor = [UIColor colorWithHex:@\"7b8994\"];\n            break;\n        }\n        case ApplicationTypeFancy:\n        {\n            text = @\"Tap Add to List and add things to Owns\";\n            font = [UIFont systemFontOfSize:13.0];\n            textColor = [UIColor colorWithHex:@\"7a7d83\"];\n            break;\n        }\n        case ApplicationTypeFoursquare:\n        {\n            text = @\"Nobody has liked or commented on your check-ins yet.\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"cecbc6\"];\n            break;\n        }\n        case ApplicationTypeiCloud:\n        {\n            text = @\"Share photos and videos with just the people you choose, and let them add photos, videos, and comments.\";\n            paragraph.lineSpacing = 2.0;\n            break;\n        }\n        case ApplicationTypeInstagram:\n        {\n            text = @\"Send photos and videos directly to your friends. Only the people you send to can see these posts.\";\n            font = [UIFont systemFontOfSize:16.0];\n            textColor = [UIColor colorWithHex:@\"444444\"];\n            paragraph.lineSpacing = 4.0;\n            break;\n        }\n        case ApplicationTypeiTunesConnect:\n        {\n            text = @\"To add a favorite, tap the star icon next to an App's name.\";\n            font = [UIFont systemFontOfSize:14.0];\n            break;\n        }\n        case ApplicationTypeKickstarter:\n        {\n            text = @\"When you back a project or follow a friend, their activity will show up here.\";\n            font = [UIFont systemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"828587\"];\n            break;\n        }\n        case ApplicationTypePath:\n        {\n            text = @\"Send a message or create a group.\";\n            font = [UIFont systemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:@\"a6978d\"];\n            break;\n        }\n        case ApplicationTypePhotos:\n        {\n            text = @\"You can sync photos and videos onto your iPhone using iTunes.\";\n            break;\n        }\n        case ApplicationTypePodcasts:\n        {\n            text = @\"You can subscribe to podcasts in Top Charts or Featured.\";\n            break;\n        }\n        case ApplicationTypeRemote:\n        {\n            text = @\"You must connect to a Wi-Fi network to control iTunes or Apple TV\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Medium\" size:11.75];\n            textColor = [UIColor colorWithHex:@\"555555\"];\n            break;\n        }\n        case ApplicationTypeSafari:\n        {\n            text = @\"Safari cannot open the page because your iPhone is not connected to the Internet.\";\n            textColor = [UIColor colorWithHex:@\"7d7f7f\"];\n            paragraph.lineSpacing = 2.0;\n            break;\n        }\n        case ApplicationTypeSkype:\n        {\n            text = @\"Keep all your favorite people together, add favorites.\";\n            font = [UIFont fontWithName:@\"HelveticaNeue-Light\" size:17.75];\n            textColor = [UIColor colorWithHex:@\"a6c3d1\"];\n            paragraph.lineSpacing = 3.0;\n            break;\n        }\n        case ApplicationTypeSlack:\n        {\n            text = @\"You don't have any recent mentions\";\n            font = [UIFont fontWithName:@\"Lato-Regular\" size:19.0];\n            textColor = [UIColor colorWithHex:@\"d7d7d7\"];\n            break;\n        }\n        case ApplicationTypeTumblr:\n        {\n            text = @\"When you follow some blogs, their latest posts will show up here!\";\n            font = [UIFont systemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:@\"828e9c\"];\n            break;\n        }\n        case ApplicationTypeTwitter:\n        {\n            text = @\"You aren’t subscribed to any lists yet.\";\n            font = [UIFont systemFontOfSize:12.0];\n            textColor = [UIColor colorWithHex:@\"8899a6\"];\n            break;\n        }\n        case ApplicationTypeVideos:\n        {\n            text = @\"This video is playing on “Apple TV”.\";\n            font = [UIFont systemFontOfSize:12.0];\n            textColor = [UIColor colorWithHex:@\"737373\"];\n            break;\n        }\n        case ApplicationTypeVine:\n        {\n            text = @\"This is where your private conversations will live\";\n            font = [UIFont systemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:@\"a6a6a6\"];\n            break;\n        }\n        case ApplicationTypeWhatsapp:\n        {\n            text = @\"You can exchange media with Ignacio by tapping on the Arrow Up icon in the conversation screen.\";\n            font = [UIFont systemFontOfSize:15.0];\n            textColor = [UIColor colorWithHex:@\"989898\"];\n            break;\n        }\n        case ApplicationTypeWWDC:\n        {\n            text = @\"Favorites are only available to Registered Apple Developers.\";\n            font = [UIFont systemFontOfSize:16.0];\n            textColor = [UIColor colorWithHex:@\"b9b9b9\"];\n            break;\n        }\n        default:\n            return nil;\n    }\n    \n    if (!text) {\n        return nil;\n    }\n    \n    if (font) [attributes setObject:font forKey:NSFontAttributeName];\n    if (textColor) [attributes setObject:textColor forKey:NSForegroundColorAttributeName];\n    if (paragraph) [attributes setObject:paragraph forKey:NSParagraphStyleAttributeName];\n\n    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n    \n    switch (self.application.type) {\n        case ApplicationTypeSkype:\n            [attributedString addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithHex:@\"00adf1\"] range:[attributedString.string rangeOfString:@\"add favorites\"]];\n            break;\n            \n        default:\n            break;\n    }\n    \n    return attributedString;\n}\n\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.isLoading) {\n        return [UIImage imageNamed:@\"loading_imgBlue_78x78\"];\n    }\n    else {\n        NSString *imageName = [[[NSString stringWithFormat:@\"placeholder_%@\", self.application.displayName] lowercaseString]\n                               stringByReplacingOccurrencesOfString:@\" \" withString:@\"_\"];\n        \n        return [UIImage imageNamed:imageName];\n    }\n}\n\n- (CAAnimation *)imageAnimationForEmptyDataSet:(UIScrollView *)scrollView\n{\n    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@\"transform\"];\n    animation.fromValue = [NSValue valueWithCATransform3D:CATransform3DIdentity];\n    animation.toValue = [NSValue valueWithCATransform3D: CATransform3DMakeRotation(M_PI_2, 0.0, 0.0, 1.0) ];\n    animation.duration = 0.25;\n    animation.cumulative = YES;\n    animation.repeatCount = MAXFLOAT;\n    \n    return animation;\n}\n\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    NSString *text = nil;\n    UIFont *font = nil;\n    UIColor *textColor = nil;\n    \n    switch (self.application.type) {\n        case ApplicationTypeAirbnb:\n        {\n            text = @\"Start Browsing\";\n            font = [UIFont boldSystemFontOfSize:16.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"05adff\" : @\"6bceff\"];\n            break;\n        }\n        case ApplicationTypeCamera:\n        {\n            text = @\"Continue\";\n            font = [UIFont boldSystemFontOfSize:17.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"007ee5\" : @\"48a1ea\"];\n            break;\n        }\n        case ApplicationTypeDropbox:\n        {\n            text = @\"Learn more\";\n            font = [UIFont systemFontOfSize:15.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"007ee5\" : @\"48a1ea\"];\n            break;\n        }\n        case ApplicationTypeFoursquare:\n        {\n            text = @\"Add friends to get started!\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"00aeef\" : @\"ffffff\"];\n            break;\n        }\n        case ApplicationTypeiCloud:\n        {\n            text = @\"Create New Stream\";\n            font = [UIFont systemFontOfSize:14.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"999999\" : @\"ebebeb\"];\n            break;\n        }\n        case ApplicationTypeKickstarter:\n        {\n            text = @\"Discover projects\";\n            font = [UIFont boldSystemFontOfSize:14.0];\n            textColor = [UIColor whiteColor];\n            break;\n        }\n        case ApplicationTypeWWDC:\n        {\n            text = @\"Sign In\";\n            font = [UIFont systemFontOfSize:16.0];\n            textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"fc6246\" : @\"fdbbb2\"];\n            break;\n        }\n        default:\n            return nil;\n    }\n    \n    if (!text) {\n        return nil;\n    }\n    \n    NSMutableDictionary *attributes = [NSMutableDictionary new];\n    if (font) [attributes setObject:font forKey:NSFontAttributeName];\n    if (textColor) [attributes setObject:textColor forKey:NSForegroundColorAttributeName];\n    \n    return [[NSAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (UIImage *)buttonBackgroundImageForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    NSString *imageName = [[NSString stringWithFormat:@\"button_background_%@\", self.application.displayName] lowercaseString];\n    \n    if (state == UIControlStateNormal) imageName = [imageName stringByAppendingString:@\"_normal\"];\n    if (state == UIControlStateHighlighted) imageName = [imageName stringByAppendingString:@\"_highlight\"];\n    \n    UIEdgeInsets capInsets = UIEdgeInsetsMake(10.0, 10.0, 10.0, 10.0);\n    UIEdgeInsets rectInsets = UIEdgeInsetsZero;\n    \n    switch (self.application.type) {\n        case ApplicationTypeFoursquare:\n            capInsets = UIEdgeInsetsMake(25.0, 25.0, 25.0, 25.0);\n            rectInsets = UIEdgeInsetsMake(0.0, 10, 0.0, 10);\n            break;\n        case ApplicationTypeiCloud:\n            rectInsets = UIEdgeInsetsMake(-19.0, -61.0, -19.0, -61.0);\n            break;\n        case ApplicationTypeKickstarter:\n            capInsets = UIEdgeInsetsMake(22.0, 22.0, 22.0, 22.0);\n            rectInsets = UIEdgeInsetsMake(0.0, -20, 0.0, -20);\n            break;\n        default:\n            break;\n    }\n\n    return [[[UIImage imageNamed:imageName] resizableImageWithCapInsets:capInsets resizingMode:UIImageResizingModeStretch] imageWithAlignmentRectInsets:rectInsets];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    switch (self.application.type) {\n        case ApplicationType500px:      return [UIColor blackColor];\n        case ApplicationTypeAirbnb:     return [UIColor whiteColor];\n        case ApplicationTypeDropbox:    return [UIColor colorWithHex:@\"f0f3f5\"];\n        case ApplicationTypeFacebook:   return [UIColor colorWithHex:@\"eceef7\"];\n        case ApplicationTypeFancy:      return [UIColor colorWithHex:@\"f0f0f0\"];\n        case ApplicationTypeFoursquare: return [UIColor colorWithHex:@\"fcfcfa\"];\n        case ApplicationTypeInstagram:  return [UIColor whiteColor];\n        case ApplicationTypeKickstarter:return [UIColor colorWithHex:@\"f7fafa\"];\n        case ApplicationTypePath:       return [UIColor colorWithHex:@\"726d67\"];\n        case ApplicationTypePinterest:  return [UIColor colorWithHex:@\"e1e1e1\"];\n        case ApplicationTypeSlack:      return [UIColor whiteColor];\n        case ApplicationTypeTumblr:     return [UIColor colorWithHex:@\"34465c\"];\n        case ApplicationTypeTwitter:    return [UIColor colorWithHex:@\"f5f8fa\"];\n        case ApplicationTypeVesper:     return [UIColor colorWithHex:@\"f8f8f8\"];\n        case ApplicationTypeVideos:     return [UIColor blackColor];\n        case ApplicationTypeWhatsapp:   return [UIColor colorWithHex:@\"f2f2f2\"];\n        default:                        return nil;\n    }\n}\n\n- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.application.type == ApplicationTypeKickstarter) {\n        CGFloat offset = CGRectGetHeight([UIApplication sharedApplication].statusBarFrame);\n        offset += CGRectGetHeight(self.navigationController.navigationBar.frame);\n        return -offset;\n    }\n    if (self.application.type == ApplicationTypeTwitter) {\n        return -roundf(self.tableView.frame.size.height/2.5);\n    }\n    return 0.0;\n}\n\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView\n{\n    switch (self.application.type) {\n        case ApplicationType500px:          return 9.0;\n        case ApplicationTypeAirbnb:         return 24.0;\n        case ApplicationTypeAppstore:       return 34.0;\n        case ApplicationTypeFacebook:       return 30.0;\n        case ApplicationTypeFancy:          return 1.0;\n        case ApplicationTypeFoursquare:     return 9.0;\n        case ApplicationTypeInstagram:      return 24.0;\n        case ApplicationTypeiTunesConnect:  return 9.0;\n        case ApplicationTypeKickstarter:    return 15.0;\n        case ApplicationTypePath:           return 1.0;\n        case ApplicationTypePodcasts:       return 35.0;\n        case ApplicationTypeTumblr:         return 10.0;\n        case ApplicationTypeTwitter:        return 0.1;\n        case ApplicationTypeVesper:         return 22.0;\n        case ApplicationTypeVideos:         return 0.1;\n        case ApplicationTypeVine:           return 0.1;\n        case ApplicationTypeWWDC:           return 18.0;\n        default:                            return 0.0;\n    }\n}\n\n\n#pragma mark - DZNEmptyDataSetDelegate Methods\n\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAnimateImageView:(UIScrollView *)scrollView\n{\n    return self.isLoading;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n    self.loading = YES;\n    \n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        self.loading = NO;\n    });\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n    self.loading = YES;\n    \n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        self.loading = NO;\n    });\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return NO;\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (void)didReceiveMemoryWarning\n{\n    [super didReceiveMemoryWarning];\n}\n\n- (void)dealloc\n{\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/Contents.json",
    "content": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_foursquare_highlight.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_foursquare_highlight.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_foursquare_highlight@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_foursquare_normal.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_foursquare_normal.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_foursquare_normal@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_icloud_highlight.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_icloud_highlight.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_icloud_highlight@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_icloud_normal.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_icloud_normal.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_icloud_normal@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_kickstarter_highlight.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_kickstarter_highlight.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_kickstarter_highlight@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/button_background_kickstarter_normal.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"button_background_kickstarter_normal.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"button_background_kickstarter_normal@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/header_pinterest.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"header_pinterest.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"header_pinterest@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/header_podcasts.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"header_podcasts.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"header_podcasts@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_500px.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_500px.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_500px@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_airbnb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_airbnb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_airbnb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_appstore.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_appstore.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_appstore@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_camera.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_camera.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_camera@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_dropbox.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_dropbox.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_dropbox@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_facebook.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_facebook.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_facebook@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_fancy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_fancy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_fancy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_foursquare.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_foursquare.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_foursquare@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_icloud.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_icloud.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_icloud@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_instagram.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_instagram.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_instagram@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_itunes_connect.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_itunesconnect.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_itunesconnect@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_kickstarter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_kickstarter.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_kickstarter@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_path.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_path.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_path@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_photos.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_photos.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_photos@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_pinterest.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_pinterest.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_pinterest@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_podcasts.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_podcasts.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_podcasts@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_remote.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_remote.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_remote@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_safari.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_safari.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_safari@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_skype.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_skype.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_skype@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_slack.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_slack.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_slack@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_tumblr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_tumblr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_tumblr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_twitter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_twitter.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_twitter@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_vesper.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_vesper.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_vesper@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_videos.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_videos.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_videos@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_vine.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_vine.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_vine@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_whatsapp.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_whatsapp.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_whatsapp@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/icon_wwdc.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"icon_wwdc.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"icon_wwdc@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/loading_imgBlue_78x78.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"loading_imgBlue_78x78@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"loading_imgBlue_78x78@3x.png\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_500px.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_500px.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_500px@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_airbnb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_airbnb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_airbnb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_dropbox.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_dropbox.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_dropbox@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_facebook.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_facebook.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_facebook@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_fancy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_fancy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_fancy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_foursquare.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_foursquare.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_foursquare@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_instagram.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_instagram.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_instagram@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_kickstarter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_kickstarter.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_kickstarter@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_path.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_path.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_path@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_pinterest.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_pinterest.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_pinterest@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_skype.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_skype.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_skype@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_slack.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_slack.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_slack@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_tumblr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_tumblr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_tumblr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_twitter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_twitter.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_twitter@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_vesper.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_vesper.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_vesper@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/logo_vine.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"logo_vine.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"logo_vine@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_500px.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_500px.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_500px@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_airbnb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_airbnb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_airbnb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_appstore.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_appstore.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_appstore@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_dropbox.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_dropbox.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_dropbox@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_facebook.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_facebook.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_facebook@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_fancy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_fancy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_fancy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_foursquare.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_foursquare.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_foursquare@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_instagram.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_instagram.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_instagram@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_itunes_connect.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_itunes_connect.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_itunes_connect@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_kickstarter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_kickstarter.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_kickstarter@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_path.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_path.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_path@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_remote.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_remote.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_remote@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_skype.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_skype.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_skype@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_slack.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_slack.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_slack@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_tumblr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_tumblr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_tumblr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_vesper.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_vesper.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_vesper@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_videos.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_videos.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_videos@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_vine.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_vine.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_vine@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Images.xcassets/placeholder_whatsapp.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"placeholder_whatsapp.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"placeholder_whatsapp@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/MainViewController.h",
    "content": "//\n//  MainViewController.h\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import \"DetailViewController.h\"\n#import \"Application.h\"\n\n@interface MainViewController : UITableViewController\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/MainViewController.m",
    "content": "//\n//  MainViewController.m\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"MainViewController.h\"\n#import \"UIColor+Hexadecimal.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface MainViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@property (nonatomic, strong) NSMutableArray *applications;\n@end\n\n@implementation MainViewController\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    \n    [self serializeApplications];\n}\n\n#pragma mark - View lifecycle\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.title = @\"Popular Applications\";\n    self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@\"\" style:UIBarButtonItemStylePlain target:nil action:NULL];\n    \n    self.tableView.tableFooterView = [UIView new];\n    \n    self.searchDisplayController.searchResultsTableView.emptyDataSetSource = self;\n    self.searchDisplayController.searchResultsTableView.emptyDataSetDelegate = self;\n    self.searchDisplayController.searchResultsTableView.tableFooterView = [UIView new];\n    [self.searchDisplayController setValue:@\"\" forKey:@\"noResultsMessage\"];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    self.navigationController.navigationBar.titleTextAttributes = nil;\n    self.navigationController.navigationBar.barTintColor = [UIColor colorWithHex:@\"f8f8f8\"];;\n    self.navigationController.navigationBar.translucent = NO;\n    \n    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:YES];\n}\n\n\n#pragma mark - Getters\n\n- (NSArray *)filteredApps\n{\n    UISearchBar *searchBar = self.searchDisplayController.searchBar;\n\n    if ([searchBar isFirstResponder] && searchBar.text.length > 0)\n    {\n        NSPredicate *precidate = [NSPredicate predicateWithFormat:@\"displayName CONTAINS[cd] %@\", searchBar.text];\n        return [self.applications filteredArrayUsingPredicate:precidate];\n    }\n    return self.applications;\n}\n\n\n#pragma mark - Serialization\n\n- (void)serializeApplications\n{\n    NSString *path = [[NSBundle mainBundle] pathForResource:@\"applications\" ofType:@\"json\"];\n    NSData *data = [NSData dataWithContentsOfFile:path];\n    NSArray *objects = [[NSJSONSerialization JSONObjectWithData:data options:kNilOptions|NSJSONWritingPrettyPrinted error:nil] mutableCopy];\n    \n    self.applications = [NSMutableArray new];\n    \n    for (NSDictionary *dictionary in objects) {\n        Application *app = [[Application alloc] initWithDictionary:dictionary];\n        [self.applications addObject:app];\n    }\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"No Application Found\";\n    return [[NSAttributedString alloc] initWithString:text attributes:nil];\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    UISearchBar *searchBar = self.searchDisplayController.searchBar;\n    \n    NSString *text = [NSString stringWithFormat:@\"There are no empty dataset examples for \\\"%@\\\".\", searchBar.text];\n    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text attributes:nil];\n    \n    [attributedString addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:17.0] range:[attributedString.string rangeOfString:searchBar.text]];\n    \n    return attributedString;\n}\n\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    NSString *text = @\"Search on the App Store\";\n    UIFont *font = [UIFont systemFontOfSize:16.0];\n    UIColor *textColor = [UIColor colorWithHex:(state == UIControlStateNormal) ? @\"007aff\" : @\"c6def9\"];\n    \n    NSMutableDictionary *attributes = [NSMutableDictionary new];\n    [attributes setObject:font forKey:NSFontAttributeName];\n    [attributes setObject:textColor forKey:NSForegroundColorAttributeName];\n    \n    return [[NSAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n\n- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return -64.0;\n}\n\n#pragma mark - DZNEmptyDataSetDelegate Methods\n\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n\n    UISearchBar *searchBar = self.searchDisplayController.searchBar;\n\n    NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@\"http://itunes.com/apps/%@\", searchBar.text]];\n    \n    if ([[UIApplication sharedApplication] canOpenURL:URL]) {\n        [[UIApplication sharedApplication] openURL:URL];\n    }\n}\n\n\n#pragma mark - UITableViewDataSource Methods\n\n- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView\n{\n    return 1;\n}\n\n- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section\n{\n    NSInteger rowCount = [self filteredApps].count;\n\n    return rowCount;\n}\n\n- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    static NSString *cellIdentifier = @\"app_cell_identifier\";\n    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];\n    \n    if (!cell) {\n        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];\n    }\n    \n    Application *app = [[self filteredApps] objectAtIndex:indexPath.row];\n    \n    cell.textLabel.text = app.displayName;\n    cell.detailTextLabel.text = app.developerName;\n    \n    UIImage *image = [UIImage imageNamed:app.iconName];\n    cell.imageView.image = image;\n    \n    cell.imageView.layer.cornerRadius = image.size.width*0.2;\n    cell.imageView.layer.masksToBounds = YES;\n    cell.imageView.layer.borderColor = [UIColor colorWithWhite:0.0 alpha:0.2].CGColor;\n    cell.imageView.layer.borderWidth = 0.5;\n    \n    cell.imageView.layer.shouldRasterize = YES;\n    cell.imageView.layer.rasterizationScale = [UIScreen mainScreen].scale;\n    \n    return cell;\n}\n\n- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return 70.0;\n}\n\n\n#pragma mark - UITableViewDelegate Methods\n\n- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    Application *app = [[self filteredApps] objectAtIndex:indexPath.row];\n    DetailViewController *controller = [[DetailViewController alloc] initWithApplication:app];\n    controller.applications = self.applications;\n    controller.allowShuffling = YES;\n    \n    [self.navigationController pushViewController:controller animated:YES];\n}\n\n\n#pragma mark - UISearchBarDelegate Methods\n\n- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar\n{\n    return YES;\n}\n\n- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar\n{\n    return YES;\n}\n\n- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar\n{\n    // Do something\n}\n\n- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar\n{\n    // Do something\n}\n\n- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar\n{\n    // Do something\n}\n\n- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar\n{\n    // Do something\n}\n\n- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText\n{\n    // Do something\n}\n\n\n#pragma mark - UISearchDisplayDelegate Methods\n\n- (void)searchDisplayControllerDidBeginSearch:(UISearchDisplayController *)controller\n{\n    // Do something\n}\n\n- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller\n{\n    // Do something\n}\n\n- (void)searchDisplayController:(UISearchDisplayController *)controller didShowSearchResultsTableView:(UITableView *)tableView\n{\n    // Do something\n}\n\n- (void)searchDisplayController:(UISearchDisplayController *)controller didLoadSearchResultsTableView:(UITableView *)tableView\n{\n    // Do something\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/Storyboard.storyboard",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3.0\" toolsVersion=\"7706\" systemVersion=\"14F6a\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" initialViewController=\"5hR-C5-ClI\">\n    <dependencies>\n        <deployment identifier=\"iOS\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"7703\"/>\n    </dependencies>\n    <scenes>\n        <!--Main View Controller-->\n        <scene sceneID=\"QIO-c6-OVa\">\n            <objects>\n                <tableViewController id=\"yc9-fl-Ful\" customClass=\"MainViewController\" sceneMemberID=\"viewController\">\n                    <tableView key=\"view\" opaque=\"NO\" clipsSubviews=\"YES\" clearsContextBeforeDrawing=\"NO\" contentMode=\"scaleToFill\" alwaysBounceVertical=\"YES\" dataMode=\"prototypes\" style=\"grouped\" separatorStyle=\"default\" rowHeight=\"44\" sectionHeaderHeight=\"10\" sectionFooterHeight=\"10\" id=\"w0h-tk-9IJ\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"568\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <color key=\"backgroundColor\" red=\"0.93725490196078431\" green=\"0.93725490196078431\" blue=\"0.95686274509803926\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                        <searchBar key=\"tableHeaderView\" contentMode=\"redraw\" searchBarStyle=\"minimal\" text=\"\" id=\"Zhb-Pe-mgA\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"64\" width=\"320\" height=\"44\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                            <color key=\"tintColor\" red=\"0.046561669559999998\" green=\"0.41276246309999998\" blue=\"0.99838423730000003\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                            <textInputTraits key=\"textInputTraits\"/>\n                            <connections>\n                                <outlet property=\"delegate\" destination=\"yc9-fl-Ful\" id=\"zaQ-gD-UEr\"/>\n                            </connections>\n                        </searchBar>\n                        <prototypes>\n                            <tableViewCell contentMode=\"scaleToFill\" selectionStyle=\"default\" accessoryType=\"disclosureIndicator\" indentationWidth=\"10\" reuseIdentifier=\"app_cell_identifier\" textLabel=\"6Vv-GN-5Xv\" detailTextLabel=\"S3O-x4-CqR\" style=\"IBUITableViewCellStyleSubtitle\" id=\"wII-9I-R71\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"163\" width=\"320\" height=\"44\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <tableViewCellContentView key=\"contentView\" opaque=\"NO\" clipsSubviews=\"YES\" multipleTouchEnabled=\"YES\" contentMode=\"center\" tableViewCell=\"wII-9I-R71\" id=\"HKr-XI-q98\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"287\" height=\"43\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                    <subviews>\n                                        <label opaque=\"NO\" clipsSubviews=\"YES\" multipleTouchEnabled=\"YES\" contentMode=\"left\" text=\"Title\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"6Vv-GN-5Xv\">\n                                            <rect key=\"frame\" x=\"15\" y=\"3\" width=\"34\" height=\"22\"/>\n                                            <autoresizingMask key=\"autoresizingMask\"/>\n                                            <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"18\"/>\n                                            <color key=\"textColor\" white=\"0.33333333333333331\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                                            <nil key=\"highlightedColor\"/>\n                                        </label>\n                                        <label opaque=\"NO\" clipsSubviews=\"YES\" multipleTouchEnabled=\"YES\" contentMode=\"left\" text=\"Subtitle\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"S3O-x4-CqR\">\n                                            <rect key=\"frame\" x=\"15\" y=\"25\" width=\"43\" height=\"15\"/>\n                                            <autoresizingMask key=\"autoresizingMask\"/>\n                                            <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"12\"/>\n                                            <color key=\"textColor\" white=\"0.5\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                            <nil key=\"highlightedColor\"/>\n                                        </label>\n                                    </subviews>\n                                </tableViewCellContentView>\n                            </tableViewCell>\n                        </prototypes>\n                        <connections>\n                            <outlet property=\"dataSource\" destination=\"yc9-fl-Ful\" id=\"Rbj-3A-DjK\"/>\n                            <outlet property=\"delegate\" destination=\"yc9-fl-Ful\" id=\"BkI-um-zos\"/>\n                        </connections>\n                    </tableView>\n                    <navigationItem key=\"navigationItem\" id=\"QaP-9K-ONU\"/>\n                    <connections>\n                        <outlet property=\"searchDisplayController\" destination=\"gJc-z6-kTf\" id=\"gRd-M7-Kgm\"/>\n                    </connections>\n                </tableViewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"RNU-uT-Tld\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n                <searchDisplayController id=\"gJc-z6-kTf\">\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"yc9-fl-Ful\" id=\"OBY-u9-oN4\"/>\n                        <outlet property=\"searchBar\" destination=\"Zhb-Pe-mgA\" id=\"OxP-qF-lEb\"/>\n                        <outlet property=\"searchContentsController\" destination=\"yc9-fl-Ful\" id=\"PKE-Ow-H68\"/>\n                        <outlet property=\"searchResultsDataSource\" destination=\"yc9-fl-Ful\" id=\"ztV-wH-YEt\"/>\n                        <outlet property=\"searchResultsDelegate\" destination=\"yc9-fl-Ful\" id=\"HLL-Wo-t5k\"/>\n                    </connections>\n                </searchDisplayController>\n            </objects>\n            <point key=\"canvasLocation\" x=\"835\" y=\"62\"/>\n        </scene>\n        <!--Navigation Controller-->\n        <scene sceneID=\"tyj-Vt-Wfe\">\n            <objects>\n                <navigationController automaticallyAdjustsScrollViewInsets=\"NO\" id=\"5hR-C5-ClI\" sceneMemberID=\"viewController\">\n                    <toolbarItems/>\n                    <navigationBar key=\"navigationBar\" contentMode=\"scaleToFill\" id=\"K1m-NK-JNR\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"44\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </navigationBar>\n                    <nil name=\"viewControllers\"/>\n                    <connections>\n                        <segue destination=\"yc9-fl-Ful\" kind=\"relationship\" relationship=\"rootViewController\" id=\"bmn-0a-Qnp\"/>\n                    </connections>\n                </navigationController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"rU3-kL-N3O\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"309\" y=\"62\"/>\n        </scene>\n    </scenes>\n    <simulatedMetricsContainer key=\"defaultSimulatedMetrics\">\n        <simulatedStatusBarMetrics key=\"statusBar\"/>\n        <simulatedOrientationMetrics key=\"orientation\"/>\n        <simulatedScreenMetrics key=\"destination\" type=\"retina4\"/>\n    </simulatedMetricsContainer>\n</document>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/System.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"57x57\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-57.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"57x57\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-57@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"50x50\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-50~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"50x50\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-50@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"72x72\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-72~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"72x72\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-72@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"ipad\",\n      \"size\" : \"83.5x83.5\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/System.xcassets/LaunchImage.launchimage/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"736h\",\n      \"filename\" : \"Default-hd-plus@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"8.0\",\n      \"subtype\" : \"736h\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"667h\",\n      \"filename\" : \"Default-hd@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Default@2x.png\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"retina4\",\n      \"filename\" : \"Default-568h@2x.png\",\n      \"minimum-system-version\" : \"7.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Default.png\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Default@2x-1.png\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Default-568h@2x-1.png\",\n      \"extent\" : \"full-screen\",\n      \"subtype\" : \"retina4\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/UIColor+Hexadecimal.h",
    "content": "//\n//  UIColor+Hexadecimal.h\n//  Applications\n//\n//  Created by Ignacio on 6/7/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface UIColor (Hexadecimal)\n\n+ (UIColor *)colorWithHex:(NSString *)string;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/UIColor+Hexadecimal.m",
    "content": "//\n//  UIColor+Hexadecimal.m\n//  Applications\n//\n//  Created by Ignacio on 6/7/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"UIColor+Hexadecimal.h\"\n\n@implementation UIColor (Hexadecimal)\n\n+ (UIColor *)colorWithHex:(NSString *)string\n{\n    NSString *cleanString = [string stringByReplacingOccurrencesOfString:@\"#\" withString:@\"\"];\n    if([cleanString length] == 3) {\n        cleanString = [NSString stringWithFormat:@\"%@%@%@%@%@%@\",\n                       [cleanString substringWithRange:NSMakeRange(0, 1)],[cleanString substringWithRange:NSMakeRange(0, 1)],\n                       [cleanString substringWithRange:NSMakeRange(1, 1)],[cleanString substringWithRange:NSMakeRange(1, 1)],\n                       [cleanString substringWithRange:NSMakeRange(2, 1)],[cleanString substringWithRange:NSMakeRange(2, 1)]];\n    }\n    if([cleanString length] == 6) {\n        cleanString = [cleanString stringByAppendingString:@\"ff\"];\n    }\n    \n    unsigned int baseValue;\n    [[NSScanner scannerWithString:cleanString] scanHexInt:&baseValue];\n    \n    float red = ((baseValue >> 24) & 0xFF)/255.0f;\n    float green = ((baseValue >> 16) & 0xFF)/255.0f;\n    float blue = ((baseValue >> 8) & 0xFF)/255.0f;\n    \n    return [UIColor colorWithRed:red green:green blue:blue alpha:1.0];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/applications.json",
    "content": " [\n  {\n  \"display_name\": \"500px\",\n  \"developer_name\": \"500px\",\n  \"identifier\": \"471965292\"\n  },\n  {\n  \"display_name\": \"Airbnb\",\n  \"developer_name\": \"Airbnb, Inc.\",\n  \"identifier\": \"401626263\"\n  },\n  {\n  \"display_name\": \"AppStore\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Camera\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Dropbox\",\n  \"developer_name\": \"Dropbox, Inc.\",\n  \"identifier\": \"327630330\"\n  },\n  {\n  \"display_name\": \"Facebook\",\n  \"developer_name\": \"Facebook, Inc.\",\n  \"identifier\": \"284882215\"\n  },\n  {\n  \"display_name\": \"Fancy\",\n  \"developer_name\": \"Thing Daemon, Inc.\",\n  \"identifier\": \"407324335\"\n  },\n  {\n  \"display_name\": \"Foursquare\",\n  \"developer_name\": \"Foursquare Labs\",\n  \"identifier\": \"306934924\"\n  },\n  {\n  \"display_name\": \"iCloud\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Instagram\",\n  \"developer_name\": \"Instagram, Inc.\",\n  \"identifier\": \"389801252\"\n  },\n  {\n  \"display_name\": \"iTunes Connect\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"376771144\"\n  },\n  {\n  \"display_name\": \"Kickstarter\",\n  \"developer_name\": \"Kickstarter, Inc.\",\n  \"identifier\": \"596961532\"\n  },\n  {\n  \"display_name\": \"Path\",\n  \"developer_name\": \"Path, Inc.\",\n  \"identifier\": \"403639508\"\n  },\n  {\n  \"display_name\": \"Pinterest\",\n  \"developer_name\": \"Pinterest, Inc.\",\n  \"identifier\": \"429047995\"\n  },\n  {\n  \"display_name\": \"Photos\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Podcasts\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"525463029\"\n  },\n  {\n  \"display_name\": \"Remote\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"284417350\"\n  },\n  {\n  \"display_name\": \"Safari\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Skype\",\n  \"developer_name\": \"Skype Communications S.a.r.l\",\n  \"identifier\": \"304878510\"\n  },\n  {\n  \"display_name\": \"Slack\",\n  \"developer_name\": \"Tiny Speck, Inc.\",\n  \"identifier\": \"618783545\"\n  },\n  {\n  \"display_name\": \"Tumblr\",\n  \"developer_name\": \"Tumblr, Inc.\",\n  \"identifier\": \"305343404\"\n  },\n  {\n  \"display_name\": \"Twitter\",\n  \"developer_name\": \"Twitter, Inc.\",\n  \"identifier\": \"333903271\"\n  },\n  {\n  \"display_name\": \"Vesper\",\n  \"developer_name\": \"Q Branch\",\n  \"identifier\": \"655895325\"\n  },\n  {\n  \"display_name\": \"Videos\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"\"\n  },\n  {\n  \"display_name\": \"Vine\",\n  \"developer_name\": \"Vine Labs, Inc.\",\n  \"identifier\": \"592447445\"\n  },\n  {\n  \"display_name\": \"WhatsApp\",\n  \"developer_name\": \"WhatsApp, Inc.\",\n  \"identifier\": \"310633997\"\n  },\n  {\n  \"display_name\": \"WWDC\",\n  \"developer_name\": \"Apple, Inc.\",\n  \"identifier\": \"640199958\"\n  },\n]"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/en.lproj/InfoPlist.strings",
    "content": "/* Localized versions of Info.plist keys */\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications/main.m",
    "content": "//\n//  main.m\n//  Applications\n//\n//  Created by Ignacio on 6/6/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n#import \"AppDelegate.h\"\n\nint main(int argc, char * argv[])\n{\n    @autoreleasepool {\n        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications.xcodeproj/project.pbxproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>archiveVersion</key>\n\t<string>1</string>\n\t<key>classes</key>\n\t<dict/>\n\t<key>objectVersion</key>\n\t<string>46</string>\n\t<key>objects</key>\n\t<dict>\n\t\t<key>04DD24601BAFDFAD001647B5</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>folder.assetcatalog</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Images.xcassets</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>04DD24611BAFDFAD001647B5</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>04DD24601BAFDFAD001647B5</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4F36C06819CD11E40073E4BE</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>folder.assetcatalog</string>\n\t\t\t<key>path</key>\n\t\t\t<string>System.xcassets</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4F36C06919CD11E40073E4BE</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4F36C06819CD11E40073E4BE</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4F805142196FBB2400FD61AA</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>file.storyboard</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Storyboard.storyboard</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4F805143196FBB2400FD61AA</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4F805142196FBB2400FD61AA</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE7619421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE8819421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8119421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8019421BB70051C6BD</string>\n\t\t\t\t<string>DEED72002638D6535AFCE24C</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE7719421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>attributes</key>\n\t\t\t<dict>\n\t\t\t\t<key>LastUpgradeCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t\t<key>ORGANIZATIONNAME</key>\n\t\t\t\t<string>DZN Labs</string>\n\t\t\t</dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>4FB5CE7A19421BB70051C6BD</string>\n\t\t\t<key>compatibilityVersion</key>\n\t\t\t<string>Xcode 3.2</string>\n\t\t\t<key>developmentRegion</key>\n\t\t\t<string>English</string>\n\t\t\t<key>hasScannedForEncodings</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXProject</string>\n\t\t\t<key>knownRegions</key>\n\t\t\t<array>\n\t\t\t\t<string>en</string>\n\t\t\t\t<string>Base</string>\n\t\t\t</array>\n\t\t\t<key>mainGroup</key>\n\t\t\t<string>4FB5CE7619421BB70051C6BD</string>\n\t\t\t<key>productRefGroup</key>\n\t\t\t<string>4FB5CE8019421BB70051C6BD</string>\n\t\t\t<key>projectDirPath</key>\n\t\t\t<string></string>\n\t\t\t<key>projectReferences</key>\n\t\t\t<array/>\n\t\t\t<key>projectRoot</key>\n\t\t\t<string></string>\n\t\t\t<key>targets</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE7E19421BB70051C6BD</string>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>4FB5CE7A19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CEAF19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CEB019421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>4FB5CE7B19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CEB919421CA40051C6BD</string>\n\t\t\t\t<string>4FB5CEF2194383F90051C6BD</string>\n\t\t\t\t<string>4FB5CE9319421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8F19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CEC2194220F50051C6BD</string>\n\t\t\t\t<string>4FB5CEBC19421D0F0051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>4FB5CE7C19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE8519421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8719421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8319421BB70051C6BD</string>\n\t\t\t\t<string>DC3D8C2CF037427184D94841</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>4FB5CE7D19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CF151943BA140051C6BD</string>\n\t\t\t\t<string>4FB5CEC41942210E0051C6BD</string>\n\t\t\t\t<string>04DD24611BAFDFAD001647B5</string>\n\t\t\t\t<string>4F36C06919CD11E40073E4BE</string>\n\t\t\t\t<string>4FB5CE8D19421BB70051C6BD</string>\n\t\t\t\t<string>4F805143196FBB2400FD61AA</string>\n\t\t\t\t<string>4FB5CEE41942944A0051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXResourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>4FB5CE7E19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>4FB5CEB119421BB70051C6BD</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>82691CA88C254035AC3A9848</string>\n\t\t\t\t<string>4FB5CE7B19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE7C19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE7D19421BB70051C6BD</string>\n\t\t\t\t<string>80DE751658C84F6E894FCE7A</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Applications</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>Applications</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>4FB5CE7F19421BB70051C6BD</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.application</string>\n\t\t</dict>\n\t\t<key>4FB5CE7F19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>wrapper.application</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Applications.app</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>4FB5CE8019421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE7F19421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Products</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8119421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE8219421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8419421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8619421BB70051C6BD</string>\n\t\t\t\t<string>7C28AF233A3440BF861BEB87</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Frameworks</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8219421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Foundation.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>System/Library/Frameworks/Foundation.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SDKROOT</string>\n\t\t</dict>\n\t\t<key>4FB5CE8319421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE8219421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE8419421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>CoreGraphics.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>System/Library/Frameworks/CoreGraphics.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SDKROOT</string>\n\t\t</dict>\n\t\t<key>4FB5CE8519421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE8419421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE8619421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>UIKit.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>System/Library/Frameworks/UIKit.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SDKROOT</string>\n\t\t</dict>\n\t\t<key>4FB5CE8719421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE8619421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE8819421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE9119421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE9219421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CEB719421CA40051C6BD</string>\n\t\t\t\t<string>4FB5CEB819421CA40051C6BD</string>\n\t\t\t\t<string>4FB5CEBA19421D0F0051C6BD</string>\n\t\t\t\t<string>4FB5CEBB19421D0F0051C6BD</string>\n\t\t\t\t<string>4FB5CEC0194220F50051C6BD</string>\n\t\t\t\t<string>4FB5CEC1194220F50051C6BD</string>\n\t\t\t\t<string>4FB5CEF0194383F90051C6BD</string>\n\t\t\t\t<string>4FB5CEF1194383F90051C6BD</string>\n\t\t\t\t<string>4FB5CEC31942210E0051C6BD</string>\n\t\t\t\t<string>04DD24601BAFDFAD001647B5</string>\n\t\t\t\t<string>4F36C06819CD11E40073E4BE</string>\n\t\t\t\t<string>4FB5CECE1942944A0051C6BD</string>\n\t\t\t\t<string>4FB5CE8919421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Applications</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8919421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4F805142196FBB2400FD61AA</string>\n\t\t\t\t<string>4FB5CE8A19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8B19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE8E19421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CE9019421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Supporting Files</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8A19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.xml</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Applications-Info.plist</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8B19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CE8C19421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXVariantGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>InfoPlist.strings</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8C19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.strings</string>\n\t\t\t<key>name</key>\n\t\t\t<string>en</string>\n\t\t\t<key>path</key>\n\t\t\t<string>en.lproj/InfoPlist.strings</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8D19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE8B19421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE8E19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>main.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE8F19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE8E19421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CE9019421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Applications-Prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE9119421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>AppDelegate.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE9219421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>AppDelegate.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CE9319421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CE9219421BB70051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEAF19421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CODE_SIGN_IDENTITY[sdk=iphoneos*]</key>\n\t\t\t\t<string>iPhone Developer</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>ENABLE_TESTABILITY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_DYNAMIC_NO_PIC</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_OPTIMIZATION_LEVEL</key>\n\t\t\t\t<string>0</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>DEBUG=1</string>\n\t\t\t\t\t<string>$(inherited)</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES_AGGRESSIVE</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>ONLY_ACTIVE_ARCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>4FB5CEB019421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CODE_SIGN_IDENTITY[sdk=iphoneos*]</key>\n\t\t\t\t<string>iPhone Developer</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>ENABLE_NS_ASSERTIONS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES_ERROR</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES_AGGRESSIVE</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>VALIDATE_PRODUCT</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>4FB5CEB119421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CEB219421BB70051C6BD</string>\n\t\t\t\t<string>4FB5CEB319421BB70051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>4FB5CEB219421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>D0254246A6B36709B3020FC2</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ASSETCATALOG_COMPILER_APPICON_NAME</key>\n\t\t\t\t<string>AppIcon</string>\n\t\t\t\t<key>ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME</key>\n\t\t\t\t<string>LaunchImage</string>\n\t\t\t\t<key>CODE_SIGN_IDENTITY</key>\n\t\t\t\t<string>iPhone Developer: fangwen huang (33TFM3RXM7)</string>\n\t\t\t\t<key>GCC_PRECOMPILE_PREFIX_HEADER</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Applications/Applications-Prefix.pch</string>\n\t\t\t\t<key>INFOPLIST_FILE</key>\n\t\t\t\t<string>Applications/Applications-Info.plist</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>PRODUCT_BUNDLE_IDENTIFIER</key>\n\t\t\t\t<string>com.dzn.${PRODUCT_NAME:rfc1034identifier}</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>PROVISIONING_PROFILE</key>\n\t\t\t\t<string>a84f8631-7134-4f99-8d95-ca7217404d91</string>\n\t\t\t\t<key>WRAPPER_EXTENSION</key>\n\t\t\t\t<string>app</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>4FB5CEB319421BB70051C6BD</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>BCEA3AD20EF58699A6D55E0B</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ASSETCATALOG_COMPILER_APPICON_NAME</key>\n\t\t\t\t<string>AppIcon</string>\n\t\t\t\t<key>ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME</key>\n\t\t\t\t<string>LaunchImage</string>\n\t\t\t\t<key>CODE_SIGN_IDENTITY</key>\n\t\t\t\t<string>iPhone Developer: fangwen huang (33TFM3RXM7)</string>\n\t\t\t\t<key>GCC_PRECOMPILE_PREFIX_HEADER</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Applications/Applications-Prefix.pch</string>\n\t\t\t\t<key>INFOPLIST_FILE</key>\n\t\t\t\t<string>Applications/Applications-Info.plist</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>PRODUCT_BUNDLE_IDENTIFIER</key>\n\t\t\t\t<string>com.dzn.${PRODUCT_NAME:rfc1034identifier}</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>PROVISIONING_PROFILE</key>\n\t\t\t\t<string>a84f8631-7134-4f99-8d95-ca7217404d91</string>\n\t\t\t\t<key>WRAPPER_EXTENSION</key>\n\t\t\t\t<string>app</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>4FB5CEB719421CA40051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>MainViewController.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEB819421CA40051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>MainViewController.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEB919421CA40051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CEB819421CA40051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEBA19421D0F0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DetailViewController.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEBB19421D0F0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DetailViewController.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEBC19421D0F0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CEBB19421D0F0051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEC0194220F50051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Application.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEC1194220F50051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Application.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEC2194220F50051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CEC1194220F50051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEC31942210E0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.json</string>\n\t\t\t<key>path</key>\n\t\t\t<string>applications.json</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEC41942210E0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CEC31942210E0051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CECE1942944A0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CECF1942944A0051C6BD</string>\n\t\t\t\t<string>4FB5CEF41943BA140051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Fonts</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CECF1942944A0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CED41942944A0051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Ideal Sans</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CED41942944A0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>file</string>\n\t\t\t<key>path</key>\n\t\t\t<string>IdealSans-Book-Pro.otf</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEE41942944A0051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CED41942944A0051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEF0194383F90051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIColor+Hexadecimal.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEF1194383F90051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileEncoding</key>\n\t\t\t<string>4</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIColor+Hexadecimal.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CEF2194383F90051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CEF1194383F90051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>4FB5CEF41943BA140051C6BD</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4FB5CF021943BA140051C6BD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Lato</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CF021943BA140051C6BD</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>file</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Lato-Regular.ttf</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4FB5CF151943BA140051C6BD</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4FB5CF021943BA140051C6BD</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>7C28AF233A3440BF861BEB87</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>80DE751658C84F6E894FCE7A</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array/>\n\t\t\t<key>inputPaths</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXShellScriptBuildPhase</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Copy Pods Resources</string>\n\t\t\t<key>outputPaths</key>\n\t\t\t<array/>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t\t<key>shellPath</key>\n\t\t\t<string>/bin/sh</string>\n\t\t\t<key>shellScript</key>\n\t\t\t<string>\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\"\n</string>\n\t\t\t<key>showEnvVarsInLog</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>82691CA88C254035AC3A9848</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array/>\n\t\t\t<key>inputPaths</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXShellScriptBuildPhase</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Check Pods Manifest.lock</string>\n\t\t\t<key>outputPaths</key>\n\t\t\t<array/>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t\t<key>shellPath</key>\n\t\t\t<string>/bin/sh</string>\n\t\t\t<key>shellScript</key>\n\t\t\t<string>diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" &gt; /dev/null\nif [[ $? != 0 ]] ; then\n    cat &lt;&lt; EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n    exit 1\nfi\n</string>\n\t\t\t<key>showEnvVarsInLog</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>BCEA3AD20EF58699A6D55E0B</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods.release.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods/Target Support Files/Pods/Pods.release.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D0254246A6B36709B3020FC2</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods.debug.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods/Target Support Files/Pods/Pods.debug.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>DC3D8C2CF037427184D94841</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>7C28AF233A3440BF861BEB87</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>DEED72002638D6535AFCE24C</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>D0254246A6B36709B3020FC2</string>\n\t\t\t\t<string>BCEA3AD20EF58699A6D55E0B</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t</dict>\n\t<key>rootObject</key>\n\t<string>4FB5CE7719421BB70051C6BD</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Applications.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Applications.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Applications.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Pods/Pods.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Podfile",
    "content": "platform :ios, '6.0'\n\npod 'DZNEmptyDataSet', :path => '../../'"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Local Podspecs/DZNEmptyDataSet.podspec.json",
    "content": "{\n  \"name\": \"DZNEmptyDataSet\",\n  \"version\": \"1.8\",\n  \"summary\": \"A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\",\n  \"description\": \"It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed.\",\n  \"homepage\": \"https://github.com/dzenbot/DZNEmptyDataSet\",\n  \"license\": {\n    \"type\": \"MIT\",\n    \"file\": \"LICENSE\"\n  },\n  \"authors\": {\n    \"dzenbot\": \"iromero@dzen.cl\"\n  },\n  \"platforms\": {\n    \"ios\": \"6.0\"\n  },\n  \"source\": {\n    \"git\": \"https://github.com/dzenbot/DZNEmptyDataSet.git\",\n    \"tag\": \"v1.8\"\n  },\n  \"source_files\": [\n    \"Classes\",\n    \"Source/**/*.{h,m}\"\n  ],\n  \"requires_arc\": true,\n  \"frameworks\": \"UIKit\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Pods.xcodeproj/project.pbxproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>archiveVersion</key>\n\t<string>1</string>\n\t<key>classes</key>\n\t<dict/>\n\t<key>objectVersion</key>\n\t<string>46</string>\n\t<key>objects</key>\n\t<dict>\n\t\t<key>0364FE89F5107F544DEC15166918E2A1</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>90B58C99D0054C74801A14D045CAB049</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>07016034693ADD6082E0FC107D5541BB</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.debug.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0E0DE69C371E25639152D44D8FF0FCEF</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>15A529C27057E4A57D259CBC6E6CE49C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.markdown</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>1683F30D244E3EBCA51481C2EA5AFB16</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>182967A704469F086D39FBC4FB9D9DC5</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>D9C91AF540C4BC50562F32E9295C50D3</string>\n\t\t\t\t<string>2B06E9136153968901DA8E040421EC9C</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>19D3E3B802B3750E7D241CA1630453D5</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>207A3DD8C93C76F69D230273A3D535BC</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.release.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>2B06E9136153968901DA8E040421EC9C</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>207A3DD8C93C76F69D230273A3D535BC</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>2D8E8EC45A3A1A1D94AE762CB5028504</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>6569F07DC21AD8B72752685013E3D9D8</string>\n\t\t\t\t<string>A14E2444F162A20E3776820E0ADFFB52</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>3278CE15420555D48F10154A14C5B655</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>3B20E21A1888BC186989307F796F5F40</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>UIKit.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/UIKit.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>3E3E0C63B7FD6CE243C36F309A040FFA</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>433CD3331B6C3787F473C941B61FC68F</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>D0FB9306D21AF23A056944AE037CBFFF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Frameworks</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>43F17D633971EB29BA6C5502DAD478D7</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>3278CE15420555D48F10154A14C5B655</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>442BD4C8DDFCAE23C8387F0A08123EFF</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>43F17D633971EB29BA6C5502DAD478D7</string>\n\t\t\t\t<string>EB16916CE352D525AC3D79A78438C6CE</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>5143F64FD6A46AC5BD9B40A9B140240C</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>FDEBB061F02AE48FBB223A39053A1BE7</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>5397B6189663A5BA5E185B54D0C57739</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>5DB666AC1070276A7247E3A017AB9DC3</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>DDA77454C75886FD6C6750AD906F69A9</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Development Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>641AE05DD55E5E6AC1590CD7B4A18F97</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.script.sh</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-resources.sh</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6569F07DC21AD8B72752685013E3D9D8</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_DYNAMIC_NO_PIC</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_OPTIMIZATION_LEVEL</key>\n\t\t\t\t<string>0</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>DEBUG=1</string>\n\t\t\t\t\t<string>$(inherited)</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>ONLY_ACTIVE_ARCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>70E3CB54A0C786DDC94ACA04CE36E38E</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>5397B6189663A5BA5E185B54D0C57739</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>7DB346D0F39D3F0E887471402A8071AB</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BA6428E9F66FD5A23C0A2E06ED26CD2F</string>\n\t\t\t\t<string>5DB666AC1070276A7247E3A017AB9DC3</string>\n\t\t\t\t<string>433CD3331B6C3787F473C941B61FC68F</string>\n\t\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t\t<string>D2411A5FE7F7A004607BED49990C37F4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>7F56B7ACEFD13ED6610D9BA550FFFD25</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>5143F64FD6A46AC5BD9B40A9B140240C</string>\n\t\t\t\t<string>E10548CCEFDE86903CE46271A6E86A4F</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>8ACC91090BD54C33C91E6156D5D16427</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>A141BF8560DDFBF8BE6AB60B344A49A5</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>90AA9AD5CC4EA1577D3B93BF9D78828D</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>182967A704469F086D39FBC4FB9D9DC5</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>A77135A75ED791EDED04A7F4AB828570</string>\n\t\t\t\t<string>FDDB5C012B7F0A01686E5424B494F675</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array>\n\t\t\t\t<string>A78F74E8A562DC9EFC1AD470B52D0158</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>1683F30D244E3EBCA51481C2EA5AFB16</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>90B58C99D0054C74801A14D045CAB049</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>BAA614E6ADB92FB0CE1C0AE844115ED8</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>952EEBFAF8F7E620423C9F156F25A506</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>15A529C27057E4A57D259CBC6E6CE49C</string>\n\t\t\t\t<string>BF59BC15D23E1E1912C8F334E7236813</string>\n\t\t\t\t<string>A141BF8560DDFBF8BE6AB60B344A49A5</string>\n\t\t\t\t<string>641AE05DD55E5E6AC1590CD7B4A18F97</string>\n\t\t\t\t<string>07016034693ADD6082E0FC107D5541BB</string>\n\t\t\t\t<string>207A3DD8C93C76F69D230273A3D535BC</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Target Support Files/Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>9D2C7F3CF97BF77B1F8C57E069E89C0C</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>C1F62CB4B07D4A5A9F058B60333193C9</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t</dict>\n\t\t<key>9DE3D1892BCB4493894818443EC110AB</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>C94101A52D858CC49788B3D52EACCA26</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>A141BF8560DDFBF8BE6AB60B344A49A5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A14E2444F162A20E3776820E0ADFFB52</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>ENABLE_NS_ASSERTIONS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>RELEASE=1</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t\t<key>VALIDATE_PRODUCT</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>A77135A75ED791EDED04A7F4AB828570</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>8ACC91090BD54C33C91E6156D5D16427</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>A78F74E8A562DC9EFC1AD470B52D0158</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>target</key>\n\t\t\t<string>C1F62CB4B07D4A5A9F058B60333193C9</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>9D2C7F3CF97BF77B1F8C57E069E89C0C</string>\n\t\t</dict>\n\t\t<key>BA5F2A74204C78BC49DB2B36B70C3D69</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>FDEBB061F02AE48FBB223A39053A1BE7</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>BA6428E9F66FD5A23C0A2E06ED26CD2F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Podfile</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Podfile</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SOURCE_ROOT</string>\n\t\t\t<key>xcLanguageSpecificationIdentifier</key>\n\t\t\t<string>xcode.lang.ruby</string>\n\t\t</dict>\n\t\t<key>BAA614E6ADB92FB0CE1C0AE844115ED8</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>BF59BC15D23E1E1912C8F334E7236813</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.xml</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.plist</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C1F62CB4B07D4A5A9F058B60333193C9</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>442BD4C8DDFCAE23C8387F0A08123EFF</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>ECDC82CAD30C2BD977FD1707F2A78834</string>\n\t\t\t\t<string>7F56B7ACEFD13ED6610D9BA550FFFD25</string>\n\t\t\t\t<string>0364FE89F5107F544DEC15166918E2A1</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>19D3E3B802B3750E7D241CA1630453D5</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>C94101A52D858CC49788B3D52EACCA26</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>CB006E9D382450967FBF69905841DE07</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>3E3E0C63B7FD6CE243C36F309A040FFA</string>\n\t\t\t\t<string>3278CE15420555D48F10154A14C5B655</string>\n\t\t\t\t<string>5397B6189663A5BA5E185B54D0C57739</string>\n\t\t\t\t<string>0E0DE69C371E25639152D44D8FF0FCEF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Examples/Applications/Pods/Target Support Files/DZNEmptyDataSet</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>CCA510CFBEA2D207524CDA0D73C3B561</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>19D3E3B802B3750E7D241CA1630453D5</string>\n\t\t\t\t<string>1683F30D244E3EBCA51481C2EA5AFB16</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Products</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D0FB9306D21AF23A056944AE037CBFFF</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>FDEBB061F02AE48FBB223A39053A1BE7</string>\n\t\t\t\t<string>3B20E21A1888BC186989307F796F5F40</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>iOS</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D2411A5FE7F7A004607BED49990C37F4</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>952EEBFAF8F7E620423C9F156F25A506</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Targets Support Files</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D41D8CD98F00B204E9800998ECF8427E</key>\n\t\t<dict>\n\t\t\t<key>attributes</key>\n\t\t\t<dict>\n\t\t\t\t<key>LastSwiftUpdateCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t\t<key>LastUpgradeCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t</dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>2D8E8EC45A3A1A1D94AE762CB5028504</string>\n\t\t\t<key>compatibilityVersion</key>\n\t\t\t<string>Xcode 3.2</string>\n\t\t\t<key>developmentRegion</key>\n\t\t\t<string>English</string>\n\t\t\t<key>hasScannedForEncodings</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXProject</string>\n\t\t\t<key>knownRegions</key>\n\t\t\t<array>\n\t\t\t\t<string>en</string>\n\t\t\t</array>\n\t\t\t<key>mainGroup</key>\n\t\t\t<string>7DB346D0F39D3F0E887471402A8071AB</string>\n\t\t\t<key>productRefGroup</key>\n\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t<key>projectDirPath</key>\n\t\t\t<string></string>\n\t\t\t<key>projectReferences</key>\n\t\t\t<array/>\n\t\t\t<key>projectRoot</key>\n\t\t\t<string></string>\n\t\t\t<key>targets</key>\n\t\t\t<array>\n\t\t\t\t<string>C1F62CB4B07D4A5A9F058B60333193C9</string>\n\t\t\t\t<string>90AA9AD5CC4EA1577D3B93BF9D78828D</string>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>D9C91AF540C4BC50562F32E9295C50D3</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>07016034693ADD6082E0FC107D5541BB</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>DDA77454C75886FD6C6750AD906F69A9</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>F30778E92866A31BE97B2689605CA4C5</string>\n\t\t\t\t<string>CB006E9D382450967FBF69905841DE07</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../../..</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E10548CCEFDE86903CE46271A6E86A4F</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>3B20E21A1888BC186989307F796F5F40</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>EB16916CE352D525AC3D79A78438C6CE</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>3278CE15420555D48F10154A14C5B655</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>ECDC82CAD30C2BD977FD1707F2A78834</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>70E3CB54A0C786DDC94ACA04CE36E38E</string>\n\t\t\t\t<string>9DE3D1892BCB4493894818443EC110AB</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>F30778E92866A31BE97B2689605CA4C5</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BAA614E6ADB92FB0CE1C0AE844115ED8</string>\n\t\t\t\t<string>C94101A52D858CC49788B3D52EACCA26</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>FDDB5C012B7F0A01686E5424B494F675</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>BA5F2A74204C78BC49DB2B36B70C3D69</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>FDEBB061F02AE48FBB223A39053A1BE7</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Foundation.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t</dict>\n\t<key>rootObject</key>\n\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Pods.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"8FA520376387F1E545C3C067\"\n               BuildableName = \"libDZNEmptyDataSet.a\"\n               BlueprintName = \"DZNEmptyDataSet\"\n               ReferencedContainer = \"container:Pods.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <AdditionalOptions>\n      </AdditionalOptions>\n      <Testables>\n      </Testables>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-Private.xcconfig",
    "content": "#include \"DZNEmptyDataSet.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = ${DZNEMPTYDATASET_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_DZNEmptyDataSet : NSObject\n@end\n@implementation PodsDummy_DZNEmptyDataSet\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet.xcconfig",
    "content": "DZNEMPTYDATASET_OTHER_LDFLAGS = -framework \"UIKit\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown",
    "content": "# Acknowledgements\nThis application makes use of the following third party libraries:\n\n## DZNEmptyDataSet\n\nThe MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nGenerated by CocoaPods - http://cocoapods.org\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods-acknowledgements.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreferenceSpecifiers</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>This application makes use of the following third party libraries:</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Acknowledgements</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>Generated by CocoaPods - http://cocoapods.org</string>\n\t\t\t<key>Title</key>\n\t\t\t<string></string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t</array>\n\t<key>StringsTable</key>\n\t<string>Acknowledgements</string>\n\t<key>Title</key>\n\t<string>Acknowledgements</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_Pods : NSObject\n@end\n@implementation PodsDummy_Pods\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods-resources.sh",
    "content": "#!/bin/sh\nset -e\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n\nRESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt\n> \"$RESOURCES_TO_COPY\"\n\nXCASSET_FILES=()\n\nrealpath() {\n  DIRECTORY=\"$(cd \"${1%/*}\" && pwd)\"\n  FILENAME=\"${1##*/}\"\n  echo \"$DIRECTORY/$FILENAME\"\n}\n\ninstall_resource()\n{\n  case $1 in\n    *.storyboard)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.xib)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.framework)\n      echo \"mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      mkdir -p \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      echo \"rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      rsync -av \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      ;;\n    *.xcdatamodel)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\"`.mom\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodel`.mom\"\n      ;;\n    *.xcdatamodeld)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\"\n      ;;\n    *.xcmappingmodel)\n      echo \"xcrun mapc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\\\"\"\n      xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\"\n      ;;\n    *.xcassets)\n      ABSOLUTE_XCASSET_FILE=$(realpath \"${PODS_ROOT}/$1\")\n      XCASSET_FILES+=(\"$ABSOLUTE_XCASSET_FILE\")\n      ;;\n    /*)\n      echo \"$1\"\n      echo \"$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n    *)\n      echo \"${PODS_ROOT}/$1\"\n      echo \"${PODS_ROOT}/$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n  esac\n}\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nrsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nif [[ \"${ACTION}\" == \"install\" ]]; then\n  mkdir -p \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\nrm -f \"$RESOURCES_TO_COPY\"\n\nif [[ -n \"${WRAPPER_EXTENSION}\" ]] && [ \"`xcrun --find actool`\" ] && [ -n \"$XCASSET_FILES\" ]\nthen\n  case \"${TARGETED_DEVICE_FAMILY}\" in\n    1,2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad --target-device iphone\"\n      ;;\n    1)\n      TARGET_DEVICE_ARGS=\"--target-device iphone\"\n      ;;\n    2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad\"\n      ;;\n    *)\n      TARGET_DEVICE_ARGS=\"--target-device mac\"\n      ;;\n  esac\n\n  # Find all other xcassets (this unfortunately includes those of path pods and other targets).\n  OTHER_XCASSETS=$(find \"$PWD\" -iname \"*.xcassets\" -type d)\n  while read line; do\n    if [[ $line != \"`realpath $PODS_ROOT`*\" ]]; then\n      XCASSET_FILES+=(\"$line\")\n    fi\n  done <<<\"$OTHER_XCASSETS\"\n\n  printf \"%s\\0\" \"${XCASSET_FILES[@]}\" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform \"${PLATFORM_NAME}\" --minimum-deployment-target \"${IPHONEOS_DEPLOYMENT_TARGET}\" ${TARGET_DEVICE_ARGS} --compress-pngs --compile \"${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods.debug.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Applications/Pods/Target Support Files/Pods/Pods.release.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/AppDelegate.h",
    "content": "//\n//  AppDelegate.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/19/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface AppDelegate : UIResponder <UIApplicationDelegate>\n\n@property (strong, nonatomic) UIWindow *window;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/AppDelegate.m",
    "content": "//\n//  AppDelegate.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/19/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"AppDelegate.h\"\n\n@implementation AppDelegate\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n    self.window.backgroundColor = [UIColor whiteColor];\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/CollectionViewController.h",
    "content": "//\n//  CollectionViewController.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/19/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface CollectionViewController : UICollectionViewController\n\n- (IBAction)refreshColors:(id)sender;\n- (IBAction)removeColors:(id)sender;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/CollectionViewController.m",
    "content": "//\n//  CollectionViewController.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/19/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"CollectionViewController.h\"\n#import \"SearchViewController.h\"\n#import \"Palette.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n#define kColumnCountMax 7\n#define kColumnCountMin 5\n\nstatic NSString *CellIdentifier = @\"ColorViewCell\";\n\n@interface CollectionViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@property (nonatomic) NSInteger columnCount;\n@property (nonatomic, strong) NSMutableArray *filteredPalette;\n@end\n\n@implementation CollectionViewController\n\n#pragma mark - View lifecycle\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    \n    self.title = @\"Collection\";\n    self.tabBarItem = [[UITabBarItem alloc] initWithTitle:self.title image:[UIImage imageNamed:@\"tab_collection\"] tag:self.title.hash];\n}\n\n- (void)loadView\n{\n    [super loadView];\n        \n    UICollectionViewFlowLayout *layout = (UICollectionViewFlowLayout *)self.collectionViewLayout;\n    layout.minimumLineSpacing = 2.0;\n    layout.minimumInteritemSpacing = 2;\n    layout.scrollDirection = UICollectionViewScrollDirectionVertical;\n\n    CGFloat inset = layout.minimumLineSpacing*1.5;\n\n    self.collectionView.contentInset = UIEdgeInsetsMake(inset, 0.0, inset, 0.0);\n    self.collectionView.scrollIndicatorInsets = UIEdgeInsetsMake(0.0, 0.0, 0.0, 0.0);\n\n    [self.collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:CellIdentifier];\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    [self.collectionView reloadData];\n}\n\n- (void)viewDidAppear:(BOOL)animated\n{\n    [super viewDidAppear:animated];\n}\n\n\n#pragma mark - Getters\n\n- (NSInteger)columnCount\n{\n    return UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation) ? kColumnCountMax : kColumnCountMin;\n}\n\n- (CGSize)cellSize\n{\n    UICollectionViewFlowLayout *flowLayout = (UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout;\n    CGFloat size = (self.navigationController.view.bounds.size.width/self.columnCount) - flowLayout.minimumLineSpacing;\n    return CGSizeMake(size, size);\n}\n\n- (NSMutableArray *)filteredPalette\n{\n    // Randomly filtered palette\n    if (!_filteredPalette)\n    {\n        _filteredPalette = [[NSMutableArray alloc] initWithArray:[[Palette sharedPalette] colors]];\n        \n        for (NSInteger i = _filteredPalette.count-1; i > 0; i--) {\n            [_filteredPalette exchangeObjectAtIndex:i withObjectAtIndex:arc4random_uniform(i+1.0)];\n        }\n    }\n    return _filteredPalette;\n}\n\n\n#pragma mark - Actions\n\n- (IBAction)refreshColors:(id)sender\n{\n    [[Palette sharedPalette] reloadAll];\n    [self setFilteredPalette:nil];\n    \n    [self.collectionView reloadData];\n}\n\n- (IBAction)removeColors:(id)sender\n{\n    [[Palette sharedPalette] removeAll];\n    [_filteredPalette removeAllObjects];\n    \n    [self.collectionView reloadData];\n}\n\n- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender\n{\n    if ([[segue identifier] isEqualToString:@\"collection_push_detail\"])\n    {\n        SearchViewController *controller = [segue destinationViewController];\n        controller.selectedColor = sender;\n    }\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"No colors loaded\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:17.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"To show a list of random colors, tap on the refresh icon in the right top corner.\\n\\nTo clean the list, tap on the trash icon.\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:15.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    return nil;\n}\n\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIImage imageNamed:@\"empty_placeholder\"];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return nil;\n}\n\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return 0;\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n\n#pragma mark - UICollectionViewDataSource methods\n\n- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView\n{\n    return 1;\n}\n\n- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section\n{\n    return [self.filteredPalette count];\n}\n\n- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath];\n    cell.selectedBackgroundView = [UIView new];\n    cell.selectedBackgroundView.backgroundColor = [UIColor colorWithWhite:0 alpha:0.25];\n    \n    Color *color = self.filteredPalette[indexPath.row];\n    cell.backgroundColor = color.color;\n\n    return cell;\n}\n\n\n#pragma mark - UICollectionViewDataDelegate methods\n\n- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    Color *color = self.filteredPalette[indexPath.row];\n    \n    if ([self shouldPerformSegueWithIdentifier:@\"collection_push_detail\" sender:color]) {\n        [self performSegueWithIdentifier:@\"collection_push_detail\" sender:color];\n    }\n}\n\n- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    return [self cellSize];\n}\n\n- (BOOL)collectionView:(UICollectionView *)collectionView shouldShowMenuForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    return YES;\n}\n\n- (BOOL)collectionView:(UICollectionView *)collectionView canPerformAction:(SEL)action forItemAtIndexPath:(NSIndexPath *)indexPath withSender:(id)sender\n{\n    if ([NSStringFromSelector(action) isEqualToString:@\"copy:\"]) {\n        return YES;\n    }\n    return NO;\n}\n\n- (void)collectionView:(UICollectionView *)collectionView performAction:(SEL)action forItemAtIndexPath:(NSIndexPath *)indexPath withSender:(id)sender\n{\n    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{\n        \n        if ([NSStringFromSelector(action) isEqualToString:@\"copy:\"]) {\n            Color *color = self.filteredPalette[indexPath.row];\n            if (color.hex.length > 0) [[UIPasteboard generalPasteboard] setString:color.hex];\n        }\n    });\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration\n{\n    if (![UIInputViewController class]) {\n        [self.collectionView reloadData];\n    }\n}\n\n- (void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator\n{\n    [self.collectionView reloadData];\n}\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Colors-Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleDisplayName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIcons</key>\n\t<dict/>\n\t<key>CFBundleIcons~ipad</key>\n\t<dict/>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1.0</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UIMainStoryboardFile</key>\n\t<string>Storyboard</string>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Colors-Prefix.pch",
    "content": "//\n//  Prefix header\n//\n//  The contents of this file are implicitly included at the beginning of every source file.\n//\n\n#import <Availability.h>\n\n#ifndef __IPHONE_3_0\n#warning \"This project uses features only available in iOS SDK 3.0 and later.\"\n#endif\n\n#ifdef __OBJC__\n    #import <UIKit/UIKit.h>\n    #import <Foundation/Foundation.h>\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/Color.h",
    "content": "//\n//  Palette.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@interface Color : NSObject\n\n@property (nonatomic, strong) NSString *hex;\n@property (nonatomic, strong) NSString *name;\n@property (nonatomic, strong) NSString *rgb;\n\n@property (nonatomic, weak) UIColor *color;\n\n- (instancetype)initWithDictionary:(NSDictionary *)dict;\n\n+ (UIImage *)roundThumbWithColor:(UIColor *)color;\n+ (UIImage *)roundImageForSize:(CGSize)size withColor:(UIColor *)color;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/Color.m",
    "content": "//\n//  Palette.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"Color.h\"\n#import \"UIColor+Hex.h\"\n\n@implementation Color\n\n- (instancetype)initWithDictionary:(NSDictionary *)dict\n{\n    if (!dict) {\n        return nil;\n    }\n    \n    self = [super init];\n    if (self) {\n        self.hex = [dict objectForKey:@\"hex\"];\n        self.name = [dict objectForKey:@\"name\"];\n        self.rgb = [dict objectForKey:@\"rgb\"];\n    }\n    return self;\n}\n\n- (UIColor *)color\n{\n    return [UIColor colorFromHex:self.hex];\n}\n\n+ (UIImage *)roundThumbWithColor:(UIColor *)color\n{\n    return [self roundImageForSize:CGSizeMake(32.0, 32.0) withColor:color];\n}\n\n+ (UIImage *)roundImageForSize:(CGSize)size withColor:(UIColor *)color\n{\n    if (!color) {\n        return nil;\n    }\n    \n    // Constants\n    CGRect bounds = CGRectMake(0, 0, size.width, size.height);\n    \n    // Create the image context\n    UIGraphicsBeginImageContextWithOptions(bounds.size, NO, 0);\n    \n    //// Oval Drawing\n    UIBezierPath *ovalPath = [UIBezierPath bezierPathWithOvalInRect:bounds];\n    [color setFill];\n    [ovalPath fill];\n    \n    //Create the image using the current context.\n    UIImage *_image = UIGraphicsGetImageFromCurrentImageContext();\n    UIGraphicsEndImageContext();\n    \n    return _image;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/Palette.h",
    "content": "//\n//  ColorPalette.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/1/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"Color.h\"\n\n@interface Palette : NSObject\n\n@property (nonatomic, readonly) NSMutableArray *colors;\n\n+ (instancetype)sharedPalette;\n\n- (void)reloadAll;\n- (void)removeColor:(Color *)color;\n- (void)removeAll;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/Palette.m",
    "content": "//\n//  ColorSource.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/1/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"Palette.h\"\n\n@interface Palette ()\n@end\n\nstatic Palette *_sharedPalette = nil;\n\n@implementation Palette\n@synthesize colors = _colors;\n\n+ (instancetype)sharedPalette\n{\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        _sharedPalette = [[Palette alloc] init];\n        [_sharedPalette loadColors];\n    });\n    return _sharedPalette;\n}\n\n- (void)loadColors\n{\n    // A list of crayola colors in JSON by Jjdelc https://gist.github.com/jjdelc/1868136\n    NSString *path = [[NSBundle mainBundle] pathForResource:@\"colors\" ofType:@\"json\"];\n    NSData *data = [NSData dataWithContentsOfFile:path];\n    NSArray *objects = [[NSJSONSerialization JSONObjectWithData:data options:kNilOptions|NSJSONWritingPrettyPrinted error:nil] mutableCopy];\n        \n    _colors = [[NSMutableArray alloc] initWithCapacity:objects.count];\n    \n    for (NSDictionary *dictionary in objects) {\n        Color *color = [[Color alloc] initWithDictionary:dictionary];\n        [_colors addObject:color];\n    }\n}\n\n- (void)reloadAll\n{\n    [self removeAll];\n    [self loadColors];\n}\n\n- (void)removeColor:(Color *)color\n{\n    NSInteger idx = [_colors indexOfObject:color];\n    \n    if (idx >= 0 && idx < _colors.count) {\n        [_colors removeObjectAtIndex:idx];\n    }\n}\n\n- (void)removeAll\n{\n    [_colors removeAllObjects];\n    _colors = nil;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/UIColor+Hex.h",
    "content": "//\n//  UIColor+Hex.h\n//  Colors\n//\n//  Created by Ignacio Romero on 4/26/16.\n//  Copyright © 2016 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface UIColor (Hex)\n\n+ (UIColor *)colorFromHex:(NSString *)hex;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/UIColor+Hex.m",
    "content": "//\n//  UIColor+Hex.m\n//  Colors\n//\n//  Created by Ignacio Romero on 4/26/16.\n//  Copyright © 2016 DZN Labs. All rights reserved.\n//\n\n#import \"UIColor+Hex.h\"\n\n@implementation UIColor (Hex)\n\n+ (UIColor *)colorFromHex:(NSString *)hex\n{\n    return [self colorFromHex:hex alpha:1.0];\n}\n\n+ (UIColor *)colorFromHex:(NSString *)hex alpha:(CGFloat)alpha\n{\n    NSUInteger offset = 0;\n    \n    if ([hex hasPrefix:@\"#\"]) {\n        offset = 1;\n    }\n    \n    NSString *string = [hex substringFromIndex:offset];\n    \n    if (string.length == 3) {\n        string = [NSString stringWithFormat:@\"%@%@%@%@%@%@\",\n                  [string substringWithRange:NSMakeRange(0, 1)],\n                  [string substringWithRange:NSMakeRange(0, 1)],\n                  [string substringWithRange:NSMakeRange(1, 1)],\n                  [string substringWithRange:NSMakeRange(1, 1)],\n                  [string substringWithRange:NSMakeRange(2, 1)],\n                  [string substringWithRange:NSMakeRange(2, 1)]];\n    }\n    \n    if (string.length == 6) {\n        string = [string stringByAppendingString:@\"ff\"];\n    }\n    \n    if (string == nil) {\n        return nil;\n    }\n    \n    unsigned int baseValue;\n    [[NSScanner scannerWithString:string] scanHexInt:&baseValue];\n    \n    float red = ((baseValue >> 24) & 0xFF)/255.0f;\n    float green = ((baseValue >> 16) & 0xFF)/255.0f;\n    float blue = ((baseValue >> 8) & 0xFF)/255.0f;\n    \n    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/DataSource/colors.json",
    "content": " [\n  {\n  \"hex\": \"EFDECD\",\n  \"name\": \"Almond\",\n  \"rgb\": \"(239, 222, 205)\"\n  },\n  {\n  \"hex\": \"CD9575\",\n  \"name\": \"Antique Brass\",\n  \"rgb\": \"(205, 149, 117)\"\n  },\n  {\n  \"hex\": \"FDD9B5\",\n  \"name\": \"Apricot\",\n  \"rgb\": \"(253, 217, 181)\"\n  },\n  {\n  \"hex\": \"78DBE2\",\n  \"name\": \"Aquamarine\",\n  \"rgb\": \"(120, 219, 226)\"\n  },\n  {\n  \"hex\": \"87A96B\",\n  \"name\": \"Asparagus\",\n  \"rgb\": \"(135, 169, 107)\"\n  },\n  {\n  \"hex\": \"FFA474\",\n  \"name\": \"Atomic Tangerine\",\n  \"rgb\": \"(255, 164, 116)\"\n  },\n  {\n  \"hex\": \"FAE7B5\",\n  \"name\": \"Banana Mania\",\n  \"rgb\": \"(250, 231, 181)\"\n  },\n  {\n  \"hex\": \"9F8170\",\n  \"name\": \"Beaver\",\n  \"rgb\": \"(159, 129, 112)\"\n  },\n  {\n  \"hex\": \"FD7C6E\",\n  \"name\": \"Bittersweet\",\n  \"rgb\": \"(253, 124, 110)\"\n  },\n  {\n  \"hex\": \"000000\",\n  \"name\": \"Black\",\n  \"rgb\": \"(0,0,0)\"\n  },\n  {\n  \"hex\": \"ACE5EE\",\n  \"name\": \"Blizzard Blue\",\n  \"rgb\": \"(172, 229, 238)\"\n  },\n  {\n  \"hex\": \"1F75FE\",\n  \"name\": \"Blue\",\n  \"rgb\": \"(31, 117, 254)\"\n  },\n  {\n  \"hex\": \"A2A2D0\",\n  \"name\": \"Blue Bell\",\n  \"rgb\": \"(162, 162, 208)\"\n  },\n  {\n  \"hex\": \"6699CC\",\n  \"name\": \"Blue Gray\",\n  \"rgb\": \"(102, 153, 204)\"\n  },\n  {\n  \"hex\": \"0D98BA\",\n  \"name\": \"Blue Green\",\n  \"rgb\": \"(13, 152, 186)\"\n  },\n  {\n  \"hex\": \"7366BD\",\n  \"name\": \"Blue Violet\",\n  \"rgb\": \"(115, 102, 189)\"\n  },\n  {\n  \"hex\": \"DE5D83\",\n  \"name\": \"Blush\",\n  \"rgb\": \"(222, 93, 131)\"\n  },\n  {\n  \"hex\": \"CB4154\",\n  \"name\": \"Brick Red\",\n  \"rgb\": \"(203, 65, 84)\"\n  },\n  {\n  \"hex\": \"B4674D\",\n  \"name\": \"Brown\",\n  \"rgb\": \"(180, 103, 77)\"\n  },\n  {\n  \"hex\": \"FF7F49\",\n  \"name\": \"Burnt Orange\",\n  \"rgb\": \"(255, 127, 73)\"\n  },\n  {\n  \"hex\": \"EA7E5D\",\n  \"name\": \"Burnt Sienna\",\n  \"rgb\": \"(234, 126, 93)\"\n  },\n  {\n  \"hex\": \"B0B7C6\",\n  \"name\": \"Cadet Blue\",\n  \"rgb\": \"(176, 183, 198)\"\n  },\n  {\n  \"hex\": \"FFFF99\",\n  \"name\": \"Canary\",\n  \"rgb\": \"(255, 255, 153)\"\n  },\n  {\n  \"hex\": \"1CD3A2\",\n  \"name\": \"Caribbean Green\",\n  \"rgb\": \"(28, 211, 162)\"\n  },\n  {\n  \"hex\": \"FFAACC\",\n  \"name\": \"Carnation Pink\",\n  \"rgb\": \"(255, 170, 204)\"\n  },\n  {\n  \"hex\": \"DD4492\",\n  \"name\": \"Cerise\",\n  \"rgb\": \"(221, 68, 146)\"\n  },\n  {\n  \"hex\": \"1DACD6\",\n  \"name\": \"Cerulean\",\n  \"rgb\": \"(29, 172, 214)\"\n  },\n  {\n  \"hex\": \"BC5D58\",\n  \"name\": \"Chestnut\",\n  \"rgb\": \"(188, 93, 88)\"\n  },\n  {\n  \"hex\": \"DD9475\",\n  \"name\": \"Copper\",\n  \"rgb\": \"(221, 148, 117)\"\n  },\n  {\n  \"hex\": \"9ACEEB\",\n  \"name\": \"Cornflower\",\n  \"rgb\": \"(154, 206, 235)\"\n  },\n  {\n  \"hex\": \"FFBCD9\",\n  \"name\": \"Cotton Candy\",\n  \"rgb\": \"(255, 188, 217)\"\n  },\n  {\n  \"hex\": \"FDDB6D\",\n  \"name\": \"Dandelion\",\n  \"rgb\": \"(253, 219, 109)\"\n  },\n  {\n  \"hex\": \"2B6CC4\",\n  \"name\": \"Denim\",\n  \"rgb\": \"(43, 108, 196)\"\n  },\n  {\n  \"hex\": \"EFCDB8\",\n  \"name\": \"Desert Sand\",\n  \"rgb\": \"(239, 205, 184)\"\n  },\n  {\n  \"hex\": \"6E5160\",\n  \"name\": \"Eggplant\",\n  \"rgb\": \"(110, 81, 96)\"\n  },\n  {\n  \"hex\": \"CEFF1D\",\n  \"name\": \"Electric Lime\",\n  \"rgb\": \"(206, 255, 29)\"\n  },\n  {\n  \"hex\": \"71BC78\",\n  \"name\": \"Fern\",\n  \"rgb\": \"(113, 188, 120)\"\n  },\n  {\n  \"hex\": \"6DAE81\",\n  \"name\": \"Forest Green\",\n  \"rgb\": \"(109, 174, 129)\"\n  },\n  {\n  \"hex\": \"C364C5\",\n  \"name\": \"Fuchsia\",\n  \"rgb\": \"(195, 100, 197)\"\n  },\n  {\n  \"hex\": \"CC6666\",\n  \"name\": \"Fuzzy Wuzzy\",\n  \"rgb\": \"(204, 102, 102)\"\n  },\n  {\n  \"hex\": \"E7C697\",\n  \"name\": \"Gold\",\n  \"rgb\": \"(231, 198, 151)\"\n  },\n  {\n  \"hex\": \"FCD975\",\n  \"name\": \"Goldenrod\",\n  \"rgb\": \"(252, 217, 117)\"\n  },\n  {\n  \"hex\": \"A8E4A0\",\n  \"name\": \"Granny Smith Apple\",\n  \"rgb\": \"(168, 228, 160)\"\n  },\n  {\n  \"hex\": \"95918C\",\n  \"name\": \"Gray\",\n  \"rgb\": \"(149, 145, 140)\"\n  },\n  {\n  \"hex\": \"1CAC78\",\n  \"name\": \"Green\",\n  \"rgb\": \"(28, 172, 120)\"\n  },\n  {\n  \"hex\": \"1164B4\",\n  \"name\": \"Green Blue\",\n  \"rgb\": \"(17, 100, 180)\"\n  },\n  {\n  \"hex\": \"F0E891\",\n  \"name\": \"Green Yellow\",\n  \"rgb\": \"(240, 232, 145)\"\n  },\n  {\n  \"hex\": \"FF1DCE\",\n  \"name\": \"Hot Magenta\",\n  \"rgb\": \"(255, 29, 206)\"\n  },\n  {\n  \"hex\": \"B2EC5D\",\n  \"name\": \"Inchworm\",\n  \"rgb\": \"(178, 236, 93)\"\n  },\n  {\n  \"hex\": \"5D76CB\",\n  \"name\": \"Indigo\",\n  \"rgb\": \"(93, 118, 203)\"\n  },\n  {\n  \"hex\": \"CA3767\",\n  \"name\": \"Jazzberry Jam\",\n  \"rgb\": \"(202, 55, 103)\"\n  },\n  {\n  \"hex\": \"3BB08F\",\n  \"name\": \"Jungle Green\",\n  \"rgb\": \"(59, 176, 143)\"\n  },\n  {\n  \"hex\": \"FEFE22\",\n  \"name\": \"Laser Lemon\",\n  \"rgb\": \"(254, 254, 34)\"\n  },\n  {\n  \"hex\": \"FCB4D5\",\n  \"name\": \"Lavender\",\n  \"rgb\": \"(252, 180, 213)\"\n  },\n  {\n  \"hex\": \"FFF44F\",\n  \"name\": \"Lemon Yellow\",\n  \"rgb\": \"(255, 244, 79)\"\n  },\n  {\n  \"hex\": \"FFBD88\",\n  \"name\": \"Macaroni and Cheese\",\n  \"rgb\": \"(255, 189, 136)\"\n  },\n  {\n  \"hex\": \"F664AF\",\n  \"name\": \"Magenta\",\n  \"rgb\": \"(246, 100, 175)\"\n  },\n  {\n  \"hex\": \"AAF0D1\",\n  \"name\": \"Magic Mint\",\n  \"rgb\": \"(170, 240, 209)\"\n  },\n  {\n  \"hex\": \"CD4A4C\",\n  \"name\": \"Mahogany\",\n  \"rgb\": \"(205, 74, 76)\"\n  },\n  {\n  \"hex\": \"EDD19C\",\n  \"name\": \"Maize\",\n  \"rgb\": \"(237, 209, 156)\"\n  },\n  {\n  \"hex\": \"979AAA\",\n  \"name\": \"Manatee\",\n  \"rgb\": \"(151, 154, 170)\"\n  },\n  {\n  \"hex\": \"FF8243\",\n  \"name\": \"Mango Tango\",\n  \"rgb\": \"(255, 130, 67)\"\n  },\n  {\n  \"hex\": \"C8385A\",\n  \"name\": \"Maroon\",\n  \"rgb\": \"(200, 56, 90)\"\n  },\n  {\n  \"hex\": \"EF98AA\",\n  \"name\": \"Mauvelous\",\n  \"rgb\": \"(239, 152, 170)\"\n  },\n  {\n  \"hex\": \"FDBCB4\",\n  \"name\": \"Melon\",\n  \"rgb\": \"(253, 188, 180)\"\n  },\n  {\n  \"hex\": \"1A4876\",\n  \"name\": \"Midnight Blue\",\n  \"rgb\": \"(26, 72, 118)\"\n  },\n  {\n  \"hex\": \"30BA8F\",\n  \"name\": \"Mountain Meadow\",\n  \"rgb\": \"(48, 186, 143)\"\n  },\n  {\n  \"hex\": \"C54B8C\",\n  \"name\": \"Mulberry\",\n  \"rgb\": \"(197, 75, 140)\"\n  },\n  {\n  \"hex\": \"1974D2\",\n  \"name\": \"Navy Blue\",\n  \"rgb\": \"(25, 116, 210)\"\n  },\n  {\n  \"hex\": \"FFA343\",\n  \"name\": \"Neon Carrot\",\n  \"rgb\": \"(255, 163, 67)\"\n  },\n  {\n  \"hex\": \"BAB86C\",\n  \"name\": \"Olive Green\",\n  \"rgb\": \"(186, 184, 108)\"\n  },\n  {\n  \"hex\": \"FF7538\",\n  \"name\": \"Orange\",\n  \"rgb\": \"(255, 117, 56)\"\n  },\n  {\n  \"hex\": \"FF2B2B\",\n  \"name\": \"Orange Red\",\n  \"rgb\": \"(255, 43, 43)\"\n  },\n  {\n  \"hex\": \"F8D568\",\n  \"name\": \"Orange Yellow\",\n  \"rgb\": \"(248, 213, 104)\"\n  },\n  {\n  \"hex\": \"E6A8D7\",\n  \"name\": \"Orchid\",\n  \"rgb\": \"(230, 168, 215)\"\n  },\n  {\n  \"hex\": \"414A4C\",\n  \"name\": \"Outer Space\",\n  \"rgb\": \"(65, 74, 76)\"\n  },\n  {\n  \"hex\": \"FF6E4A\",\n  \"name\": \"Outrageous Orange\",\n  \"rgb\": \"(255, 110, 74)\"\n  },\n  {\n  \"hex\": \"1CA9C9\",\n  \"name\": \"Pacific Blue\",\n  \"rgb\": \"(28, 169, 201)\"\n  },\n  {\n  \"hex\": \"FFCFAB\",\n  \"name\": \"Peach\",\n  \"rgb\": \"(255, 207, 171)\"\n  },\n  {\n  \"hex\": \"C5D0E6\",\n  \"name\": \"Periwinkle\",\n  \"rgb\": \"(197, 208, 230)\"\n  },\n  {\n  \"hex\": \"FDDDE6\",\n  \"name\": \"Piggy Pink\",\n  \"rgb\": \"(253, 221, 230)\"\n  },\n  {\n  \"hex\": \"158078\",\n  \"name\": \"Pine Green\",\n  \"rgb\": \"(21, 128, 120)\"\n  },\n  {\n  \"hex\": \"FC74FD\",\n  \"name\": \"Pink Flamingo\",\n  \"rgb\": \"(252, 116, 253)\"\n  },\n  {\n  \"hex\": \"F78FA7\",\n  \"name\": \"Pink Sherbet\",\n  \"rgb\": \"(247, 143, 167)\"\n  },\n  {\n  \"hex\": \"8E4585\",\n  \"name\": \"Plum\",\n  \"rgb\": \"(142, 69, 133)\"\n  },\n  {\n  \"hex\": \"7442C8\",\n  \"name\": \"Purple Heart\",\n  \"rgb\": \"(116, 66, 200)\"\n  },\n  {\n  \"hex\": \"9D81BA\",\n  \"name\": \"Purple Mountain's Majesty\",\n  \"rgb\": \"(157, 129, 186)\"\n  },\n  {\n  \"hex\": \"FE4EDA\",\n  \"name\": \"Purple Pizzazz\",\n  \"rgb\": \"(254, 78, 218)\"\n  },\n  {\n  \"hex\": \"FF496C\",\n  \"name\": \"Radical Red\",\n  \"rgb\": \"(255, 73, 108)\"\n  },\n  {\n  \"hex\": \"D68A59\",\n  \"name\": \"Raw Sienna\",\n  \"rgb\": \"(214, 138, 89)\"\n  },\n  {\n  \"hex\": \"714B23\",\n  \"name\": \"Raw Umber\",\n  \"rgb\": \"(113, 75, 35)\"\n  },\n  {\n  \"hex\": \"FF48D0\",\n  \"name\": \"Razzle Dazzle Rose\",\n  \"rgb\": \"(255, 72, 208)\"\n  },\n  {\n  \"hex\": \"E3256B\",\n  \"name\": \"Razzmatazz\",\n  \"rgb\": \"(227, 37, 107)\"\n  },\n  {\n  \"hex\": \"EE204D\",\n  \"name\": \"Red\",\n  \"rgb\": \"(238,32 ,77 )\"\n  },\n  {\n  \"hex\": \"FF5349\",\n  \"name\": \"Red Orange\",\n  \"rgb\": \"(255, 83, 73)\"\n  },\n  {\n  \"hex\": \"C0448F\",\n  \"name\": \"Red Violet\",\n  \"rgb\": \"(192, 68, 143)\"\n  },\n  {\n  \"hex\": \"1FCECB\",\n  \"name\": \"Robin's Egg Blue\",\n  \"rgb\": \"(31, 206, 203)\"\n  },\n  {\n  \"hex\": \"7851A9\",\n  \"name\": \"Royal Purple\",\n  \"rgb\": \"(120, 81, 169)\"\n  },\n  {\n  \"hex\": \"FF9BAA\",\n  \"name\": \"Salmon\",\n  \"rgb\": \"(255, 155, 170)\"\n  },\n  {\n  \"hex\": \"FC2847\",\n  \"name\": \"Scarlet\",\n  \"rgb\": \"(252, 40, 71)\"\n  },\n  {\n  \"hex\": \"76FF7A\",\n  \"name\": \"Screamin' Green\",\n  \"rgb\": \"(118, 255, 122)\"\n  },\n  {\n  \"hex\": \"9FE2BF\",\n  \"name\": \"Sea Green\",\n  \"rgb\": \"(159, 226, 191)\"\n  },\n  {\n  \"hex\": \"A5694F\",\n  \"name\": \"Sepia\",\n  \"rgb\": \"(165, 105, 79)\"\n  },\n  {\n  \"hex\": \"8A795D\",\n  \"name\": \"Shadow\",\n  \"rgb\": \"(138, 121, 93)\"\n  },\n  {\n  \"hex\": \"45CEA2\",\n  \"name\": \"Shamrock\",\n  \"rgb\": \"(69, 206, 162)\"\n  },\n  {\n  \"hex\": \"FB7EFD\",\n  \"name\": \"Shocking Pink\",\n  \"rgb\": \"(251, 126, 253)\"\n  },\n  {\n  \"hex\": \"CDC5C2\",\n  \"name\": \"Silver\",\n  \"rgb\": \"(205, 197, 194)\"\n  },\n  {\n  \"hex\": \"80DAEB\",\n  \"name\": \"Sky Blue\",\n  \"rgb\": \"(128, 218, 235)\"\n  },\n  {\n  \"hex\": \"ECEABE\",\n  \"name\": \"Spring Green\",\n  \"rgb\": \"(236, 234, 190)\"\n  },\n  {\n  \"hex\": \"FFCF48\",\n  \"name\": \"Sunglow\",\n  \"rgb\": \"(255, 207, 72)\"\n  },\n  {\n  \"hex\": \"FD5E53\",\n  \"name\": \"Sunset Orange\",\n  \"rgb\": \"(253, 94, 83)\"\n  },\n  {\n  \"hex\": \"FAA76C\",\n  \"name\": \"Tan\",\n  \"rgb\": \"(250, 167, 108)\"\n  },\n  {\n  \"hex\": \"18A7B5\",\n  \"name\": \"Teal Blue\",\n  \"rgb\": \"(24, 167, 181)\"\n  },\n  {\n  \"hex\": \"EBC7DF\",\n  \"name\": \"Thistle\",\n  \"rgb\": \"(235, 199, 223)\"\n  },\n  {\n  \"hex\": \"FC89AC\",\n  \"name\": \"Tickle Me Pink\",\n  \"rgb\": \"(252, 137, 172)\"\n  },\n  {\n  \"hex\": \"DBD7D2\",\n  \"name\": \"Timberwolf\",\n  \"rgb\": \"(219, 215, 210)\"\n  },\n  {\n  \"hex\": \"17806D\",\n  \"name\": \"Tropical Rain Forest\",\n  \"rgb\": \"(23, 128, 109)\"\n  },\n  {\n  \"hex\": \"DEAA88\",\n  \"name\": \"Tumbleweed\",\n  \"rgb\": \"(222, 170, 136)\"\n  },\n  {\n  \"hex\": \"77DDE7\",\n  \"name\": \"Turquoise Blue\",\n  \"rgb\": \"(119, 221, 231)\"\n  },\n  {\n  \"hex\": \"FFFF66\",\n  \"name\": \"Unmellow Yellow\",\n  \"rgb\": \"(255, 255, 102)\"\n  },\n  {\n  \"hex\": \"926EAE\",\n  \"name\": \"Violet (Purple)\",\n  \"rgb\": \"(146, 110, 174)\"\n  },\n  {\n  \"hex\": \"324AB2\",\n  \"name\": \"Violet Blue\",\n  \"rgb\": \"(50, 74, 178)\"\n  },\n  {\n  \"hex\": \"F75394\",\n  \"name\": \"Violet Red\",\n  \"rgb\": \"(247, 83, 148)\"\n  },\n  {\n  \"hex\": \"FFA089\",\n  \"name\": \"Vivid Tangerine\",\n  \"rgb\": \"(255, 160, 137)\"\n  },\n  {\n  \"hex\": \"8F509D\",\n  \"name\": \"Vivid Violet\",\n  \"rgb\": \"(143, 80, 157)\"\n  },\n  {\n  \"hex\": \"FFFFFF\",\n  \"name\": \"White\",\n  \"rgb\": \"(255, 255, 255)\"\n  },\n  {\n  \"hex\": \"A2ADD0\",\n  \"name\": \"Wild Blue Yonder\",\n  \"rgb\": \"(162, 173, 208)\"\n  },\n  {\n  \"hex\": \"FF43A4\",\n  \"name\": \"Wild Strawberry\",\n  \"rgb\": \"(255, 67, 164)\"\n  },\n  {\n  \"hex\": \"FC6C85\",\n  \"name\": \"Wild Watermelon\",\n  \"rgb\": \"(252, 108, 133)\"\n  },\n  {\n  \"hex\": \"CDA4DE\",\n  \"name\": \"Wisteria\",\n  \"rgb\": \"(205, 164, 222)\"\n  },\n  {\n  \"hex\": \"FCE883\",\n  \"name\": \"Yellow\",\n  \"rgb\": \"(252, 232, 131)\"\n  },\n  {\n  \"hex\": \"C5E384\",\n  \"name\": \"Yellow Green\",\n  \"rgb\": \"(197, 227, 132)\"\n  },\n  {\n  \"hex\": \"FFAE42\",\n  \"name\": \"Yellow Orange\",\n  \"rgb\": \"(255, 174, 66)\"\n  }\n  ]"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Images.xcassets/empty_placeholder.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"empty_placeholder.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"empty_placeholder@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Images.xcassets/search_icon.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"search_icon.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"search_icon@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Images.xcassets/tab_collection.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tab_collection.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tab_collection@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Images.xcassets/tab_search.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tab_search.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tab_search@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Images.xcassets/tab_table.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tab_table.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tab_table@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/SearchViewController.h",
    "content": "//\n//  SearchViewController.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n#import \"Color.h\"\n\n@interface SearchViewController : UIViewController <UISearchDisplayDelegate, UISearchBarDelegate>\n\n@property (nonatomic, strong) Color *selectedColor;\n\n@property (nonatomic, weak) IBOutlet UIImageView *colorView;\n@property (nonatomic, weak) IBOutlet UILabel *nameLabel;\n@property (nonatomic, weak) IBOutlet UILabel *hexLabel;\n@property (nonatomic, weak) IBOutlet UILabel *rgbLabel;\n@property (nonatomic, weak) IBOutlet UILabel *hexLegend;\n@property (nonatomic, weak) IBOutlet UILabel *rgbLegend;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/SearchViewController.m",
    "content": "//\n//  SearchViewController.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 7/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"SearchViewController.h\"\n#import \"Palette.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface SearchViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@property (nonatomic, strong) NSArray *searchResult;\n@property (nonatomic, getter = isShowingLandscape) BOOL showingLandscape;\n@end\n\n@implementation SearchViewController\n\n#pragma mark - View lifecycle\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    \n    self.title = @\"Search\";\n    self.tabBarItem = [[UITabBarItem alloc] initWithTitle:self.title image:[UIImage imageNamed:@\"tab_search\"] tag:self.title.hash];\n}\n\n- (void)loadView\n{\n    [super loadView];\n    \n    if ([self.navigationController.viewControllers count] == 1) {\n        self.searchDisplayController.displaysSearchBarInNavigationBar = YES;\n    }\n    else {\n        self.title = @\"Detail\";\n    }\n    \n    self.searchDisplayController.searchResultsTableView.emptyDataSetSource = self;\n    self.searchDisplayController.searchResultsTableView.emptyDataSetDelegate = self;\n    \n    self.searchDisplayController.searchBar.placeholder = @\"Search color\";\n    self.searchDisplayController.searchResultsTableView.tableFooterView = [UIView new];\n    [self.searchDisplayController setValue:@\"\" forKey:@\"_noResultsMessage\"];\n    \n    for (UIView *subview in self.view.subviews) {\n        subview.autoresizingMask = UIViewAutoresizingNone;\n    }\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.showingLandscape = UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation);\n    [self updateLayoutAnimatedWithDuration:0.0];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    [self updateContent];\n}\n\n\n#pragma mark - Getters\n\n- (NSArray *)searchResult\n{\n    if (_searchResult) {\n        return _searchResult;\n    }\n    \n    NSString *searchString = self.searchDisplayController.searchBar.text;\n    \n    if (searchString.length == 0) {\n        return nil;\n    }\n    \n    NSArray *colors = [[Palette sharedPalette] colors];\n    NSPredicate *precidate = [NSPredicate predicateWithFormat:@\"name CONTAINS[cd] %@ || hex CONTAINS[cd] %@\", searchString, searchString];\n    \n    _searchResult = [colors filteredArrayUsingPredicate:precidate];\n    \n    return _searchResult;\n}\n\n\n#pragma mark - Actions\n\n- (void)updateLayoutAnimatedWithDuration:(NSTimeInterval)duration\n{\n    [UIView beginAnimations:@\"\" context:nil];\n    [UIView setAnimationDuration:duration];\n    [UIView setAnimationBeginsFromCurrentState:YES];\n    \n    if (self.showingLandscape) {\n        self.colorView.frame = CGRectMake(45.0, 88.0, 160.0, 160.0);\n        self.nameLabel.frame = CGRectMake(240.0, 114.0, 280.0, 35.0);\n        self.hexLabel.frame = CGRectMake(300.0, 170.0, 140.0, 20.0);\n        self.rgbLabel.frame = CGRectMake(300.0, 200.0, 140.0, 20.0);\n        self.hexLegend.frame = CGRectMake(240.0, 170.0, 60.0, 20.0);\n        self.rgbLegend.frame = CGRectMake(240.0, 200.0, 60.0, 20.0);\n        \n        self.nameLabel.textAlignment = NSTextAlignmentLeft;\n    }\n    else {\n        self.colorView.frame = CGRectMake(60.0, 130.0, 200.0, 200.0);\n        self.nameLabel.frame = CGRectMake(20.0, 350.0, 280.0, 35.0);\n        self.hexLabel.frame = CGRectMake(120.0, 420.0, 140.0, 20.0);\n        self.rgbLabel.frame = CGRectMake(120.0, 450.0, 140.0, 20.0);\n        self.hexLegend.frame = CGRectMake(60.0, 420.0, 60.0, 20.0);\n        self.rgbLegend.frame = CGRectMake(60.0, 450.0, 60.0, 20.0);\n        \n        self.nameLabel.textAlignment = NSTextAlignmentCenter;\n    }\n    \n    [UIView commitAnimations];\n}\n\n- (void)updateContent\n{\n    BOOL hide = self.selectedColor ? NO : YES;\n    \n    self.colorView.hidden = hide;\n    self.nameLabel.hidden = hide;\n    self.hexLabel.hidden = hide;\n    self.rgbLabel.hidden = hide;\n    self.hexLegend.hidden = hide;\n    self.rgbLegend.hidden = hide;\n    \n    self.colorView.image = [Color roundImageForSize:self.colorView.frame.size withColor:self.selectedColor.color];\n    \n    self.nameLabel.text = self.selectedColor.name;\n    self.hexLabel.text = [NSString stringWithFormat:@\"#%@\", self.selectedColor.hex];\n    self.rgbLabel.text = self.selectedColor.rgb;\n}\n\n- (void)adjustToDeviceOrientation\n{\n    self.showingLandscape = UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation);\n    [self updateLayoutAnimatedWithDuration:0.25];\n    \n    [self.searchDisplayController.searchResultsTableView reloadEmptyDataSet];\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"No colors Found\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:17.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"Make sure that all words are\\nspelled correctly.\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:15.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    NSString *text = @\"Add a New Color\";\n    UIColor *color = nil;\n    \n    if (state == UIControlStateNormal) color = [UIColor colorWithRed:44/255.0 green:137/255.0 blue:202/255.0 alpha:1.0];\n    if (state == UIControlStateHighlighted) color = [UIColor colorWithRed:106/255.0 green:187/255.0 blue:227/255.0 alpha:1.0];\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:14.0],\n                                 NSForegroundColorAttributeName: color,\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) {\n        return nil;\n    }\n    return [UIImage imageNamed:@\"search_icon\"];\n}\n\n- (UIColor *)imageTintColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor grayColor];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return nil;\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return NO;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n\n    [self.searchDisplayController setActive:NO animated:YES];\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n\n#pragma mark - UITableViewDataSource Methods\n\n- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView\n{\n    return 1;\n}\n\n- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section\n{\n    return self.searchResult.count;\n}\n\n- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    static NSString *CellIdentifier = @\"Cell\";\n    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];\n    \n    if (!cell) {\n        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];\n        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;\n        cell.selectionStyle = UITableViewCellSelectionStyleDefault;\n        cell.selectedBackgroundView = [UIView new];\n        cell.selectedBackgroundView.backgroundColor = [UIColor colorWithWhite:0.95 alpha:1.0];\n        cell.textLabel.textColor = [UIColor colorWithWhite:0.125 alpha:1.0];\n        cell.detailTextLabel.textColor = [UIColor colorWithWhite:0.5 alpha:1.0];\n    }\n    \n    Color *color = self.searchResult[indexPath.row];\n    \n    cell.textLabel.text = color.name;\n    cell.detailTextLabel.text = [NSString stringWithFormat:@\"#%@\", color.hex];\n    \n    cell.imageView.image = [Color roundThumbWithColor:color.color];\n    \n    return cell;\n}\n\n- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return 56.0;\n}\n\n\n#pragma mark - UITableViewDelegate Methods\n\n- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    self.selectedColor = self.searchResult[indexPath.row];\n    [self updateContent];\n    \n    [self.searchDisplayController setActive:NO animated:YES];\n}\n\n\n#pragma mark - UISearchDisplayControllerDelegate Methods\n\n- (BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString\n{\n    _searchResult = nil;\n    \n    return YES;\n}\n\n- (void)searchDisplayController:(UISearchDisplayController *)controller willShowSearchResultsTableView:(UITableView *)tableView\n{\n    // Do something\n}\n\n- (void)searchDisplayController:(UISearchDisplayController *)controller didShowSearchResultsTableView:(UITableView *)tableView\n{\n    // Do something\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration\n{\n    if (![self respondsToSelector:@selector(willTransitionToTraitCollection:withTransitionCoordinator:)]) {\n        [self adjustToDeviceOrientation];\n    }\n}\n\n- (void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator\n{\n    [self adjustToDeviceOrientation];\n}\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/Storyboard.storyboard",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3.0\" toolsVersion=\"6245\" systemVersion=\"14A343f\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" initialViewController=\"GvD-b2-ath\">\n    <dependencies>\n        <deployment defaultVersion=\"1792\" identifier=\"iOS\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"6238\"/>\n    </dependencies>\n    <scenes>\n        <!--Tab Bar Controller-->\n        <scene sceneID=\"J3f-YI-2gA\">\n            <objects>\n                <tabBarController definesPresentationContext=\"YES\" id=\"GvD-b2-ath\" sceneMemberID=\"viewController\">\n                    <nil key=\"simulatedBottomBarMetrics\"/>\n                    <tabBar key=\"tabBar\" contentMode=\"scaleToFill\" translucent=\"NO\" id=\"DIi-9k-WWV\">\n                        <rect key=\"frame\" x=\"129\" y=\"330\" width=\"163\" height=\"49\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </tabBar>\n                    <connections>\n                        <segue destination=\"Vm4-rk-YbM\" kind=\"relationship\" relationship=\"viewControllers\" id=\"EKj-En-2wP\"/>\n                        <segue destination=\"9pz-r8-hDF\" kind=\"relationship\" relationship=\"viewControllers\" id=\"v3g-2Z-FGF\"/>\n                        <segue destination=\"Y9X-ir-bVH\" kind=\"relationship\" relationship=\"viewControllers\" id=\"Gew-wU-0v6\"/>\n                    </connections>\n                </tabBarController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"mUj-rV-rIj\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"546\" y=\"54\"/>\n        </scene>\n        <!--Collection View Controller-->\n        <scene sceneID=\"dqD-kU-Xrh\">\n            <objects>\n                <collectionViewController autoresizesArchivedViewToFullSize=\"NO\" id=\"Bwl-Kc-CEM\" customClass=\"CollectionViewController\" sceneMemberID=\"viewController\">\n                    <collectionView key=\"view\" opaque=\"NO\" clipsSubviews=\"YES\" multipleTouchEnabled=\"YES\" contentMode=\"scaleToFill\" minimumZoomScale=\"0.0\" maximumZoomScale=\"0.0\" dataMode=\"prototypes\" id=\"Sqf-PI-OWp\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"519\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <color key=\"backgroundColor\" red=\"1\" green=\"0.99997437000274658\" blue=\"0.99999129772186279\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                        <collectionViewFlowLayout key=\"collectionViewLayout\" minimumLineSpacing=\"10\" minimumInteritemSpacing=\"10\" id=\"tMx-xW-Vq7\">\n                            <size key=\"itemSize\" width=\"50\" height=\"50\"/>\n                            <size key=\"headerReferenceSize\" width=\"0.0\" height=\"0.0\"/>\n                            <size key=\"footerReferenceSize\" width=\"0.0\" height=\"0.0\"/>\n                            <inset key=\"sectionInset\" minX=\"0.0\" minY=\"0.0\" maxX=\"0.0\" maxY=\"0.0\"/>\n                        </collectionViewFlowLayout>\n                        <cells/>\n                        <connections>\n                            <outlet property=\"dataSource\" destination=\"Bwl-Kc-CEM\" id=\"QaH-oL-krX\"/>\n                            <outlet property=\"delegate\" destination=\"Bwl-Kc-CEM\" id=\"Ykr-jN-BQe\"/>\n                            <outlet property=\"emptyDataSetDelegate\" destination=\"Bwl-Kc-CEM\" id=\"2jA-9e-K6o\"/>\n                            <outlet property=\"emptyDataSetSource\" destination=\"Bwl-Kc-CEM\" id=\"3mT-FZ-yw3\"/>\n                        </connections>\n                    </collectionView>\n                    <navigationItem key=\"navigationItem\" id=\"TH1-YO-7w8\">\n                        <barButtonItem key=\"leftBarButtonItem\" systemItem=\"trash\" id=\"4h6-eK-PJa\">\n                            <connections>\n                                <action selector=\"removeColors:\" destination=\"Bwl-Kc-CEM\" id=\"5my-jF-cdc\"/>\n                            </connections>\n                        </barButtonItem>\n                        <barButtonItem key=\"rightBarButtonItem\" systemItem=\"refresh\" id=\"RvV-um-UeR\">\n                            <connections>\n                                <action selector=\"refreshColors:\" destination=\"Bwl-Kc-CEM\" id=\"hyL-P1-15B\"/>\n                            </connections>\n                        </barButtonItem>\n                    </navigationItem>\n                    <connections>\n                        <segue destination=\"5wu-h0-UoY\" kind=\"push\" identifier=\"collection_push_detail\" id=\"86S-EI-aCd\"/>\n                    </connections>\n                </collectionViewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"7eE-aJ-h11\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"1653\" y=\"-683\"/>\n        </scene>\n        <!--Table View Controller-->\n        <scene sceneID=\"bz0-WM-7np\">\n            <objects>\n                <tableViewController id=\"bxI-rv-q80\" customClass=\"TableViewController\" sceneMemberID=\"viewController\">\n                    <tableView key=\"view\" opaque=\"NO\" clipsSubviews=\"YES\" clearsContextBeforeDrawing=\"NO\" contentMode=\"scaleToFill\" alwaysBounceVertical=\"YES\" dataMode=\"prototypes\" style=\"plain\" separatorStyle=\"default\" rowHeight=\"44\" sectionHeaderHeight=\"22\" sectionFooterHeight=\"22\" id=\"iz2-l0-vJh\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"519\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                        <connections>\n                            <outlet property=\"dataSource\" destination=\"bxI-rv-q80\" id=\"Gzc-6q-fJy\"/>\n                            <outlet property=\"delegate\" destination=\"bxI-rv-q80\" id=\"Rzh-Mq-JCA\"/>\n                            <outlet property=\"emptyDataSetDelegate\" destination=\"bxI-rv-q80\" id=\"xfk-6m-ahr\"/>\n                            <outlet property=\"emptyDataSetSource\" destination=\"bxI-rv-q80\" id=\"qYo-WU-a3J\"/>\n                        </connections>\n                    </tableView>\n                    <navigationItem key=\"navigationItem\" id=\"fD4-hx-v8N\">\n                        <barButtonItem key=\"leftBarButtonItem\" systemItem=\"trash\" id=\"aPM-sy-RLG\">\n                            <connections>\n                                <action selector=\"removeColors:\" destination=\"bxI-rv-q80\" id=\"eTC-Qq-egA\"/>\n                            </connections>\n                        </barButtonItem>\n                        <barButtonItem key=\"rightBarButtonItem\" systemItem=\"refresh\" id=\"8Al-Hr-KLs\">\n                            <connections>\n                                <action selector=\"refreshColors:\" destination=\"bxI-rv-q80\" id=\"l7v-Bf-pNY\"/>\n                            </connections>\n                        </barButtonItem>\n                    </navigationItem>\n                    <connections>\n                        <segue destination=\"5wu-h0-UoY\" kind=\"push\" identifier=\"table_push_detail\" id=\"lgP-PJ-c6y\"/>\n                    </connections>\n                </tableViewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"ym4-re-Gur\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"1653\" y=\"55\"/>\n        </scene>\n        <!--Search View Controller-->\n        <scene sceneID=\"JD3-Tp-FNl\">\n            <objects>\n                <viewController id=\"5wu-h0-UoY\" customClass=\"SearchViewController\" sceneMemberID=\"viewController\">\n                    <view key=\"view\" contentMode=\"scaleToFill\" id=\"fAe-Fg-YiM\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"519\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <subviews>\n                            <imageView userInteractionEnabled=\"NO\" contentMode=\"scaleToFill\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Ld4-sq-bbw\">\n                                <rect key=\"frame\" x=\"60\" y=\"130\" width=\"200\" height=\"151\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </imageView>\n                            <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"Name Label\" textAlignment=\"center\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"1st-If-rue\">\n                                <rect key=\"frame\" x=\"20\" y=\"350\" width=\"280\" height=\"35\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <fontDescription key=\"fontDescription\" type=\"boldSystem\" pointSize=\"26\"/>\n                                <color key=\"textColor\" white=\"0.25\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                <nil key=\"highlightedColor\"/>\n                            </label>\n                            <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"Hex Values\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"K0n-dL-Qbj\">\n                                <rect key=\"frame\" x=\"119\" y=\"424\" width=\"142\" height=\"21\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"17\"/>\n                                <color key=\"textColor\" white=\"0.25\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                <nil key=\"highlightedColor\"/>\n                            </label>\n                            <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"Hex:\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"lQU-rJ-iGN\">\n                                <rect key=\"frame\" x=\"60\" y=\"424\" width=\"60\" height=\"20\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"17\"/>\n                                <color key=\"textColor\" white=\"0.5\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                <nil key=\"highlightedColor\"/>\n                            </label>\n                            <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"RGB Values\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"kM4-dp-Obh\">\n                                <rect key=\"frame\" x=\"119\" y=\"453\" width=\"142\" height=\"21\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"17\"/>\n                                <color key=\"textColor\" white=\"0.25\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                <nil key=\"highlightedColor\"/>\n                            </label>\n                            <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"RGB:\" lineBreakMode=\"tailTruncation\" baselineAdjustment=\"alignBaselines\" adjustsFontSizeToFit=\"NO\" id=\"0f2-z3-sTu\">\n                                <rect key=\"frame\" x=\"60\" y=\"453\" width=\"60\" height=\"20\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"17\"/>\n                                <color key=\"textColor\" white=\"0.5\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                                <nil key=\"highlightedColor\"/>\n                            </label>\n                        </subviews>\n                        <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                    </view>\n                    <navigationItem key=\"navigationItem\" id=\"I4p-J4-a4s\"/>\n                    <simulatedOrientationMetrics key=\"simulatedOrientationMetrics\"/>\n                    <connections>\n                        <outlet property=\"colorView\" destination=\"Ld4-sq-bbw\" id=\"e4b-RU-NIp\"/>\n                        <outlet property=\"hexLabel\" destination=\"K0n-dL-Qbj\" id=\"PtW-vg-a8h\"/>\n                        <outlet property=\"hexLegend\" destination=\"lQU-rJ-iGN\" id=\"6r1-EB-iRb\"/>\n                        <outlet property=\"nameLabel\" destination=\"1st-If-rue\" id=\"KLl-sN-BJL\"/>\n                        <outlet property=\"rgbLabel\" destination=\"kM4-dp-Obh\" id=\"7h0-6e-heT\"/>\n                        <outlet property=\"rgbLegend\" destination=\"0f2-z3-sTu\" id=\"J3Q-c8-lXp\"/>\n                        <outlet property=\"searchDisplayController\" destination=\"Ncw-GN-vhc\" id=\"cEV-GZ-OvY\"/>\n                    </connections>\n                </viewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"mJm-fQ-CH7\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n                <searchBar contentMode=\"redraw\" searchBarStyle=\"minimal\" id=\"sRh-vM-6tl\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"44\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textInputTraits key=\"textInputTraits\"/>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"5wu-h0-UoY\" id=\"Ije-vJ-IfC\"/>\n                    </connections>\n                </searchBar>\n                <searchDisplayController searchResultsTitle=\"\" id=\"Ncw-GN-vhc\">\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"5wu-h0-UoY\" id=\"Fjt-wg-REW\"/>\n                        <outlet property=\"searchBar\" destination=\"sRh-vM-6tl\" id=\"rlI-1F-Yvh\"/>\n                        <outlet property=\"searchContentsController\" destination=\"5wu-h0-UoY\" id=\"aX1-pn-6Ko\"/>\n                        <outlet property=\"searchResultsDataSource\" destination=\"5wu-h0-UoY\" id=\"L3y-jb-uIc\"/>\n                        <outlet property=\"searchResultsDelegate\" destination=\"5wu-h0-UoY\" id=\"LH6-Zg-N4M\"/>\n                    </connections>\n                </searchDisplayController>\n            </objects>\n            <point key=\"canvasLocation\" x=\"2343\" y=\"499\"/>\n        </scene>\n        <!--Navigation Controller-->\n        <scene sceneID=\"gO4-c2-dzl\">\n            <objects>\n                <navigationController automaticallyAdjustsScrollViewInsets=\"NO\" id=\"Vm4-rk-YbM\" sceneMemberID=\"viewController\">\n                    <tabBarItem key=\"tabBarItem\" title=\"\" id=\"50p-7c-hHn\"/>\n                    <toolbarItems/>\n                    <navigationBar key=\"navigationBar\" contentMode=\"scaleToFill\" id=\"k1y-P9-4md\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"44\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </navigationBar>\n                    <nil name=\"viewControllers\"/>\n                    <connections>\n                        <segue destination=\"Bwl-Kc-CEM\" kind=\"relationship\" relationship=\"rootViewController\" id=\"mG8-Zo-DJg\"/>\n                    </connections>\n                </navigationController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"nNs-IS-EsX\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"1127\" y=\"-683\"/>\n        </scene>\n        <!--Navigation Controller-->\n        <scene sceneID=\"4wy-Pd-6BJ\">\n            <objects>\n                <navigationController automaticallyAdjustsScrollViewInsets=\"NO\" id=\"9pz-r8-hDF\" sceneMemberID=\"viewController\">\n                    <tabBarItem key=\"tabBarItem\" title=\"\" id=\"CCe-ku-Koi\"/>\n                    <toolbarItems/>\n                    <navigationBar key=\"navigationBar\" contentMode=\"scaleToFill\" id=\"glF-Xa-MPy\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"44\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </navigationBar>\n                    <nil name=\"viewControllers\"/>\n                    <connections>\n                        <segue destination=\"bxI-rv-q80\" kind=\"relationship\" relationship=\"rootViewController\" id=\"PN4-9Z-Hfm\"/>\n                    </connections>\n                </navigationController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"9Vd-jD-D0F\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"1127\" y=\"55\"/>\n        </scene>\n        <!--Navigation Controller-->\n        <scene sceneID=\"T7l-uY-dTH\">\n            <objects>\n                <navigationController automaticallyAdjustsScrollViewInsets=\"NO\" id=\"Y9X-ir-bVH\" sceneMemberID=\"viewController\">\n                    <tabBarItem key=\"tabBarItem\" title=\"\" id=\"LtO-g7-EVo\"/>\n                    <toolbarItems/>\n                    <navigationBar key=\"navigationBar\" contentMode=\"scaleToFill\" id=\"2So-DJ-26y\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"320\" height=\"44\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </navigationBar>\n                    <nil name=\"viewControllers\"/>\n                    <connections>\n                        <segue destination=\"5wu-h0-UoY\" kind=\"relationship\" relationship=\"rootViewController\" id=\"EsT-mj-1k6\"/>\n                    </connections>\n                </navigationController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"VuG-WE-vm9\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"1127\" y=\"791\"/>\n        </scene>\n    </scenes>\n    <simulatedMetricsContainer key=\"defaultSimulatedMetrics\">\n        <simulatedStatusBarMetrics key=\"statusBar\"/>\n        <simulatedOrientationMetrics key=\"orientation\"/>\n        <simulatedScreenMetrics key=\"destination\" type=\"retina4\"/>\n    </simulatedMetricsContainer>\n    <inferredMetricsTieBreakers>\n        <segue reference=\"86S-EI-aCd\"/>\n    </inferredMetricsTieBreakers>\n</document>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/System.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"57x57\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-57.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"57x57\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-57@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"50x50\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-50~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"50x50\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-50@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"72x72\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-72~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"72x72\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-72@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"83.5x83.5\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-120~car.png\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/System.xcassets/LaunchImage.launchimage/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"736h\",\n      \"filename\" : \"Default-hd-plus@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"8.0\",\n      \"subtype\" : \"736h\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"667h\",\n      \"filename\" : \"Default-hd@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"filename\" : \"Default@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"retina4\",\n      \"filename\" : \"Default-568h@2x.png\",\n      \"minimum-system-version\" : \"7.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"subtype\" : \"retina4\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/TableViewController.h",
    "content": "//\n//  TableViewController.h\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/29/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface TableViewController : UITableViewController\n\n- (IBAction)refreshColors:(id)sender;\n- (IBAction)removeColors:(id)sender;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/TableViewController.m",
    "content": "//\n//  TableViewController.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/29/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"TableViewController.h\"\n#import \"SearchViewController.h\"\n#import \"Palette.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface TableViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@end\n\n@implementation TableViewController\n\n#pragma mark - View lifecycle\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    \n    self.title = @\"Table\";\n    self.tabBarItem = [[UITabBarItem alloc] initWithTitle:self.title image:[UIImage imageNamed:@\"tab_table\"] tag:self.title.hash];\n}\n\n- (void)loadView\n{\n    [super loadView];\n    \n    self.tableView.tableFooterView = [UIView new];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    [self.tableView reloadData];\n}\n\n\n#pragma mark - Actions\n\n- (IBAction)refreshColors:(id)sender\n{\n    [[Palette sharedPalette] reloadAll];\n    \n    [self.tableView reloadData];\n}\n\n- (IBAction)removeColors:(id)sender\n{\n    [[Palette sharedPalette] removeAll];\n    \n    [self.tableView reloadData];\n}\n\n- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender\n{\n    if ([[segue identifier] isEqualToString:@\"table_push_detail\"]) {\n        SearchViewController *controller = [segue destinationViewController];\n        controller.selectedColor = sender;\n\t}\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"No colors loaded\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:17.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"To show a list of random colors, tap on the refresh icon in the right top corner.\\n\\nTo clean the list, tap on the trash icon.\";\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:15.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIImage imageNamed:@\"empty_placeholder\"];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return nil;\n}\n\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return 0;\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return NO;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n\n    NSLog(@\"%s\",__FUNCTION__);\n}\n\n\n#pragma mark - UITableViewDataSource Methods\n\n- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section\n{\n\treturn [[Palette sharedPalette] colors].count;\n}\n\n- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    static NSString *CellIdentifier = @\"Cell\";\n    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];\n    \n    if (!cell) {\n        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];\n        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;\n        cell.selectionStyle = UITableViewCellSelectionStyleDefault;\n        cell.selectedBackgroundView = [UIView new];\n        cell.selectedBackgroundView.backgroundColor = [UIColor colorWithWhite:0.95 alpha:1.0];\n        cell.textLabel.textColor = [UIColor colorWithWhite:0.125 alpha:1.0];\n        cell.detailTextLabel.textColor = [UIColor colorWithWhite:0.5 alpha:1.0];\n    }\n    \n    Color *color = [[Palette sharedPalette] colors][indexPath.row];\n    \n    cell.textLabel.text = color.name;\n    cell.detailTextLabel.text = [NSString stringWithFormat:@\"#%@\", color.hex];\n\t\n    cell.imageView.image = [Color roundThumbWithColor:color.color];\n    \n    return cell;\n}\n\n- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return 56.0;\n}\n\n- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return YES;\n}\n\n- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    if (editingStyle == UITableViewCellEditingStyleDelete) {\n        \n        Color *color = [[Palette sharedPalette] colors][indexPath.row];\n        [[Palette sharedPalette] removeColor:color];\n        \n        [tableView beginUpdates];\n        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];\n        [tableView endUpdates];\n\t}\n}\n\n\n#pragma mark - UITableViewDelegate Methods\n\n- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    Color *color = [[Palette sharedPalette] colors][indexPath.row];\n    \n    if ([self shouldPerformSegueWithIdentifier:@\"table_push_detail\" sender:color]) {\n        [self performSegueWithIdentifier:@\"table_push_detail\" sender:color];\n    }\n    \n    [tableView deselectRowAtIndexPath:indexPath animated:YES];\n}\n\n- (BOOL)tableView:(UITableView *)tableView canPerformAction:(SEL)action forRowAtIndexPath:(NSIndexPath *)indexPath withSender:(id)sender\n{\n    if ([NSStringFromSelector(action) isEqualToString:@\"copy:\"]) {\n        return YES;\n    }\n    return NO;\n}\n\n- (BOOL)tableView:(UITableView *)tableView shouldShowMenuForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return YES;\n}\n\n- (void)tableView:(UITableView *)tableView performAction:(SEL)action forRowAtIndexPath:(NSIndexPath *)indexPath withSender:(id)sender\n{\n    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{\n        \n        if ([NSStringFromSelector(action) isEqualToString:@\"copy:\"]) {\n            Color *color = [[Palette sharedPalette] colors][indexPath.row];\n            if (color.hex.length > 0) [[UIPasteboard generalPasteboard] setString:color.hex];\n        }\n    });\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/en.lproj/InfoPlist.strings",
    "content": "/* Localized versions of Info.plist keys */\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors/main.m",
    "content": "//\n//  main.m\n//  Colors\n//\n//  Created by Ignacio Romero Z. on 6/19/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n#import \"AppDelegate.h\"\n\nint main(int argc, char * argv[])\n{\n    @autoreleasepool {\n        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t4F3E129A1952AEFC00D8CB5A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F3E12991952AEFC00D8CB5A /* Foundation.framework */; };\n\t\t4F3E129C1952AEFC00D8CB5A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F3E129B1952AEFC00D8CB5A /* CoreGraphics.framework */; };\n\t\t4F3E129E1952AEFC00D8CB5A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F3E129D1952AEFC00D8CB5A /* UIKit.framework */; };\n\t\t4F3E12F21953EF1000D8CB5A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F3E12E51953EF1000D8CB5A /* AppDelegate.m */; };\n\t\t4F3E12F51953EF1000D8CB5A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4F3E12EA1953EF1000D8CB5A /* InfoPlist.strings */; };\n\t\t4F3E12F61953EF1000D8CB5A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4F3E12EC1953EF1000D8CB5A /* Images.xcassets */; };\n\t\t4F3E12F71953EF1000D8CB5A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F3E12ED1953EF1000D8CB5A /* main.m */; };\n\t\t4F3E12F81953EF1000D8CB5A /* CollectionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F3E12EF1953EF1000D8CB5A /* CollectionViewController.m */; };\n\t\t4F48AECE1960B21000576D9A /* TableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F48AECD1960B21000576D9A /* TableViewController.m */; };\n\t\t4F657CBE19CD18BB00347199 /* System.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4F657CBD19CD18BB00347199 /* System.xcassets */; };\n\t\t4FCD9A7F196705E4004DEA1B /* Palette.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FCD9A7B196705E4004DEA1B /* Palette.m */; };\n\t\t4FCD9A80196705E4004DEA1B /* colors.json in Resources */ = {isa = PBXBuildFile; fileRef = 4FCD9A7C196705E4004DEA1B /* colors.json */; };\n\t\t4FCD9A81196705E4004DEA1B /* Color.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FCD9A7E196705E4004DEA1B /* Color.m */; };\n\t\t4FCD9A8419675090004DEA1B /* SearchViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4FCD9A8319675090004DEA1B /* SearchViewController.m */; };\n\t\tACBAEAF1427842F28B7038B2 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 42C4998538C64921AFBF1CB8 /* libPods.a */; };\n\t\tCC5692A9196CA6D60018AF45 /* Storyboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = CC5692A8196CA6D60018AF45 /* Storyboard.storyboard */; };\n\t\tF550F3091CD09366005B8756 /* UIColor+Hex.m in Sources */ = {isa = PBXBuildFile; fileRef = F550F3081CD09366005B8756 /* UIColor+Hex.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t42C4998538C64921AFBF1CB8 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t4F3E12961952AEFC00D8CB5A /* Colors.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Colors.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t4F3E12991952AEFC00D8CB5A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n\t\t4F3E129B1952AEFC00D8CB5A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };\n\t\t4F3E129D1952AEFC00D8CB5A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\t4F3E12B21952AEFC00D8CB5A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };\n\t\t4F3E12E41953EF1000D8CB5A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\t4F3E12E51953EF1000D8CB5A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = \"<group>\"; };\n\t\t4F3E12E61953EF1000D8CB5A /* Colors-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = \"Colors-Info.plist\"; sourceTree = \"<group>\"; };\n\t\t4F3E12E71953EF1000D8CB5A /* Colors-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"Colors-Prefix.pch\"; sourceTree = \"<group>\"; };\n\t\t4F3E12EB1953EF1000D8CB5A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\t4F3E12EC1953EF1000D8CB5A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = \"<group>\"; };\n\t\t4F3E12ED1953EF1000D8CB5A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t4F3E12EE1953EF1000D8CB5A /* CollectionViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CollectionViewController.h; sourceTree = \"<group>\"; };\n\t\t4F3E12EF1953EF1000D8CB5A /* CollectionViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CollectionViewController.m; sourceTree = \"<group>\"; };\n\t\t4F48AECC1960B21000576D9A /* TableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewController.h; sourceTree = \"<group>\"; };\n\t\t4F48AECD1960B21000576D9A /* TableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TableViewController.m; sourceTree = \"<group>\"; };\n\t\t4F657CBD19CD18BB00347199 /* System.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = System.xcassets; sourceTree = \"<group>\"; };\n\t\t4FCD9A7A196705E4004DEA1B /* Palette.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Palette.h; sourceTree = \"<group>\"; };\n\t\t4FCD9A7B196705E4004DEA1B /* Palette.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Palette.m; sourceTree = \"<group>\"; };\n\t\t4FCD9A7C196705E4004DEA1B /* colors.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = colors.json; sourceTree = \"<group>\"; };\n\t\t4FCD9A7D196705E4004DEA1B /* Color.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Color.h; sourceTree = \"<group>\"; };\n\t\t4FCD9A7E196705E4004DEA1B /* Color.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Color.m; sourceTree = \"<group>\"; };\n\t\t4FCD9A8219675090004DEA1B /* SearchViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchViewController.h; sourceTree = \"<group>\"; };\n\t\t4FCD9A8319675090004DEA1B /* SearchViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SearchViewController.m; sourceTree = \"<group>\"; };\n\t\t5EF80E7302D0E7F3AD46146E /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.debug.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tCC5692A8196CA6D60018AF45 /* Storyboard.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Storyboard.storyboard; sourceTree = \"<group>\"; };\n\t\tF550F3071CD09366005B8756 /* UIColor+Hex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIColor+Hex.h\"; sourceTree = \"<group>\"; };\n\t\tF550F3081CD09366005B8756 /* UIColor+Hex.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIColor+Hex.m\"; sourceTree = \"<group>\"; };\n\t\tF81A7192908AC188B637508D /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.release.xcconfig\"; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t4F3E12931952AEFC00D8CB5A /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F3E129C1952AEFC00D8CB5A /* CoreGraphics.framework in Frameworks */,\n\t\t\t\t4F3E129E1952AEFC00D8CB5A /* UIKit.framework in Frameworks */,\n\t\t\t\t4F3E129A1952AEFC00D8CB5A /* Foundation.framework in Frameworks */,\n\t\t\t\tACBAEAF1427842F28B7038B2 /* libPods.a in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t4F3E128D1952AEFC00D8CB5A = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12E31953EF1000D8CB5A /* Colors */,\n\t\t\t\t4F3E12981952AEFC00D8CB5A /* Frameworks */,\n\t\t\t\t4F3E12971952AEFC00D8CB5A /* Products */,\n\t\t\t\t75782675F4B18AD5410455F6 /* Pods */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F3E12971952AEFC00D8CB5A /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12961952AEFC00D8CB5A /* Colors.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F3E12981952AEFC00D8CB5A /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12991952AEFC00D8CB5A /* Foundation.framework */,\n\t\t\t\t4F3E129B1952AEFC00D8CB5A /* CoreGraphics.framework */,\n\t\t\t\t4F3E129D1952AEFC00D8CB5A /* UIKit.framework */,\n\t\t\t\t4F3E12B21952AEFC00D8CB5A /* XCTest.framework */,\n\t\t\t\t42C4998538C64921AFBF1CB8 /* libPods.a */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F3E12E31953EF1000D8CB5A /* Colors */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12E41953EF1000D8CB5A /* AppDelegate.h */,\n\t\t\t\t4F3E12E51953EF1000D8CB5A /* AppDelegate.m */,\n\t\t\t\t4F3E12EE1953EF1000D8CB5A /* CollectionViewController.h */,\n\t\t\t\t4F3E12EF1953EF1000D8CB5A /* CollectionViewController.m */,\n\t\t\t\t4F48AECC1960B21000576D9A /* TableViewController.h */,\n\t\t\t\t4F48AECD1960B21000576D9A /* TableViewController.m */,\n\t\t\t\t4FCD9A8219675090004DEA1B /* SearchViewController.h */,\n\t\t\t\t4FCD9A8319675090004DEA1B /* SearchViewController.m */,\n\t\t\t\tCC5692A8196CA6D60018AF45 /* Storyboard.storyboard */,\n\t\t\t\t4FCD9A79196705E4004DEA1B /* DataSource */,\n\t\t\t\t4F3E12FA1953EF2300D8CB5A /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = Colors;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F3E12FA1953EF2300D8CB5A /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12E61953EF1000D8CB5A /* Colors-Info.plist */,\n\t\t\t\t4F3E12E71953EF1000D8CB5A /* Colors-Prefix.pch */,\n\t\t\t\t4F3E12EA1953EF1000D8CB5A /* InfoPlist.strings */,\n\t\t\t\t4F657CBD19CD18BB00347199 /* System.xcassets */,\n\t\t\t\t4F3E12EC1953EF1000D8CB5A /* Images.xcassets */,\n\t\t\t\t4F3E12ED1953EF1000D8CB5A /* main.m */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4FCD9A79196705E4004DEA1B /* DataSource */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4FCD9A7A196705E4004DEA1B /* Palette.h */,\n\t\t\t\t4FCD9A7B196705E4004DEA1B /* Palette.m */,\n\t\t\t\t4FCD9A7D196705E4004DEA1B /* Color.h */,\n\t\t\t\t4FCD9A7E196705E4004DEA1B /* Color.m */,\n\t\t\t\tF550F3071CD09366005B8756 /* UIColor+Hex.h */,\n\t\t\t\tF550F3081CD09366005B8756 /* UIColor+Hex.m */,\n\t\t\t\t4FCD9A7C196705E4004DEA1B /* colors.json */,\n\t\t\t);\n\t\t\tpath = DataSource;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t75782675F4B18AD5410455F6 /* Pods */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5EF80E7302D0E7F3AD46146E /* Pods.debug.xcconfig */,\n\t\t\t\tF81A7192908AC188B637508D /* Pods.release.xcconfig */,\n\t\t\t);\n\t\t\tname = Pods;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t4F3E12951952AEFC00D8CB5A /* Colors */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 4F3E12C21952AEFC00D8CB5A /* Build configuration list for PBXNativeTarget \"Colors\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t71891DBC90CF4689BBFA47DF /* Check Pods Manifest.lock */,\n\t\t\t\t4F3E12921952AEFC00D8CB5A /* Sources */,\n\t\t\t\t4F3E12931952AEFC00D8CB5A /* Frameworks */,\n\t\t\t\t4F3E12941952AEFC00D8CB5A /* Resources */,\n\t\t\t\tE53958B8421148EF94747BF0 /* Copy Pods Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = Colors;\n\t\t\tproductName = Photos;\n\t\t\tproductReference = 4F3E12961952AEFC00D8CB5A /* Colors.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t4F3E128E1952AEFC00D8CB5A /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0730;\n\t\t\t\tORGANIZATIONNAME = \"DZN Labs\";\n\t\t\t};\n\t\t\tbuildConfigurationList = 4F3E12911952AEFC00D8CB5A /* Build configuration list for PBXProject \"Colors\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 4F3E128D1952AEFC00D8CB5A;\n\t\t\tproductRefGroup = 4F3E12971952AEFC00D8CB5A /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t4F3E12951952AEFC00D8CB5A /* Colors */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t4F3E12941952AEFC00D8CB5A /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F3E12F61953EF1000D8CB5A /* Images.xcassets in Resources */,\n\t\t\t\tCC5692A9196CA6D60018AF45 /* Storyboard.storyboard in Resources */,\n\t\t\t\t4F657CBE19CD18BB00347199 /* System.xcassets in Resources */,\n\t\t\t\t4FCD9A80196705E4004DEA1B /* colors.json in Resources */,\n\t\t\t\t4F3E12F51953EF1000D8CB5A /* InfoPlist.strings in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t71891DBC90CF4689BBFA47DF /* Check Pods Manifest.lock */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Check Pods Manifest.lock\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"diff \\\"${PODS_ROOT}/../Podfile.lock\\\" \\\"${PODS_ROOT}/Manifest.lock\\\" > /dev/null\\nif [[ $? != 0 ]] ; then\\n    cat << EOM\\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\\nEOM\\n    exit 1\\nfi\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n\t\tE53958B8421148EF94747BF0 /* Copy Pods Resources */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Copy Pods Resources\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"\\\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\\\"\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t4F3E12921952AEFC00D8CB5A /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F48AECE1960B21000576D9A /* TableViewController.m in Sources */,\n\t\t\t\t4FCD9A81196705E4004DEA1B /* Color.m in Sources */,\n\t\t\t\t4F3E12F71953EF1000D8CB5A /* main.m in Sources */,\n\t\t\t\t4F3E12F21953EF1000D8CB5A /* AppDelegate.m in Sources */,\n\t\t\t\t4F3E12F81953EF1000D8CB5A /* CollectionViewController.m in Sources */,\n\t\t\t\tF550F3091CD09366005B8756 /* UIColor+Hex.m in Sources */,\n\t\t\t\t4FCD9A8419675090004DEA1B /* SearchViewController.m in Sources */,\n\t\t\t\t4FCD9A7F196705E4004DEA1B /* Palette.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXVariantGroup section */\n\t\t4F3E12EA1953EF1000D8CB5A /* InfoPlist.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t4F3E12EB1953EF1000D8CB5A /* en */,\n\t\t\t);\n\t\t\tname = InfoPlist.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t4F3E12C01952AEFC00D8CB5A /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F3E12C11952AEFC00D8CB5A /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t4F3E12C31952AEFC00D8CB5A /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 5EF80E7302D0E7F3AD46146E /* Pods.debug.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Colors/Colors-Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Colors/Colors-Info.plist\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Colors;\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F3E12C41952AEFC00D8CB5A /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = F81A7192908AC188B637508D /* Pods.release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Colors/Colors-Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Colors/Colors-Info.plist\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Colors;\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t4F3E12911952AEFC00D8CB5A /* Build configuration list for PBXProject \"Colors\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F3E12C01952AEFC00D8CB5A /* Debug */,\n\t\t\t\t4F3E12C11952AEFC00D8CB5A /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t4F3E12C21952AEFC00D8CB5A /* Build configuration list for PBXNativeTarget \"Colors\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F3E12C31952AEFC00D8CB5A /* Debug */,\n\t\t\t\t4F3E12C41952AEFC00D8CB5A /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 4F3E128E1952AEFC00D8CB5A /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Colors.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Colors.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Colors.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Pods/Pods.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Podfile",
    "content": "platform :ios, '7.0'\n\npod 'DZNEmptyDataSet', :path => '../../'"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Local Podspecs/DZNEmptyDataSet.podspec.json",
    "content": "{\n  \"name\": \"DZNEmptyDataSet\",\n  \"version\": \"1.8\",\n  \"summary\": \"A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\",\n  \"description\": \"It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed.\",\n  \"homepage\": \"https://github.com/dzenbot/DZNEmptyDataSet\",\n  \"license\": {\n    \"type\": \"MIT\",\n    \"file\": \"LICENSE\"\n  },\n  \"authors\": {\n    \"dzenbot\": \"iromero@dzen.cl\"\n  },\n  \"platforms\": {\n    \"ios\": \"6.0\"\n  },\n  \"source\": {\n    \"git\": \"https://github.com/dzenbot/DZNEmptyDataSet.git\",\n    \"tag\": \"v1.8\"\n  },\n  \"source_files\": [\n    \"Classes\",\n    \"Source/**/*.{h,m}\"\n  ],\n  \"requires_arc\": true,\n  \"frameworks\": \"UIKit\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Pods.xcodeproj/project.pbxproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>archiveVersion</key>\n\t<string>1</string>\n\t<key>classes</key>\n\t<dict/>\n\t<key>objectVersion</key>\n\t<string>46</string>\n\t<key>objects</key>\n\t<dict>\n\t\t<key>009A39758E49E9694A8E5C4EDD6DCE54</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>052A17875CB827423D627183396CEB60</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>ENABLE_NS_ASSERTIONS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>RELEASE=1</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t\t<key>VALIDATE_PRODUCT</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>15A529C27057E4A57D259CBC6E6CE49C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.markdown</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>161F43458CFDF6C64FEAB3F6F7EDD18C</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>9C78D73CC565C991FEF831295E798251</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>1683F30D244E3EBCA51481C2EA5AFB16</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>16B46B5DFF54576D32FDD9907A11B162</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>1F8B2978073D2F63F8CC40BC20EC3C77</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>182967A704469F086D39FBC4FB9D9DC5</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>DC46BC3B1A941EE54A06B3B482F79146</string>\n\t\t\t\t<string>5D760236A50D2FB911D43ABC60C26311</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>1F8B2978073D2F63F8CC40BC20EC3C77</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>6444EDA65F2380D3C9F82977B6A20720</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>2A3AE06CCD875B17B41EF081DDEB1A96</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>9C78D73CC565C991FEF831295E798251</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>2D8E8EC45A3A1A1D94AE762CB5028504</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>B37F0F91F85060E28F1DAAB522DC7EC1</string>\n\t\t\t\t<string>052A17875CB827423D627183396CEB60</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>433CD3331B6C3787F473C941B61FC68F</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>D0FB9306D21AF23A056944AE037CBFFF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Frameworks</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>498FA250C09408AC4152D23F64B6961A</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.debug.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4CA7750C256B63FAB80B50EE2C46D216</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>8114143C63FE34687D49DAAD0D59A116</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>5473F25810E19AF29BD6BCB49FEDF703</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Foundation.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>5D760236A50D2FB911D43ABC60C26311</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>B557207A4B0600E8A5A91C708CA37940</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>5DB666AC1070276A7247E3A017AB9DC3</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BF2D7941834A9E7C490E51010404EA9A</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Development Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>5E0809F99EE5DA7A05A9BF3DF7146094</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>E2598F99F53BD9E4E332CE8185C45536</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t</dict>\n\t\t<key>641AE05DD55E5E6AC1590CD7B4A18F97</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.script.sh</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-resources.sh</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6444EDA65F2380D3C9F82977B6A20720</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>655B9776F79777DA4B3C98CA0E9993BC</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>7ADC549F8CBB02AA85CE170209FA8A1E</string>\n\t\t\t\t<string>E26D41C28286976FBF8BB5B8D3C82F9E</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>6FBD738EB3306B3DFAB49EBD5322EF20</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>6444EDA65F2380D3C9F82977B6A20720</string>\n\t\t\t\t<string>F4E0C0ED87A13E9206052584395B1EF1</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>72717A199A99A57DEE132B59DE2FD8C7</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>7ADC549F8CBB02AA85CE170209FA8A1E</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>5473F25810E19AF29BD6BCB49FEDF703</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>7CA50C7ADF77CA24129903AE8AFCBF6C</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>B0064BBFC9E44A443611997FF63932A7</string>\n\t\t\t\t<string>9C78D73CC565C991FEF831295E798251</string>\n\t\t\t\t<string>8114143C63FE34687D49DAAD0D59A116</string>\n\t\t\t\t<string>009A39758E49E9694A8E5C4EDD6DCE54</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Examples/Colors/Pods/Target Support Files/DZNEmptyDataSet</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>7DB346D0F39D3F0E887471402A8071AB</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BA6428E9F66FD5A23C0A2E06ED26CD2F</string>\n\t\t\t\t<string>5DB666AC1070276A7247E3A017AB9DC3</string>\n\t\t\t\t<string>433CD3331B6C3787F473C941B61FC68F</string>\n\t\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t\t<string>D2411A5FE7F7A004607BED49990C37F4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>8114143C63FE34687D49DAAD0D59A116</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>8ACC91090BD54C33C91E6156D5D16427</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>A141BF8560DDFBF8BE6AB60B344A49A5</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>90AA9AD5CC4EA1577D3B93BF9D78828D</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>182967A704469F086D39FBC4FB9D9DC5</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>A77135A75ED791EDED04A7F4AB828570</string>\n\t\t\t\t<string>FDDB5C012B7F0A01686E5424B494F675</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array>\n\t\t\t\t<string>CB4B5CE8708764DE7D713908A0CAF788</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>1683F30D244E3EBCA51481C2EA5AFB16</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>952EEBFAF8F7E620423C9F156F25A506</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>15A529C27057E4A57D259CBC6E6CE49C</string>\n\t\t\t\t<string>BF59BC15D23E1E1912C8F334E7236813</string>\n\t\t\t\t<string>A141BF8560DDFBF8BE6AB60B344A49A5</string>\n\t\t\t\t<string>641AE05DD55E5E6AC1590CD7B4A18F97</string>\n\t\t\t\t<string>498FA250C09408AC4152D23F64B6961A</string>\n\t\t\t\t<string>B557207A4B0600E8A5A91C708CA37940</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Target Support Files/Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>9C78D73CC565C991FEF831295E798251</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A141BF8560DDFBF8BE6AB60B344A49A5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A77135A75ED791EDED04A7F4AB828570</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>8ACC91090BD54C33C91E6156D5D16427</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>B0064BBFC9E44A443611997FF63932A7</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>B37F0F91F85060E28F1DAAB522DC7EC1</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_DYNAMIC_NO_PIC</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_OPTIMIZATION_LEVEL</key>\n\t\t\t\t<string>0</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>DEBUG=1</string>\n\t\t\t\t\t<string>$(inherited)</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>ONLY_ACTIVE_ARCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>B557207A4B0600E8A5A91C708CA37940</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.release.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>B9811A8EB69F3AAF06F64CFC685A7CD1</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>F4E0C0ED87A13E9206052584395B1EF1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>BA5F2A74204C78BC49DB2B36B70C3D69</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>5473F25810E19AF29BD6BCB49FEDF703</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>BA6428E9F66FD5A23C0A2E06ED26CD2F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Podfile</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Podfile</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SOURCE_ROOT</string>\n\t\t\t<key>xcLanguageSpecificationIdentifier</key>\n\t\t\t<string>xcode.lang.ruby</string>\n\t\t</dict>\n\t\t<key>BF2D7941834A9E7C490E51010404EA9A</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>6FBD738EB3306B3DFAB49EBD5322EF20</string>\n\t\t\t\t<string>7CA50C7ADF77CA24129903AE8AFCBF6C</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../../..</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>BF59BC15D23E1E1912C8F334E7236813</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.xml</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.plist</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C74B530738BBA17F6823E2396C6B0B1E</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>2A3AE06CCD875B17B41EF081DDEB1A96</string>\n\t\t\t\t<string>161F43458CFDF6C64FEAB3F6F7EDD18C</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>CB4B5CE8708764DE7D713908A0CAF788</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>target</key>\n\t\t\t<string>E2598F99F53BD9E4E332CE8185C45536</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>5E0809F99EE5DA7A05A9BF3DF7146094</string>\n\t\t</dict>\n\t\t<key>CCA510CFBEA2D207524CDA0D73C3B561</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>72717A199A99A57DEE132B59DE2FD8C7</string>\n\t\t\t\t<string>1683F30D244E3EBCA51481C2EA5AFB16</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Products</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D0FB9306D21AF23A056944AE037CBFFF</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>5473F25810E19AF29BD6BCB49FEDF703</string>\n\t\t\t\t<string>F208D70DB209C0FFE5F1ABA89FA0988B</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>iOS</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D2411A5FE7F7A004607BED49990C37F4</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>952EEBFAF8F7E620423C9F156F25A506</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Targets Support Files</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D41D8CD98F00B204E9800998ECF8427E</key>\n\t\t<dict>\n\t\t\t<key>attributes</key>\n\t\t\t<dict>\n\t\t\t\t<key>LastSwiftUpdateCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t\t<key>LastUpgradeCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t</dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>2D8E8EC45A3A1A1D94AE762CB5028504</string>\n\t\t\t<key>compatibilityVersion</key>\n\t\t\t<string>Xcode 3.2</string>\n\t\t\t<key>developmentRegion</key>\n\t\t\t<string>English</string>\n\t\t\t<key>hasScannedForEncodings</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXProject</string>\n\t\t\t<key>knownRegions</key>\n\t\t\t<array>\n\t\t\t\t<string>en</string>\n\t\t\t</array>\n\t\t\t<key>mainGroup</key>\n\t\t\t<string>7DB346D0F39D3F0E887471402A8071AB</string>\n\t\t\t<key>productRefGroup</key>\n\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t<key>projectDirPath</key>\n\t\t\t<string></string>\n\t\t\t<key>projectReferences</key>\n\t\t\t<array/>\n\t\t\t<key>projectRoot</key>\n\t\t\t<string></string>\n\t\t\t<key>targets</key>\n\t\t\t<array>\n\t\t\t\t<string>E2598F99F53BD9E4E332CE8185C45536</string>\n\t\t\t\t<string>90AA9AD5CC4EA1577D3B93BF9D78828D</string>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>D9FF17FD4B8AC0085FEB3216E95427AE</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>4CA7750C256B63FAB80B50EE2C46D216</string>\n\t\t\t\t<string>B9811A8EB69F3AAF06F64CFC685A7CD1</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>DC46BC3B1A941EE54A06B3B482F79146</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>498FA250C09408AC4152D23F64B6961A</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>7.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>E2598F99F53BD9E4E332CE8185C45536</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>C74B530738BBA17F6823E2396C6B0B1E</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>D9FF17FD4B8AC0085FEB3216E95427AE</string>\n\t\t\t\t<string>655B9776F79777DA4B3C98CA0E9993BC</string>\n\t\t\t\t<string>16B46B5DFF54576D32FDD9907A11B162</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>72717A199A99A57DEE132B59DE2FD8C7</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>E26D41C28286976FBF8BB5B8D3C82F9E</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>F208D70DB209C0FFE5F1ABA89FA0988B</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>F208D70DB209C0FFE5F1ABA89FA0988B</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>UIKit.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/UIKit.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>F4E0C0ED87A13E9206052584395B1EF1</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>FDDB5C012B7F0A01686E5424B494F675</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>BA5F2A74204C78BC49DB2B36B70C3D69</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t</dict>\n\t<key>rootObject</key>\n\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Pods.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"C612B450BC14777F8109AB11\"\n               BuildableName = \"libDZNEmptyDataSet.a\"\n               BlueprintName = \"DZNEmptyDataSet\"\n               ReferencedContainer = \"container:Pods.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <AdditionalOptions>\n      </AdditionalOptions>\n      <Testables>\n      </Testables>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-Private.xcconfig",
    "content": "#include \"DZNEmptyDataSet.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = ${DZNEMPTYDATASET_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_DZNEmptyDataSet : NSObject\n@end\n@implementation PodsDummy_DZNEmptyDataSet\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet.xcconfig",
    "content": "DZNEMPTYDATASET_OTHER_LDFLAGS = -framework \"UIKit\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown",
    "content": "# Acknowledgements\nThis application makes use of the following third party libraries:\n\n## DZNEmptyDataSet\n\nThe MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nGenerated by CocoaPods - http://cocoapods.org\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods-acknowledgements.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreferenceSpecifiers</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>This application makes use of the following third party libraries:</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Acknowledgements</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>Generated by CocoaPods - http://cocoapods.org</string>\n\t\t\t<key>Title</key>\n\t\t\t<string></string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t</array>\n\t<key>StringsTable</key>\n\t<string>Acknowledgements</string>\n\t<key>Title</key>\n\t<string>Acknowledgements</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_Pods : NSObject\n@end\n@implementation PodsDummy_Pods\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods-resources.sh",
    "content": "#!/bin/sh\nset -e\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n\nRESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt\n> \"$RESOURCES_TO_COPY\"\n\nXCASSET_FILES=()\n\nrealpath() {\n  DIRECTORY=\"$(cd \"${1%/*}\" && pwd)\"\n  FILENAME=\"${1##*/}\"\n  echo \"$DIRECTORY/$FILENAME\"\n}\n\ninstall_resource()\n{\n  case $1 in\n    *.storyboard)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.xib)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.framework)\n      echo \"mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      mkdir -p \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      echo \"rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      rsync -av \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      ;;\n    *.xcdatamodel)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\"`.mom\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodel`.mom\"\n      ;;\n    *.xcdatamodeld)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\"\n      ;;\n    *.xcmappingmodel)\n      echo \"xcrun mapc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\\\"\"\n      xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\"\n      ;;\n    *.xcassets)\n      ABSOLUTE_XCASSET_FILE=$(realpath \"${PODS_ROOT}/$1\")\n      XCASSET_FILES+=(\"$ABSOLUTE_XCASSET_FILE\")\n      ;;\n    /*)\n      echo \"$1\"\n      echo \"$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n    *)\n      echo \"${PODS_ROOT}/$1\"\n      echo \"${PODS_ROOT}/$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n  esac\n}\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nrsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nif [[ \"${ACTION}\" == \"install\" ]]; then\n  mkdir -p \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\nrm -f \"$RESOURCES_TO_COPY\"\n\nif [[ -n \"${WRAPPER_EXTENSION}\" ]] && [ \"`xcrun --find actool`\" ] && [ -n \"$XCASSET_FILES\" ]\nthen\n  case \"${TARGETED_DEVICE_FAMILY}\" in\n    1,2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad --target-device iphone\"\n      ;;\n    1)\n      TARGET_DEVICE_ARGS=\"--target-device iphone\"\n      ;;\n    2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad\"\n      ;;\n    *)\n      TARGET_DEVICE_ARGS=\"--target-device mac\"\n      ;;\n  esac\n\n  # Find all other xcassets (this unfortunately includes those of path pods and other targets).\n  OTHER_XCASSETS=$(find \"$PWD\" -iname \"*.xcassets\" -type d)\n  while read line; do\n    if [[ $line != \"`realpath $PODS_ROOT`*\" ]]; then\n      XCASSET_FILES+=(\"$line\")\n    fi\n  done <<<\"$OTHER_XCASSETS\"\n\n  printf \"%s\\0\" \"${XCASSET_FILES[@]}\" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform \"${PLATFORM_NAME}\" --minimum-deployment-target \"${IPHONEOS_DEPLOYMENT_TARGET}\" ${TARGET_DEVICE_ARGS} --compress-pngs --compile \"${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods.debug.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Colors/Pods/Target Support Files/Pods/Pods.release.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/AppDelegate.h",
    "content": "//\n//  AppDelegate.h\n//  Countries\n//\n//  Created by Ignacio on 6/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import <CoreData/CoreData.h>\n\n@interface AppDelegate : UIResponder <UIApplicationDelegate>\n\n@property (strong, nonatomic) UIWindow *window;\n\n@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;\n@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;\n@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;\n\n- (void)saveContext;\n- (NSURL *)applicationDocumentsDirectory;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/AppDelegate.m",
    "content": "//\n//  AppDelegate.m\n//  Countries\n//\n//  Created by Ignacio on 6/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"AppDelegate.h\"\n#import \"MainViewController.h\"\n#import \"NSManagedObjectContext+Hydrate.h\"\n\n@implementation AppDelegate\n@synthesize managedObjectContext = _managedObjectContext;\n@synthesize managedObjectModel = _managedObjectModel;\n@synthesize persistentStoreCoordinator = _persistentStoreCoordinator;\n\n- (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n    [NSManagedObjectContext setSharedContext:self.managedObjectContext];\n    \n    return YES;\n}\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];\n    self.window.backgroundColor = [UIColor whiteColor];\n    self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:[MainViewController new]];\n    [self.window  makeKeyAndVisible];\n    \n    return YES;\n}\n\n\n#pragma mark - Core Data stack\n\n- (void)saveContext\n{\n    NSError *error = nil;\n    NSManagedObjectContext *managedObjectContext = self.managedObjectContext;\n    \n    if (managedObjectContext)\n    {\n        if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) {\n            // Replace this implementation with code to handle the error appropriately.\n            // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.\n            NSLog(@\"Unresolved error %@, %@\", error, [error userInfo]);\n            abort();\n        }\n    }\n}\n\n- (NSManagedObjectContext *)managedObjectContext\n{\n    if (!_managedObjectContext)\n    {\n        NSPersistentStoreCoordinator *coordinator = self.persistentStoreCoordinator;\n        \n        if (coordinator) {\n            _managedObjectContext = [[NSManagedObjectContext alloc] init];\n            [_managedObjectContext setPersistentStoreCoordinator:coordinator];\n        }\n    }\n    return _managedObjectContext;\n}\n\n- (NSManagedObjectModel *)managedObjectModel\n{\n    if (!_managedObjectModel)\n    {\n        NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@\"Model\" withExtension:@\"momd\"];\n        _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];\n    }\n    return _managedObjectModel;\n}\n\n- (NSPersistentStoreCoordinator *)persistentStoreCoordinator\n{\n    if (!_persistentStoreCoordinator)\n    {\n        NSError *error = nil;\n        _persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];\n        \n        NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@\"com.dzn.countries.sqlite\"];\n        \n        if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {\n            NSLog(@\"Unresolved error %@, %@\", error, [error userInfo]);\n            abort();\n        }\n    }\n    return _persistentStoreCoordinator;\n}\n\n\n#pragma mark - Application's Documents directory\n\n- (NSURL *)applicationDocumentsDirectory\n{\n    return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];\n}\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Country.h",
    "content": "//\n//  Country.h\n//  Countries\n//\n//  Created by Ignacio Romero Z. on 6/22/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import <CoreData/CoreData.h>\n\n\n@interface Country : NSManagedObject\n\n@property (nonatomic, retain) NSString * name;\n@property (nonatomic, retain) NSString * code;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Country.m",
    "content": "//\n//  Country.m\n//  Countries\n//\n//  Created by Ignacio Romero Z. on 6/22/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"Country.h\"\n\n\n@implementation Country\n\n@dynamic name;\n@dynamic code;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ad.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ad.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ad@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ae.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ae.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ae@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/af.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"af.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"af@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ag.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ag.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ag@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/al.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"al.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"al@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/am.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"am.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"am@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ar.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ar.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ar@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/at.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"at.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"at@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/au.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"au.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"au@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/az.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"az.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"az@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ba.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ba.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ba@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bd.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bd.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bd@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/be.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"be.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"be@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bf.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bf.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bf@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bh.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bh.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bh@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bi.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bi.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bi@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bj.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bj.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bj@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bo.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bo.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bo@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/br.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"br.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"br@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bs.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bs.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bs@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/by.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"by.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"by@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/bz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"bz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"bz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ca.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ca.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ca@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cd.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cd.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cd@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cf.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cf.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cf@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ch.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ch.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ch@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ci.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ci.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ci@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cl.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cl.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cl@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/co.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"co.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"co@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cu.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cu.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cu@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/cz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"cz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"cz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/de.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"de.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"de@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/dj.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"dj.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"dj@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/dk.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"dk.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"dk@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/dm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"dm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"dm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/do.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"do.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"do@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/dz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"dz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"dz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ec.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ec.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ec@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ee.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ee.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ee@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/eg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"eg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"eg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/er.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"er.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"er@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/es.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"es.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"es@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/et.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"et.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"et@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/fi.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"fi.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"fi@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/fj.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"fj.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"fj@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/fm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"fm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"fm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/fr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"fr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"fr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ga.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ga.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ga@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gd.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gd.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gd@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ge.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ge.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ge@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gh.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gh.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gh@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gq.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gq.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gq@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/gy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"gy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"gy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/hn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"hn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"hn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/hr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"hr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"hr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ht.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ht.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ht@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/hu.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"hu.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"hu@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/id.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"id.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"id@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ie.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ie.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ie@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/il.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"il.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"il@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/in.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"in.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"in@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/iq.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"iq.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"iq@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ir.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ir.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ir@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/is.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"is.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"is@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/it.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"it.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"it@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/jm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"jm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"jm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/jo.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"jo.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"jo@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/jp.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"jp.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"jp@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ke.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ke.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ke@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kh.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kh.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kh@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ki.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ki.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ki@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/km.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"km.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"km@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kp.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kp.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kp@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/kz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"kz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"kz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/la.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"la.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"la@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lc.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lc.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lc@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/li.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"li.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"li@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lk.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lk.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lk@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ls.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ls.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ls@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lu.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lu.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lu@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/lv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"lv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"lv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ly.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ly.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ly@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ma.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ma.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ma@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mc.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mc.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mc@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/md.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"md.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"md@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/me.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"me.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"me@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mh.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mh.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mh@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mk.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mk.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mk@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ml.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ml.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ml@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mu.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mu.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mu@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mx.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mx.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mx@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/my.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"my.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"my@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/mz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"mz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"mz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/na.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"na.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"na@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ne.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ne.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ne@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ng.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ng.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ng@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ni.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ni.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ni@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/nl.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"nl.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"nl@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/no.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"no.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"no@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/np.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"np.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"np@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/nr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"nr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"nr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/nz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"nz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"nz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/om.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"om.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"om@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pa.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pa.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pa@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pe.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pe.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pe@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ph.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ph.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ph@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pk.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pk.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pk@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pl.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pl.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pl@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/pw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"pw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"pw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/py.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"py.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"py@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/qa.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"qa.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"qa@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ro.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ro.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ro@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/rs.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"rs.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"rs@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ru.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ru.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ru@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/rw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"rw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"rw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sa.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sa.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sa@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sb.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sb.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sb@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sc.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sc.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sc@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sd.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sd.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sd@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/se.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"se.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"se@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/search_icon.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"search_icon.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"search_icon@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/si.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"si.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"si@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sk.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sk.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sk@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sl.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sl.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sl@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/so.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"so.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"so@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ss.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ss.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ss@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/st.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"st.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"st@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/sz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"sz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"sz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/td.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"td.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"td@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tg.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tg.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tg@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/th.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"th.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"th@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tj.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tj.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tj@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tl.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tl.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tl@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/to.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"to.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"to@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tr.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tr.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tr@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tt.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tt.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tt@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tv.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tv.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tv@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/tz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"tz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"tz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ua.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ua.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ua@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ug.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ug.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ug@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/unknown.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"unknown.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"unknown@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/us.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"us.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"us@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/uy.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"uy.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"uy@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/uz.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"uz.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"uz@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/va.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"va.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"va@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/vc.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"vc.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"vc@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ve.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ve.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ve@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/vn.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"vn.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"vn@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/vu.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"vu.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"vu@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ws.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ws.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ws@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/ye.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"ye.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"ye@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/za.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"za.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"za@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/zm.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"zm.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"zm@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Images.xcassets/zw.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\",\n      \"filename\" : \"zw.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"zw@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/MainViewController.h",
    "content": "//\n//  ViewController.h\n//  Countries\n//\n//  Created by Ignacio on 6/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import \"Country.h\"\n\n@interface MainViewController : UIViewController <UITableViewDataSource, UITableViewDelegate,\n                                                UISearchBarDelegate, NSFetchedResultsControllerDelegate>\n\n@property (nonatomic, strong) UITableView *tableView;\n@property (nonatomic, strong) UISearchBar *searchBar;\n@property (nonatomic, strong) NSFetchedResultsController *fetchedResultsController;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/MainViewController.m",
    "content": "//\n//  ViewController.m\n//  Countries\n//\n//  Created by Ignacio on 6/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import \"MainViewController.h\"\n#import \"NSManagedObjectContext+Hydrate.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface MainViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate> {\n\n    UIView *_loadingView;\n}\n@property (nonatomic) BOOL loading;\n@property (nonatomic) BOOL loaded;\n@property (nonatomic) BOOL searching;\n@property (nonatomic) BOOL beganUpdates;\n\n@property (nonatomic, strong) NSLayoutConstraint *keyboardHC;\n\n@end\n\n@implementation MainViewController\n\n- (id)init\n{\n    self = [super init];\n    if (self) {\n        [self populateContent];\n    }\n    return self;\n}\n\n#pragma mark - View lifecycle\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];\n    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];\n    \n    self.title = @\"Countries of the World\";\n    self.automaticallyAdjustsScrollViewInsets = NO;\n    self.edgesForExtendedLayout = UIRectEdgeNone;\n    \n    self.view.backgroundColor = [UIColor whiteColor];\n    \n    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(reloadContent:)];\n    \n    self.loading = YES;\n    \n    [self.view addSubview:self.tableView];\n    [self.view addSubview:self.searchBar];\n\n    [self setupViewConstraints];\n}\n\n\n#pragma mark - Getter Methods\n\n- (UITableView *)tableView\n{\n    if (!_tableView)\n    {\n        _tableView = [UITableView new];\n        _tableView.translatesAutoresizingMaskIntoConstraints = NO;\n        _tableView.delegate = self;\n        _tableView.dataSource = self;\n        \n        _tableView.emptyDataSetSource = self;\n        _tableView.emptyDataSetDelegate = self;\n \n        _tableView.tableFooterView = [UIView new];\n    }\n    return _tableView;\n}\n\n- (UISearchBar *)searchBar\n{\n    if (!_searchBar)\n    {\n        _searchBar = [UISearchBar new];\n        _searchBar.translatesAutoresizingMaskIntoConstraints = NO;\n        _searchBar.delegate = self;\n        \n        _searchBar.placeholder = @\"Search Country\";\n        _searchBar.searchBarStyle = UISearchBarStyleMinimal;\n    }\n    return _searchBar;\n}\n\n\n#pragma mark - MainViewController Methods\n\n- (void)populateContent\n{\n    // A list of countries in JSON by Félix Bellanger https://gist.github.com/Keeguon/2310008\n    NSString *path = [[NSBundle mainBundle] pathForResource:@\"countries\" ofType:@\"json\"];\n    [[NSManagedObjectContext sharedContext] hydrateStoreWithJSONAtPath:path attributeMappings:nil forEntityName:@\"Country\"];\n    \n    dispatch_async(dispatch_get_main_queue(), ^{\n        [self.tableView reloadData];\n    });\n}\n\n- (void)reloadContent:(id)sender\n{\n    self.loading = !self.loading;\n    \n    self.searchBar.userInteractionEnabled = !self.loading;\n    self.searchBar.alpha = self.loading ? 0.5 : 1.0;\n    \n    [self.tableView reloadData];\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return nil;\n}\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.loading) {\n        return nil;\n    }\n    \n    NSString *text = [NSString stringWithFormat:@\"No countries found matching\\n%@.\", self.searchBar.text];\n    \n    NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraphStyle.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:17.0],\n                                 NSForegroundColorAttributeName: [UIColor colorWithRed:170/255.0 green:171/255.0 blue:179/255.0 alpha:1.0],\n                                 NSParagraphStyleAttributeName: paragraphStyle};\n    \n    NSMutableAttributedString *attributedTitle = [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n    \n    [attributedTitle addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:17.0] range:[text rangeOfString:self.searchBar.text]];\n    \n    return attributedTitle;\n}\n\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    if (self.loading || ([self.searchBar isFirstResponder] && UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation))) {\n        return nil;\n    }\n    \n    NSString *text = @\"Search in Wikipedia\";\n    UIColor *textColor = (state == UIControlStateNormal) ? [UIColor colorWithRed:0/255.0 green:122/255.0 blue:255/255.0 alpha:1.0] : [UIColor colorWithRed:204/255.0 green:228/255.0 blue:255/255.0 alpha:1.0];\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:16.0],\n                                 NSForegroundColorAttributeName: textColor};\n    \n    NSMutableAttributedString *attributedTitle = [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n    return attributedTitle;\n}\n\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.loading || ([self.searchBar isFirstResponder] && UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation))) {\n        return nil;\n    }\n    \n    return [UIImage imageNamed:@\"search_icon\"];\n}\n\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.loading) {\n        UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];\n        [activityView startAnimating];\n        return activityView;\n    }\n    return nil;\n}\n\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return 0;\n}\n\n\n#pragma mark - DZNEmptyDataSetSource Methods\n\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n\n    if ([self.searchBar isFirstResponder]) {\n        [self.searchBar resignFirstResponder];\n    }\n}\n\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n\n    if ([self.searchBar isFirstResponder] && UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) {\n        return;\n    }\n    \n    NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@\"http://en.wikipedia.org/wiki/%@\", self.searchBar.text]];\n    \n    if ([[UIApplication sharedApplication] canOpenURL:URL]) {\n        [[UIApplication sharedApplication] openURL:URL];\n    }\n}\n\n- (CGPoint)offsetForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return CGPointZero;\n}\n\n\n#pragma mark - UITableViewDataSource Methods\n\n- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView\n{\n    return [[self.fetchedResultsController sections] count];\n}\n\n- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section\n{\n    if (self.loading) {\n        return 0;\n    }\n    \n    id <NSFetchedResultsSectionInfo> sectionInfo = [[self.fetchedResultsController sections] objectAtIndex:section];\n    return [sectionInfo numberOfObjects];\n}\n\n- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    static NSString *CellIdentifier = @\"Cell\";\n    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];\n    \n    if (!cell) {\n        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];\n        cell.accessoryType = UITableViewCellAccessoryNone;\n        cell.textLabel.textColor = [UIColor darkGrayColor];\n        cell.detailTextLabel.textColor = [UIColor grayColor];\n        \n        cell.imageView.layer.shadowColor = [UIColor blackColor].CGColor;\n        cell.imageView.layer.shadowOpacity = 0.4;\n        cell.imageView.layer.shadowRadius = 1.5;\n        cell.imageView.layer.shadowOffset = CGSizeZero;\n        cell.imageView.layer.shouldRasterize = YES;\n        cell.imageView.layer.rasterizationScale = [UIScreen mainScreen].scale;\n    }\n    \n    [self configureCell:cell atIndexPath:indexPath];\n    \n    return cell;\n}\n\n- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath\n{\n    Country *country = [self.fetchedResultsController objectAtIndexPath:indexPath];\n    \n    cell.textLabel.text = country.name;\n    cell.detailTextLabel.text = country.code;\n    \n    UIImage *image = [UIImage imageNamed:[country.code lowercaseString]];\n    if (!image) image = [UIImage imageNamed:@\"unknown\"];\n    cell.imageView.image = image;\n}\n\n- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath\n{\n    return 44.0;\n}\n\n\n#pragma mark - NSFetchedResultsControllerDelegate Methods\n\n- (NSFetchedResultsController *)fetchedResultsController\n{\n    if (!_fetchedResultsController)\n    {\n        NSManagedObjectContext *context = [NSManagedObjectContext sharedContext];\n        \n        NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:NSStringFromClass([Country class])];\n        fetchRequest.sortDescriptors = @[[[NSSortDescriptor alloc] initWithKey:@\"name\" ascending:YES]];\n\n        _fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:context sectionNameKeyPath:nil cacheName:nil];\n        _fetchedResultsController.delegate = self;\n        \n        NSError *error = nil;\n        if (![_fetchedResultsController performFetch:&error]) {\n            NSLog(@\"Unresolved error %@, %@\", error, [error userInfo]);\n        }\n    }\n    \n    if (self.searching && self.searchBar.text.length > 0) {\n        _fetchedResultsController.fetchRequest.predicate = [NSPredicate predicateWithFormat:@\"name CONTAINS[cd] %@ || code CONTAINS[cd] %@\", self.searchBar.text, self.searchBar.text];\n    }\n    else {\n        _fetchedResultsController.fetchRequest.predicate = [NSPredicate predicateWithFormat:@\"name != nil\"];\n    }\n    \n    NSError *error = nil;\n    if (![_fetchedResultsController performFetch:&error]) {\n        NSLog(@\"Unresolved error %@, %@\", error, [error userInfo]);\n    }\n    \n    return _fetchedResultsController;\n}\n\n- (void)controllerWillChangeContent:(NSFetchedResultsController *)controller\n{\n    if (![self beganUpdates] && self.loaded) {\n        [self.tableView beginUpdates];\n        [self setBeganUpdates:YES];\n    }\n}\n\n- (void)controller:(NSFetchedResultsController *)controller didChangeSection:(id <NSFetchedResultsSectionInfo>)sectionInfo\n           atIndex:(NSUInteger)sectionIndex forChangeType:(NSFetchedResultsChangeType)type\n{\n    if (!self.loaded) {\n        return;\n    }\n    \n    switch(type) {\n        case NSFetchedResultsChangeInsert:\n            [self.tableView insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationAutomatic];\n            break;\n            \n        case NSFetchedResultsChangeDelete:\n            [self.tableView deleteSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationAutomatic];\n            break;\n            \n        default:\n            return;\n    }\n}\n\n- (void)controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject\n       atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type\n      newIndexPath:(NSIndexPath *)newIndexPath\n{\n    if (!self.loaded) {\n        return;\n    }\n    \n    switch(type) {\n        case NSFetchedResultsChangeInsert:\n            [self.tableView insertRowsAtIndexPaths:@[newIndexPath] withRowAnimation:UITableViewRowAnimationAutomatic];\n            break;\n            \n        case NSFetchedResultsChangeDelete:\n            [self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];\n            break;\n            \n        case NSFetchedResultsChangeUpdate:\n            [self configureCell:[self.tableView cellForRowAtIndexPath:indexPath] atIndexPath:indexPath];\n            break;\n            \n        case NSFetchedResultsChangeMove:\n            [self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];\n            [self.tableView insertRowsAtIndexPaths:@[newIndexPath] withRowAnimation:UITableViewRowAnimationAutomatic];\n            break;\n    }\n}\n\n- (void)controllerDidChangeContent:(NSFetchedResultsController *)controller\n{\n    if ([self beganUpdates]) {\n        [self.tableView endUpdates];\n        [self setBeganUpdates:NO];\n    }\n}\n\n\n#pragma mark - UISearchBarDelegate Methods\n\n- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar\n{\n    return YES;\n}\n\n- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar\n{\n    return YES;\n}\n\n- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar\n{\n    [searchBar setShowsCancelButton:YES animated:YES];\n}\n\n- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar\n{\n    if (searchBar.text.length > 0) {\n        return;\n    }\n    \n    [searchBar setShowsCancelButton:NO animated:YES];\n    \n    self.searching = NO;\n    [self.tableView reloadData];\n}\n\n- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar\n{\n    searchBar.text = nil;\n    \n    [searchBar resignFirstResponder];\n}\n\n- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText\n{\n    self.searching = YES;\n    [self.tableView reloadData];\n}\n\n\n#pragma mark - Auto-Layout Methods\n\n- (void)setupViewConstraints\n{\n    NSDictionary *views = @{@\"searchBar\": self.searchBar, @\"tableView\": self.tableView};\n    \n    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|[searchBar]|\" options:0 metrics:nil views:views]];\n    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|[tableView]|\" options:0 metrics:nil views:views]];\n    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"V:|[searchBar(==44)]-0@999-[tableView(>=0@750)]|\" options:0 metrics:nil views:views]];\n    \n    NSPredicate *predicate = [NSPredicate predicateWithFormat:@\"firstAttribute = %d\", NSLayoutAttributeBottom];\n    self.keyboardHC = [[self.view.constraints filteredArrayUsingPredicate:predicate] firstObject];\n}\n\n- (void)updateViewConstraintsAnimated:(NSNotification *)note\n{\n    CGFloat duration = [[note.userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey] floatValue];\n    CGFloat curve = [[note.userInfo objectForKey:UIKeyboardAnimationCurveUserInfoKey] floatValue];\n    \n    CGRect endFrame = CGRectZero;\n    [[note.userInfo valueForKey:UIKeyboardFrameEndUserInfoKey] getValue:&endFrame];\n    \n    CGFloat minY = CGRectGetMinY(endFrame);\n    CGFloat keyboardHeight = endFrame.size.height;\n    \n    // Invert values when landscape, for iOS7 or prior\n    // In iOS8, Apple finally fixed the keyboard endframe values by returning the correct height in landscape orientation\n    if (![UIInputViewController class] && UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) {\n        keyboardHeight = endFrame.size.width;\n    }\n    \n    if (keyboardHeight == CGRectGetHeight([UIScreen mainScreen].bounds)) keyboardHeight = 0;\n    \n    self.keyboardHC.constant = (minY == [UIScreen mainScreen].bounds.size.height) ? 0.0 : keyboardHeight;\n    \n    [UIView animateWithDuration:duration\n                          delay:0.0\n                        options:curve\n                     animations:^{\n                         [self.view layoutIfNeeded];\n                     }\n                     completion:NULL];\n}\n\n\n#pragma mark - Keyboard Events\n\n- (void)keyboardWillShow:(NSNotification *)note\n{\n    [self updateViewConstraintsAnimated:note];\n}\n\n- (void)keyboardWillHide:(NSNotification *)note\n{\n    [self updateViewConstraintsAnimated:note];\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration\n{\n    if (![UIInputViewController class]) {\n        [self.tableView reloadEmptyDataSet];\n    }\n}\n\n- (void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator\n{    \n    [self.tableView reloadEmptyDataSet];\n}\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n\n#pragma mark - View lifeterm\n\n- (void)dealloc\n{\n    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification object:nil];\n    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillHideNotification object:nil];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Model.xcdatamodeld/Model.xcdatamodel/contents",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<model userDefinedModelVersionIdentifier=\"\" type=\"com.apple.IDECoreDataModeler.DataModel\" documentVersion=\"1.0\" lastSavedToolsVersion=\"5064\" systemVersion=\"13C1021\" minimumToolsVersion=\"Xcode 4.3\" macOSVersion=\"Automatic\" iOSVersion=\"Automatic\">\n    <entity name=\"Country\" representedClassName=\"Country\" syncable=\"YES\">\n        <attribute name=\"code\" optional=\"YES\" attributeType=\"String\" syncable=\"YES\"/>\n        <attribute name=\"name\" optional=\"YES\" attributeType=\"String\" syncable=\"YES\"/>\n    </entity>\n    <elements>\n        <element name=\"Country\" positionX=\"-63\" positionY=\"-18\" width=\"128\" height=\"75\"/>\n    </elements>\n</model>"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Supporting Files/Countries-Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleDisplayName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1.0</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Supporting Files/Countries-Prefix.pch",
    "content": "//\n//  Prefix header\n//\n//  The contents of this file are implicitly included at the beginning of every source file.\n//\n\n#import <Availability.h>\n\n#ifndef __IPHONE_5_0\n#warning \"This project uses features only available in iOS SDK 5.0 and later.\"\n#endif\n\n#ifdef __OBJC__\n    #import <UIKit/UIKit.h>\n    #import <Foundation/Foundation.h>\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/Supporting Files/main.m",
    "content": "//\n//  main.m\n//  Countries\n//\n//  Created by Ignacio on 6/4/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import \"AppDelegate.h\"\n\nint main(int argc, char * argv[])\n{\n    @autoreleasepool {\n        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/System.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-29@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-40@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"icon-60@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-29@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-40@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76~ipad.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"icon-76@2x~ipad.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"ipad\",\n      \"size\" : \"83.5x83.5\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/System.xcassets/LaunchImage.launchimage/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"736h\",\n      \"filename\" : \"Default-hd-plus@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"8.0\",\n      \"subtype\" : \"736h\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"667h\",\n      \"filename\" : \"Default-hd@2x.png\",\n      \"minimum-system-version\" : \"8.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"filename\" : \"default@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"extent\" : \"full-screen\",\n      \"idiom\" : \"iphone\",\n      \"subtype\" : \"retina4\",\n      \"filename\" : \"default-568@2x.png\",\n      \"minimum-system-version\" : \"7.0\",\n      \"orientation\" : \"portrait\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"minimum-system-version\" : \"7.0\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"iphone\",\n      \"extent\" : \"full-screen\",\n      \"subtype\" : \"retina4\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"portrait\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"to-status-bar\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"orientation\" : \"landscape\",\n      \"idiom\" : \"ipad\",\n      \"extent\" : \"full-screen\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/countries.json",
    "content": "[\n  {\"name\": \"Afghanistan\", \"code\": \"AF\"},\n  {\"name\": \"Åland Islands\", \"code\": \"AX\"},\n  {\"name\": \"Albania\", \"code\": \"AL\"},\n  {\"name\": \"Algeria\", \"code\": \"DZ\"},\n  {\"name\": \"American Samoa\", \"code\": \"AS\"},\n  {\"name\": \"AndorrA\", \"code\": \"AD\"},\n  {\"name\": \"Angola\", \"code\": \"AO\"},\n  {\"name\": \"Anguilla\", \"code\": \"AI\"},\n  {\"name\": \"Antarctica\", \"code\": \"AQ\"},\n  {\"name\": \"Antigua and Barbuda\", \"code\": \"AG\"},\n  {\"name\": \"Argentina\", \"code\": \"AR\"},\n  {\"name\": \"Armenia\", \"code\": \"AM\"},\n  {\"name\": \"Aruba\", \"code\": \"AW\"},\n  {\"name\": \"Australia\", \"code\": \"AU\"},\n  {\"name\": \"Austria\", \"code\": \"AT\"},\n  {\"name\": \"Azerbaijan\", \"code\": \"AZ\"},\n  {\"name\": \"Bahamas\", \"code\": \"BS\"},\n  {\"name\": \"Bahrain\", \"code\": \"BH\"},\n  {\"name\": \"Bangladesh\", \"code\": \"BD\"},\n  {\"name\": \"Barbados\", \"code\": \"BB\"},\n  {\"name\": \"Belarus\", \"code\": \"BY\"},\n  {\"name\": \"Belgium\", \"code\": \"BE\"},\n  {\"name\": \"Belize\", \"code\": \"BZ\"},\n  {\"name\": \"Benin\", \"code\": \"BJ\"},\n  {\"name\": \"Bermuda\", \"code\": \"BM\"},\n  {\"name\": \"Bhutan\", \"code\": \"BT\"},\n  {\"name\": \"Bolivia\", \"code\": \"BO\"},\n  {\"name\": \"Bosnia and Herzegovina\", \"code\": \"BA\"},\n  {\"name\": \"Botswana\", \"code\": \"BW\"},\n  {\"name\": \"Bouvet Island\", \"code\": \"BV\"},\n  {\"name\": \"Brazil\", \"code\": \"BR\"},\n  {\"name\": \"British Indian Ocean Territory\", \"code\": \"IO\"},\n  {\"name\": \"Brunei Darussalam\", \"code\": \"BN\"},\n  {\"name\": \"Bulgaria\", \"code\": \"BG\"},\n  {\"name\": \"Burkina Faso\", \"code\": \"BF\"},\n  {\"name\": \"Burundi\", \"code\": \"BI\"},\n  {\"name\": \"Cambodia\", \"code\": \"KH\"},\n  {\"name\": \"Cameroon\", \"code\": \"CM\"},\n  {\"name\": \"Canada\", \"code\": \"CA\"},\n  {\"name\": \"Cape Verde\", \"code\": \"CV\"},\n  {\"name\": \"Cayman Islands\", \"code\": \"KY\"},\n  {\"name\": \"Central African Republic\", \"code\": \"CF\"},\n  {\"name\": \"Chad\", \"code\": \"TD\"},\n  {\"name\": \"Chile\", \"code\": \"CL\"},\n  {\"name\": \"China\", \"code\": \"CN\"},\n  {\"name\": \"Christmas Island\", \"code\": \"CX\"},\n  {\"name\": \"Cocos (Keeling) Islands\", \"code\": \"CC\"},\n  {\"name\": \"Colombia\", \"code\": \"CO\"},\n  {\"name\": \"Comoros\", \"code\": \"KM\"},\n  {\"name\": \"Congo\", \"code\": \"CG\"},\n  {\"name\": \"Congo, The Democratic Republic of the\", \"code\": \"CD\"},\n  {\"name\": \"Cook Islands\", \"code\": \"CK\"},\n  {\"name\": \"Costa Rica\", \"code\": \"CR\"},\n  {\"name\": \"Cote D\\\"Ivoire\", \"code\": \"CI\"},\n  {\"name\": \"Croatia\", \"code\": \"HR\"},\n  {\"name\": \"Cuba\", \"code\": \"CU\"},\n  {\"name\": \"Cyprus\", \"code\": \"CY\"},\n  {\"name\": \"Czech Republic\", \"code\": \"CZ\"},\n  {\"name\": \"Denmark\", \"code\": \"DK\"},\n  {\"name\": \"Djibouti\", \"code\": \"DJ\"},\n  {\"name\": \"Dominica\", \"code\": \"DM\"},\n  {\"name\": \"Dominican Republic\", \"code\": \"DO\"},\n  {\"name\": \"Ecuador\", \"code\": \"EC\"},\n  {\"name\": \"Egypt\", \"code\": \"EG\"},\n  {\"name\": \"El Salvador\", \"code\": \"SV\"},\n  {\"name\": \"Equatorial Guinea\", \"code\": \"GQ\"},\n  {\"name\": \"Eritrea\", \"code\": \"ER\"},\n  {\"name\": \"Estonia\", \"code\": \"EE\"},\n  {\"name\": \"Ethiopia\", \"code\": \"ET\"},\n  {\"name\": \"Falkland Islands (Malvinas)\", \"code\": \"FK\"},\n  {\"name\": \"Faroe Islands\", \"code\": \"FO\"},\n  {\"name\": \"Fiji\", \"code\": \"FJ\"},\n  {\"name\": \"Finland\", \"code\": \"FI\"},\n  {\"name\": \"France\", \"code\": \"FR\"},\n  {\"name\": \"French Guiana\", \"code\": \"GF\"},\n  {\"name\": \"French Polynesia\", \"code\": \"PF\"},\n  {\"name\": \"French Southern Territories\", \"code\": \"TF\"},\n  {\"name\": \"Gabon\", \"code\": \"GA\"},\n  {\"name\": \"Gambia\", \"code\": \"GM\"},\n  {\"name\": \"Georgia\", \"code\": \"GE\"},\n  {\"name\": \"Germany\", \"code\": \"DE\"},\n  {\"name\": \"Ghana\", \"code\": \"GH\"},\n  {\"name\": \"Gibraltar\", \"code\": \"GI\"},\n  {\"name\": \"Greece\", \"code\": \"GR\"},\n  {\"name\": \"Greenland\", \"code\": \"GL\"},\n  {\"name\": \"Grenada\", \"code\": \"GD\"},\n  {\"name\": \"Guadeloupe\", \"code\": \"GP\"},\n  {\"name\": \"Guam\", \"code\": \"GU\"},\n  {\"name\": \"Guatemala\", \"code\": \"GT\"},\n  {\"name\": \"Guernsey\", \"code\": \"GG\"},\n  {\"name\": \"Guinea\", \"code\": \"GN\"},\n  {\"name\": \"Guinea-Bissau\", \"code\": \"GW\"},\n  {\"name\": \"Guyana\", \"code\": \"GY\"},\n  {\"name\": \"Haiti\", \"code\": \"HT\"},\n  {\"name\": \"Heard Island and Mcdonald Islands\", \"code\": \"HM\"},\n  {\"name\": \"Holy See (Vatican City State)\", \"code\": \"VA\"},\n  {\"name\": \"Honduras\", \"code\": \"HN\"},\n  {\"name\": \"Hong Kong\", \"code\": \"HK\"},\n  {\"name\": \"Hungary\", \"code\": \"HU\"},\n  {\"name\": \"Iceland\", \"code\": \"IS\"},\n  {\"name\": \"India\", \"code\": \"IN\"},\n  {\"name\": \"Indonesia\", \"code\": \"ID\"},\n  {\"name\": \"Iran, Islamic Republic Of\", \"code\": \"IR\"},\n  {\"name\": \"Iraq\", \"code\": \"IQ\"},\n  {\"name\": \"Ireland\", \"code\": \"IE\"},\n  {\"name\": \"Isle of Man\", \"code\": \"IM\"},\n  {\"name\": \"Israel\", \"code\": \"IL\"},\n  {\"name\": \"Italy\", \"code\": \"IT\"},\n  {\"name\": \"Jamaica\", \"code\": \"JM\"},\n  {\"name\": \"Japan\", \"code\": \"JP\"},\n  {\"name\": \"Jersey\", \"code\": \"JE\"},\n  {\"name\": \"Jordan\", \"code\": \"JO\"},\n  {\"name\": \"Kazakhstan\", \"code\": \"KZ\"},\n  {\"name\": \"Kenya\", \"code\": \"KE\"},\n  {\"name\": \"Kiribati\", \"code\": \"KI\"},\n  {\"name\": \"Korea, Democratic People\\\"S Republic of\", \"code\": \"KP\"},\n  {\"name\": \"Korea, Republic of\", \"code\": \"KR\"},\n  {\"name\": \"Kuwait\", \"code\": \"KW\"},\n  {\"name\": \"Kyrgyzstan\", \"code\": \"KG\"},\n  {\"name\": \"Lao People\\\"S Democratic Republic\", \"code\": \"LA\"},\n  {\"name\": \"Latvia\", \"code\": \"LV\"},\n  {\"name\": \"Lebanon\", \"code\": \"LB\"},\n  {\"name\": \"Lesotho\", \"code\": \"LS\"},\n  {\"name\": \"Liberia\", \"code\": \"LR\"},\n  {\"name\": \"Libyan Arab Jamahiriya\", \"code\": \"LY\"},\n  {\"name\": \"Liechtenstein\", \"code\": \"LI\"},\n  {\"name\": \"Lithuania\", \"code\": \"LT\"},\n  {\"name\": \"Luxembourg\", \"code\": \"LU\"},\n  {\"name\": \"Macao\", \"code\": \"MO\"},\n  {\"name\": \"Macedonia, The Former Yugoslav Republic of\", \"code\": \"MK\"},\n  {\"name\": \"Madagascar\", \"code\": \"MG\"},\n  {\"name\": \"Malawi\", \"code\": \"MW\"},\n  {\"name\": \"Malaysia\", \"code\": \"MY\"},\n  {\"name\": \"Maldives\", \"code\": \"MV\"},\n  {\"name\": \"Mali\", \"code\": \"ML\"},\n  {\"name\": \"Malta\", \"code\": \"MT\"},\n  {\"name\": \"Marshall Islands\", \"code\": \"MH\"},\n  {\"name\": \"Martinique\", \"code\": \"MQ\"},\n  {\"name\": \"Mauritania\", \"code\": \"MR\"},\n  {\"name\": \"Mauritius\", \"code\": \"MU\"},\n  {\"name\": \"Mayotte\", \"code\": \"YT\"},\n  {\"name\": \"Mexico\", \"code\": \"MX\"},\n  {\"name\": \"Micronesia, Federated States of\", \"code\": \"FM\"},\n  {\"name\": \"Moldova, Republic of\", \"code\": \"MD\"},\n  {\"name\": \"Monaco\", \"code\": \"MC\"},\n  {\"name\": \"Mongolia\", \"code\": \"MN\"},\n  {\"name\": \"Montserrat\", \"code\": \"MS\"},\n  {\"name\": \"Morocco\", \"code\": \"MA\"},\n  {\"name\": \"Mozambique\", \"code\": \"MZ\"},\n  {\"name\": \"Myanmar\", \"code\": \"MM\"},\n  {\"name\": \"Namibia\", \"code\": \"NA\"},\n  {\"name\": \"Nauru\", \"code\": \"NR\"},\n  {\"name\": \"Nepal\", \"code\": \"NP\"},\n  {\"name\": \"Netherlands\", \"code\": \"NL\"},\n  {\"name\": \"Netherlands Antilles\", \"code\": \"AN\"},\n  {\"name\": \"New Caledonia\", \"code\": \"NC\"},\n  {\"name\": \"New Zealand\", \"code\": \"NZ\"},\n  {\"name\": \"Nicaragua\", \"code\": \"NI\"},\n  {\"name\": \"Niger\", \"code\": \"NE\"},\n  {\"name\": \"Nigeria\", \"code\": \"NG\"},\n  {\"name\": \"Niue\", \"code\": \"NU\"},\n  {\"name\": \"Norfolk Island\", \"code\": \"NF\"},\n  {\"name\": \"Northern Mariana Islands\", \"code\": \"MP\"},\n  {\"name\": \"Norway\", \"code\": \"NO\"},\n  {\"name\": \"Oman\", \"code\": \"OM\"},\n  {\"name\": \"Pakistan\", \"code\": \"PK\"},\n  {\"name\": \"Palau\", \"code\": \"PW\"},\n  {\"name\": \"Palestinian Territory, Occupied\", \"code\": \"PS\"},\n  {\"name\": \"Panama\", \"code\": \"PA\"},\n  {\"name\": \"Papua New Guinea\", \"code\": \"PG\"},\n  {\"name\": \"Paraguay\", \"code\": \"PY\"},\n  {\"name\": \"Peru\", \"code\": \"PE\"},\n  {\"name\": \"Philippines\", \"code\": \"PH\"},\n  {\"name\": \"Pitcairn\", \"code\": \"PN\"},\n  {\"name\": \"Poland\", \"code\": \"PL\"},\n  {\"name\": \"Portugal\", \"code\": \"PT\"},\n  {\"name\": \"Puerto Rico\", \"code\": \"PR\"},\n  {\"name\": \"Qatar\", \"code\": \"QA\"},\n  {\"name\": \"Reunion\", \"code\": \"RE\"},\n  {\"name\": \"Romania\", \"code\": \"RO\"},\n  {\"name\": \"Russian Federation\", \"code\": \"RU\"},\n  {\"name\": \"RWANDA\", \"code\": \"RW\"},\n  {\"name\": \"Saint Helena\", \"code\": \"SH\"},\n  {\"name\": \"Saint Kitts and Nevis\", \"code\": \"KN\"},\n  {\"name\": \"Saint Lucia\", \"code\": \"LC\"},\n  {\"name\": \"Saint Pierre and Miquelon\", \"code\": \"PM\"},\n  {\"name\": \"Saint Vincent and the Grenadines\", \"code\": \"VC\"},\n  {\"name\": \"Samoa\", \"code\": \"WS\"},\n  {\"name\": \"San Marino\", \"code\": \"SM\"},\n  {\"name\": \"Sao Tome and Principe\", \"code\": \"ST\"},\n  {\"name\": \"Saudi Arabia\", \"code\": \"SA\"},\n  {\"name\": \"Senegal\", \"code\": \"SN\"},\n  {\"name\": \"Serbia and Montenegro\", \"code\": \"CS\"},\n  {\"name\": \"Seychelles\", \"code\": \"SC\"},\n  {\"name\": \"Sierra Leone\", \"code\": \"SL\"},\n  {\"name\": \"Singapore\", \"code\": \"SG\"},\n  {\"name\": \"Slovakia\", \"code\": \"SK\"},\n  {\"name\": \"Slovenia\", \"code\": \"SI\"},\n  {\"name\": \"Solomon Islands\", \"code\": \"SB\"},\n  {\"name\": \"Somalia\", \"code\": \"SO\"},\n  {\"name\": \"South Africa\", \"code\": \"ZA\"},\n  {\"name\": \"South Georgia and the South Sandwich Islands\", \"code\": \"GS\"},\n  {\"name\": \"Spain\", \"code\": \"ES\"},\n  {\"name\": \"Sri Lanka\", \"code\": \"LK\"},\n  {\"name\": \"Sudan\", \"code\": \"SD\"},\n  {\"name\": \"Suriname\", \"code\": \"SR\"},\n  {\"name\": \"Svalbard and Jan Mayen\", \"code\": \"SJ\"},\n  {\"name\": \"Swaziland\", \"code\": \"SZ\"},\n  {\"name\": \"Sweden\", \"code\": \"SE\"},\n  {\"name\": \"Switzerland\", \"code\": \"CH\"},\n  {\"name\": \"Syrian Arab Republic\", \"code\": \"SY\"},\n  {\"name\": \"Taiwan, Province of China\", \"code\": \"TW\"},\n  {\"name\": \"Tajikistan\", \"code\": \"TJ\"},\n  {\"name\": \"Tanzania, United Republic of\", \"code\": \"TZ\"},\n  {\"name\": \"Thailand\", \"code\": \"TH\"},\n  {\"name\": \"Timor-Leste\", \"code\": \"TL\"},\n  {\"name\": \"Togo\", \"code\": \"TG\"},\n  {\"name\": \"Tokelau\", \"code\": \"TK\"},\n  {\"name\": \"Tonga\", \"code\": \"TO\"},\n  {\"name\": \"Trinidad and Tobago\", \"code\": \"TT\"},\n  {\"name\": \"Tunisia\", \"code\": \"TN\"},\n  {\"name\": \"Turkey\", \"code\": \"TR\"},\n  {\"name\": \"Turkmenistan\", \"code\": \"TM\"},\n  {\"name\": \"Turks and Caicos Islands\", \"code\": \"TC\"},\n  {\"name\": \"Tuvalu\", \"code\": \"TV\"},\n  {\"name\": \"Uganda\", \"code\": \"UG\"},\n  {\"name\": \"Ukraine\", \"code\": \"UA\"},\n  {\"name\": \"United Arab Emirates\", \"code\": \"AE\"},\n  {\"name\": \"United Kingdom\", \"code\": \"GB\"},\n  {\"name\": \"United States\", \"code\": \"US\"},\n  {\"name\": \"United States Minor Outlying Islands\", \"code\": \"UM\"},\n  {\"name\": \"Uruguay\", \"code\": \"UY\"},\n  {\"name\": \"Uzbekistan\", \"code\": \"UZ\"}, \n  {\"name\": \"Vanuatu\", \"code\": \"VU\"}, \n  {\"name\": \"Venezuela\", \"code\": \"VE\"}, \n  {\"name\": \"Viet Nam\", \"code\": \"VN\"}, \n  {\"name\": \"Virgin Islands, British\", \"code\": \"VG\"}, \n  {\"name\": \"Virgin Islands, U.S.\", \"code\": \"VI\"}, \n  {\"name\": \"Wallis and Futuna\", \"code\": \"WF\"}, \n  {\"name\": \"Western Sahara\", \"code\": \"EH\"}, \n  {\"name\": \"Yemen\", \"code\": \"YE\"}, \n  {\"name\": \"Zambia\", \"code\": \"ZM\"}, \n  {\"name\": \"Zimbabwe\", \"code\": \"ZW\"} \n  ]"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries/en.lproj/InfoPlist.strings",
    "content": "/* Localized versions of Info.plist keys */\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t02814654A00E4227802251C5 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AED14F1ABCD94E898178FF50 /* libPods.a */; };\n\t\t4F44C93E193FD8B000E34052 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F44C93D193FD8B000E34052 /* Foundation.framework */; };\n\t\t4F44C940193FD8B000E34052 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F44C93F193FD8B000E34052 /* CoreGraphics.framework */; };\n\t\t4F44C942193FD8B000E34052 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F44C941193FD8B000E34052 /* UIKit.framework */; };\n\t\t4F4C75BC1957ABB200C32957 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F4C75BB1957ABB200C32957 /* CoreData.framework */; };\n\t\t4F4C75F11957AD7B00C32957 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F4C75E21957AD7B00C32957 /* AppDelegate.m */; };\n\t\t4F4C75F21957AD7B00C32957 /* countries.json in Resources */ = {isa = PBXBuildFile; fileRef = 4F4C75E31957AD7B00C32957 /* countries.json */; };\n\t\t4F4C75F31957AD7B00C32957 /* Country.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F4C75E51957AD7B00C32957 /* Country.m */; };\n\t\t4F4C75F41957AD7B00C32957 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4F4C75E61957AD7B00C32957 /* InfoPlist.strings */; };\n\t\t4F4C75F51957AD7B00C32957 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4F4C75E81957AD7B00C32957 /* Images.xcassets */; };\n\t\t4F4C75F61957AD7B00C32957 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F4C75EA1957AD7B00C32957 /* MainViewController.m */; };\n\t\t4F4C75F71957AD7B00C32957 /* Model.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 4F4C75EB1957AD7B00C32957 /* Model.xcdatamodeld */; };\n\t\t4F4C75F91957AD7B00C32957 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F4C75F01957AD7B00C32957 /* main.m */; };\n\t\t4F657CC219CD4A8700347199 /* System.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4F657CC119CD4A8700347199 /* System.xcassets */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t27AF644AB604AEC96EE0DBE6 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.release.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t4F44C93A193FD8B000E34052 /* Countries.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Countries.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t4F44C93D193FD8B000E34052 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n\t\t4F44C93F193FD8B000E34052 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };\n\t\t4F44C941193FD8B000E34052 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\t4F44C95C193FD8B200E34052 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };\n\t\t4F4C75BB1957ABB200C32957 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };\n\t\t4F4C75E11957AD7B00C32957 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\t4F4C75E21957AD7B00C32957 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = \"<group>\"; };\n\t\t4F4C75E31957AD7B00C32957 /* countries.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = countries.json; sourceTree = \"<group>\"; };\n\t\t4F4C75E41957AD7B00C32957 /* Country.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Country.h; sourceTree = \"<group>\"; };\n\t\t4F4C75E51957AD7B00C32957 /* Country.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Country.m; sourceTree = \"<group>\"; };\n\t\t4F4C75E71957AD7B00C32957 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\t4F4C75E81957AD7B00C32957 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = ../Images.xcassets; sourceTree = \"<group>\"; };\n\t\t4F4C75E91957AD7B00C32957 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = \"<group>\"; };\n\t\t4F4C75EA1957AD7B00C32957 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = \"<group>\"; };\n\t\t4F4C75EC1957AD7B00C32957 /* Model.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Model.xcdatamodel; sourceTree = \"<group>\"; };\n\t\t4F4C75EE1957AD7B00C32957 /* Countries-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = \"Countries-Info.plist\"; sourceTree = \"<group>\"; };\n\t\t4F4C75EF1957AD7B00C32957 /* Countries-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"Countries-Prefix.pch\"; sourceTree = \"<group>\"; };\n\t\t4F4C75F01957AD7B00C32957 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t4F657CC119CD4A8700347199 /* System.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = System.xcassets; path = Countries/System.xcassets; sourceTree = SOURCE_ROOT; };\n\t\tAED14F1ABCD94E898178FF50 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD2421B3CF1B527EDF568FAB8 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.debug.xcconfig\"; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t4F44C937193FD8B000E34052 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F4C75BC1957ABB200C32957 /* CoreData.framework in Frameworks */,\n\t\t\t\t4F44C940193FD8B000E34052 /* CoreGraphics.framework in Frameworks */,\n\t\t\t\t4F44C942193FD8B000E34052 /* UIKit.framework in Frameworks */,\n\t\t\t\t4F44C93E193FD8B000E34052 /* Foundation.framework in Frameworks */,\n\t\t\t\t02814654A00E4227802251C5 /* libPods.a in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t4F44C931193FD8B000E34052 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75E01957AD7B00C32957 /* Countries */,\n\t\t\t\t4F44C93C193FD8B000E34052 /* Frameworks */,\n\t\t\t\t4F44C93B193FD8B000E34052 /* Products */,\n\t\t\t\t725D668220685F6554F26A22 /* Pods */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F44C93B193FD8B000E34052 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F44C93A193FD8B000E34052 /* Countries.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F44C93C193FD8B000E34052 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75BB1957ABB200C32957 /* CoreData.framework */,\n\t\t\t\t4F44C93D193FD8B000E34052 /* Foundation.framework */,\n\t\t\t\t4F44C93F193FD8B000E34052 /* CoreGraphics.framework */,\n\t\t\t\t4F44C941193FD8B000E34052 /* UIKit.framework */,\n\t\t\t\t4F44C95C193FD8B200E34052 /* XCTest.framework */,\n\t\t\t\tAED14F1ABCD94E898178FF50 /* libPods.a */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F4C75E01957AD7B00C32957 /* Countries */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75E11957AD7B00C32957 /* AppDelegate.h */,\n\t\t\t\t4F4C75E21957AD7B00C32957 /* AppDelegate.m */,\n\t\t\t\t4F4C75E91957AD7B00C32957 /* MainViewController.h */,\n\t\t\t\t4F4C75EA1957AD7B00C32957 /* MainViewController.m */,\n\t\t\t\t4F4C75E41957AD7B00C32957 /* Country.h */,\n\t\t\t\t4F4C75E51957AD7B00C32957 /* Country.m */,\n\t\t\t\t4F4C75EB1957AD7B00C32957 /* Model.xcdatamodeld */,\n\t\t\t\t4F4C75E31957AD7B00C32957 /* countries.json */,\n\t\t\t\t4F4C75ED1957AD7B00C32957 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = Countries;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F4C75ED1957AD7B00C32957 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75E81957AD7B00C32957 /* Images.xcassets */,\n\t\t\t\t4F657CC119CD4A8700347199 /* System.xcassets */,\n\t\t\t\t4F4C75E61957AD7B00C32957 /* InfoPlist.strings */,\n\t\t\t\t4F4C75EE1957AD7B00C32957 /* Countries-Info.plist */,\n\t\t\t\t4F4C75EF1957AD7B00C32957 /* Countries-Prefix.pch */,\n\t\t\t\t4F4C75F01957AD7B00C32957 /* main.m */,\n\t\t\t);\n\t\t\tpath = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t725D668220685F6554F26A22 /* Pods */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD2421B3CF1B527EDF568FAB8 /* Pods.debug.xcconfig */,\n\t\t\t\t27AF644AB604AEC96EE0DBE6 /* Pods.release.xcconfig */,\n\t\t\t);\n\t\t\tname = Pods;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t4F44C939193FD8B000E34052 /* Countries */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 4F44C96C193FD8B200E34052 /* Build configuration list for PBXNativeTarget \"Countries\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t4F44C936193FD8B000E34052 /* Sources */,\n\t\t\t\t4F44C937193FD8B000E34052 /* Frameworks */,\n\t\t\t\t4F44C938193FD8B000E34052 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = Countries;\n\t\t\tproductName = ScrollTest;\n\t\t\tproductReference = 4F44C93A193FD8B000E34052 /* Countries.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t4F44C932193FD8B000E34052 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = \"DZN Labs\";\n\t\t\t};\n\t\t\tbuildConfigurationList = 4F44C935193FD8B000E34052 /* Build configuration list for PBXProject \"Countries\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tBase,\n\t\t\t);\n\t\t\tmainGroup = 4F44C931193FD8B000E34052;\n\t\t\tproductRefGroup = 4F44C93B193FD8B000E34052 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t4F44C939193FD8B000E34052 /* Countries */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t4F44C938193FD8B000E34052 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F4C75F21957AD7B00C32957 /* countries.json in Resources */,\n\t\t\t\t4F657CC219CD4A8700347199 /* System.xcassets in Resources */,\n\t\t\t\t4F4C75F51957AD7B00C32957 /* Images.xcassets in Resources */,\n\t\t\t\t4F4C75F41957AD7B00C32957 /* InfoPlist.strings in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t4F44C936193FD8B000E34052 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F4C75F11957AD7B00C32957 /* AppDelegate.m in Sources */,\n\t\t\t\t4F4C75F31957AD7B00C32957 /* Country.m in Sources */,\n\t\t\t\t4F4C75F71957AD7B00C32957 /* Model.xcdatamodeld in Sources */,\n\t\t\t\t4F4C75F91957AD7B00C32957 /* main.m in Sources */,\n\t\t\t\t4F4C75F61957AD7B00C32957 /* MainViewController.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXVariantGroup section */\n\t\t4F4C75E61957AD7B00C32957 /* InfoPlist.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75E71957AD7B00C32957 /* en */,\n\t\t\t);\n\t\t\tname = InfoPlist.strings;\n\t\t\tpath = ..;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t4F44C96A193FD8B200E34052 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F44C96B193FD8B200E34052 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t4F44C96D193FD8B200E34052 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D2421B3CF1B527EDF568FAB8 /* Pods.debug.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Countries/Supporting Files/Countries-Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Countries/Supporting Files/Countries-Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Countries;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F44C96E193FD8B200E34052 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 27AF644AB604AEC96EE0DBE6 /* Pods.release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Countries/Supporting Files/Countries-Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Countries/Supporting Files/Countries-Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Countries;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t4F44C935193FD8B000E34052 /* Build configuration list for PBXProject \"Countries\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F44C96A193FD8B200E34052 /* Debug */,\n\t\t\t\t4F44C96B193FD8B200E34052 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t4F44C96C193FD8B200E34052 /* Build configuration list for PBXNativeTarget \"Countries\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F44C96D193FD8B200E34052 /* Debug */,\n\t\t\t\t4F44C96E193FD8B200E34052 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\n/* Begin XCVersionGroup section */\n\t\t4F4C75EB1957AD7B00C32957 /* Model.xcdatamodeld */ = {\n\t\t\tisa = XCVersionGroup;\n\t\t\tchildren = (\n\t\t\t\t4F4C75EC1957AD7B00C32957 /* Model.xcdatamodel */,\n\t\t\t);\n\t\t\tcurrentVersion = 4F4C75EC1957AD7B00C32957 /* Model.xcdatamodel */;\n\t\t\tpath = Model.xcdatamodeld;\n\t\t\tsourceTree = \"<group>\";\n\t\t\tversionGroupType = wrapper.xcdatamodel;\n\t\t};\n/* End XCVersionGroup section */\n\t};\n\trootObject = 4F44C932193FD8B000E34052 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Sample.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Countries.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Countries.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Pods/Pods.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Podfile",
    "content": "platform :ios, '6.0'\n\npod 'DZNEmptyDataSet', :path => '../../'\n\npod 'NSManagedObjectContext-Hydrate', '~> 1.0.4'"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Local Podspecs/DZNEmptyDataSet.podspec.json",
    "content": "{\n  \"name\": \"DZNEmptyDataSet\",\n  \"version\": \"1.8\",\n  \"summary\": \"A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\",\n  \"description\": \"It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed.\",\n  \"homepage\": \"https://github.com/dzenbot/DZNEmptyDataSet\",\n  \"license\": {\n    \"type\": \"MIT\",\n    \"file\": \"LICENSE\"\n  },\n  \"authors\": {\n    \"dzenbot\": \"iromero@dzen.cl\"\n  },\n  \"platforms\": {\n    \"ios\": \"6.0\"\n  },\n  \"source\": {\n    \"git\": \"https://github.com/dzenbot/DZNEmptyDataSet.git\",\n    \"tag\": \"v1.8\"\n  },\n  \"source_files\": [\n    \"Classes\",\n    \"Source/**/*.{h,m}\"\n  ],\n  \"requires_arc\": true,\n  \"frameworks\": \"UIKit\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/NSManagedObjectContext-Hydrate/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2012 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/NSManagedObjectContext-Hydrate/README.md",
    "content": "NSManagedObjectContext-Hydrate\n==============================\n\nHave you ever wanted to preload an application's CoreData store?<br>\nIf you did, you must know then that it's a real painful and undocumented process. You probably tried different techniques like using Python or Ruby scripts, but it should be easier than that!<br><br>\nThis category class helps you by parsing and saving automagically every object from a JSON or CSV data structure into a persistent store with no effort.\n\n## Installation\n\nAvailable in [Cocoa Pods](http://cocoapods.org/?q=NSManagedObjectContext-Hydrate)\n```\npod 'NSManagedObjectContext-Hydrate', '~> 1.0.3'\n```\n\n## How to use\n\n[Check out the Doc Set](http://cocoadocs.org/docsets/NSManagedObjectContext-Hydrate/1.0.3/)\n\n### Step 1\n```\n#import <CoreData/CoreData.h>\n#import \"NSManagedObjectContext+Hydrate.h\"\n```\n\n### Step 2\nAfter initialising your Managed Object Context, you are ready to preload your JSON content into the store.\nCall the following method:\n```\nNSString *path = [[NSBundle mainBundle] pathForResource:@\"persons\" ofType:@\"json\"];\nNSDictionary *attributes = @{@\"firstName\":@\"first_name\", @\"lastName\":@\"last_name\", @\"age\":@\"age\", @\"height\":@\"height\", @\"weight\":@\"weight\"};\n\n[_managedObjectContext hydrateStoreWithJSONAtPath:path attributeMappings:attributes forEntityName:@\"Person\"];\n```\n\nOr your CSV content:\n```\nNSString *path = [[NSBundle mainBundle] pathForResource:@\"persons\" ofType:@\"csv\"];\nNSDictionary *attributes = @{@\"firstName\":@\"first_name\", @\"lastName\":@\"last_name\", @\"age\":@\"age\", @\"height\":@\"height\", @\"weight\":@\"weight\"};\n\n[_managedObjectContext hydrateStoreWithCSVAtPath:path attributeMappings:attributes forEntityName:@\"Person\"];\n```\n\n### Sample project\nTake a look into the sample project. Everything is there.<br>\nEnjoy and collaborate if you feel this library could be improved. (Check the to-do list)\n\n\n## To-Do's\n- Multiple-hydrations at a time.\n- Update values for existent entities.\n- Refactor Refactor Refactor!\n\n\n## License\n(The MIT License)\n\nCopyright (c) 2012 Ignacio Romero Zurbuchen <iromero@dzen.cl>\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/NSManagedObjectContext-Hydrate/Source/NSManagedObjectContext+Hydrate.h",
    "content": "//\n//  NSManagedObjectContext+Hydrate.m\n//\n//  Created by Ignacio Romero Zurbuchen on 7/9/13.\n//  Copyright (c) 2013 DZN Labs.\n//  Licence: MIT-Licence\n//\n\n#import <CoreData/CoreData.h>\n\n/**\n A NSManagedObjectContext category class for preload a CoreData persistent store with JSON data.\n IMPORTANT: Parsing is done automagically if the JSON key paths are identical to the entity attribute names. If not, you must provide a dictionary with attribute mappings matching the source key paths.\n */\n@interface NSManagedObjectContext (Hydrate)\n\n/**\n A custom date format that will be used for all date mappings that have not been configured specifically.\n If not set, the default format will be used instead \"yyyy-MM-dd'T'HH:mm:ss'Z'\"\n */\n@property (nonatomic, strong) NSString *preferredDateFormat;\n\n/**\n Returns the singleton managedObjectContext instance.\n \n @return The shared managedObjectContext.\n */\n+ (NSManagedObjectContext *)sharedContext;\n\n\n/**\n Sets a managedObjectContext static instance.\n \n @param context The managedObjectContext to be set.\n */\n+ (void)setSharedContext:(NSManagedObjectContext *)context;\n\n\n/**\n Preloads an entity table into the persistent store based on a CSV file's data.\n \n @param path The CSV file's path.\n @param attributes A collection of attribute mappings, wherein the keys represent the name target attributes on the destination object and the values represent the source key path.\n @param entityName The name of an entity to be stored.\n \n @discussion Calling this method without a valid attribute mappings collection will raise an exception. The dictionary must be keyed by destination attribute name to source key (the inverse way how the RKObjectMapping class from RestKit works).\n Passing a nil attribute mappings collection will be the same as calling hydrateStoreWithJSONAtPath:forEntityName: method.\n */\n- (void)hydrateStoreWithCSVAtPath:(NSString *)path attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName;\n\n\n/**\n Preloads an entity table into the persistent store based on a JSON file's data.\n \n @param path The JSON file's path.\n @param attributes A collection of attribute mappings, wherein the keys represent the name target attributes on the destination object and the values represent the source key path.\n @param entityName The name of an entity to be stored.\n \n @discussion Calling this method without a valid attribute mappings collection will raise an exception. The dictionary must be keyed by destination attribute name to source key (the inverse way how the RKObjectMapping class from RestKit works).\n Passing a nil attribute mappings collection will be the same as calling hydrateStoreWithJSONAtPath:forEntityName: method.\n */\n- (void)hydrateStoreWithJSONAtPath:(NSString *)path attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName;\n\n\n/**\n Preloads an entity table into the persistent store.\n \n @param objects A list of parsed objects (preferable, NSDictionary instances).\n @param attributes A collection of attribute mappings, wherein the keys represent the name target attributes on the destination object and the values represent the source key path.\n @param entityName The name of an entity to be stored.\n \n @discussion Calling this method without a valid attribute mappings collection will raise an exception. The dictionary must be keyed by destination attribute name to source key (the inverse way how the RKObjectMapping class from RestKit works).\n Passing a nil attribute mappings collection will be the same as calling hydrateStoreWithObjects:forEntityName: method.\n */\n- (void)hydrateStoreWithObjects:(NSArray *)objects attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName;\n\n\n/**\n Checks if there isn't already an entity table preloaded with content.\n \n @param entityName The entity name to check.\n @returns YES if the store's table is empty. NO if the store is already preloaded with content.\n */\n- (BOOL)isEmptyStoreForEntityName:(NSString *)entityName;\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/NSManagedObjectContext-Hydrate/Source/NSManagedObjectContext+Hydrate.m",
    "content": "//\n//  NSManagedObjectContext+Hydrate.m\n//\n//  Created by Ignacio Romero Zurbuchen on 7/9/13.\n//  Copyright (c) 2013 DZN Labs.\n//  Licence: MIT-Licence\n//\n\n#import \"NSManagedObjectContext+Hydrate.h\"\n\n#define kNSManagedObjectContextDefaultDateFormat @\"yyyy-MM-dd'T'HH:mm:ss\"\n\nstatic NSManagedObjectContext *_sharedContext = nil;\nstatic NSDateFormatter *_defaultDateFormatter = nil;\nstatic NSString *_preferredDateFormat = nil;\n\n@implementation NSManagedObjectContext (Hydrate)\n\n\n#pragma mark - NSManagedObjectContext Getter Methods\n\n+ (NSManagedObjectContext *)sharedContext\n{\n    return _sharedContext;\n}\n\n- (NSDateFormatter *)defaultDateFormatter\n{\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehaviorDefault];\n        _defaultDateFormatter = [[NSDateFormatter alloc] init];\n    });\n    \n    if (![_defaultDateFormatter.dateFormat isEqualToString:self.preferredDateFormat]) {\n        [_defaultDateFormatter setDateFormat:self.preferredDateFormat];\n    }\n    \n    return _defaultDateFormatter;\n}\n\n- (NSString *)preferredDateFormat\n{\n    if (_preferredDateFormat == nil) {\n        return kNSManagedObjectContextDefaultDateFormat;\n    }\n    return _preferredDateFormat;\n}\n\n\n#pragma mark - NSManagedObjectContext Setter Methods\n\n+ (void)setSharedContext:(NSManagedObjectContext *)context\n{\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        _sharedContext = context;\n    });\n}\n\n- (void)setPreferredDateFormat:(NSString *)format\n{\n    _preferredDateFormat = format;\n}\n\n\n#pragma mark - Hydrate from CSV data\n\n- (void)hydrateStoreWithCSVAtPath:(NSString *)path attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName\n{\n    // Check first if the bundle file path is valid\n    if (!path || ![[NSFileManager defaultManager] fileExistsAtPath:path]) {\n        NSLog(@\"Sorry, the file at path %@ doesn't seem the exist.\",path);\n        return;\n    }\n    \n    NSString *JSON = [self JSONStringFromCSVAtPath:path];\n    NSData *data = [JSON dataUsingEncoding:NSUTF8StringEncoding];\n    [self hydrateStoreWithJSONData:data attributeMappings:attributes forEntityName:entityName];\n}\n\n\n#pragma mark - Hydrate from JSON data\n\n- (void)hydrateStoreWithJSONAtPath:(NSString *)path attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName\n{\n    // Check first if the bundle file path is valid\n    if (!path || ![[NSFileManager defaultManager] fileExistsAtPath:path]) {\n        NSLog(@\"Sorry, the file at path %@ doesn't seem the exist.\",path);\n        return;\n    }\n    \n    [self hydrateStoreWithJSONData:[NSData dataWithContentsOfFile:path] attributeMappings:attributes forEntityName:entityName];\n}\n\n- (void)hydrateStoreWithJSONData:(NSData *)data attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName\n{\n    NSError *error = nil;\n    \n    // Serializes the JSON data structure into arrays and collections\n    NSArray *objects = [NSJSONSerialization JSONObjectWithData:data\n                                                       options:kNilOptions|NSJSONWritingPrettyPrinted\n                                                         error:&error];\n    \n    if (!error) {\n        [self hydrateStoreWithObjects:objects attributeMappings:attributes forEntityName:entityName];\n    }\n    else {\n        NSLog(@\"%s ERROR : %@\",__FUNCTION__, error.localizedDescription);\n    }\n}\n\n\n#pragma mark - Hydrate from native objects\n\n- (void)hydrateStoreWithObjects:(NSArray *)objects attributeMappings:(NSDictionary *)attributes forEntityName:(NSString *)entityName\n{\n    // We verify that there isn't already an entity table filled with content\n    if (objects.count == 0) {\n        NSLog(@\"The array seems to be empty. Please set a non-nil array with objects.\");\n        return;\n    }\n    if (![self isEmptyStoreForEntityName:entityName]) {\n        NSLog(@\"A table with the entity name '%@' is already populated.\", entityName);\n        return;\n    }\n    \n    [objects enumerateObjectsUsingBlock:^(NSDictionary *node, NSUInteger idx, BOOL *stop) {\n        \n        // First we insert a new object to the managed object context\n        NSObject *newObject = [NSEntityDescription insertNewObjectForEntityForName:entityName inManagedObjectContext:self];\n        \n        // Then we retrieve all the entity's attributes, to specially be aware about its properties name\n        NSEntityDescription *entityDescription = [NSEntityDescription entityForName:entityName inManagedObjectContext:self];\n        \n        for (NSAttributeDescription *attributeDescription in entityDescription.properties) {\n            \n            NSString *sourceKey = attributes ? [attributes objectForKey:attributeDescription.name] : attributeDescription.name;\n            if (!sourceKey) continue;\n                \n            id obj = [node objectForKey:sourceKey];\n            id value = nil;\n            \n            // We verify if the object is supposed to be parsed as a date. If YES, a default date formatter does the conversion automatically.\n            if ([[attributeDescription attributeValueClassName] isEqualToString:NSStringFromClass([NSDate class])]) {\n                \n                if ([obj isKindOfClass:[NSString class]]) {\n                    value = [self.defaultDateFormatter dateFromString:(NSString *)obj];\n                }\n            }\n            else {\n                value = obj;\n            }\n            \n            // We set the value from the parsed collection, to the entity's attribute name.\n            // It is important that the both, the JSON key and the property name match.\n            // An exception will be raised in case that a key doesn't match to its property.\n            [newObject setValue:value forKey:attributeDescription.name];\n        }\n    }];\n}\n\n\n#pragma mark - Testing and validation methods\n\n- (NSArray *)testByFetchingEntity:(NSString *)entityName\n{\n    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];\n    \n    NSEntityDescription *entity = [NSEntityDescription entityForName:entityName inManagedObjectContext:self];\n    [fetchRequest setEntity:entity];\n    \n    NSError *error = nil;\n    NSArray *fetchedObjects = [self executeFetchRequest:fetchRequest error:&error];\n    \n    if (!error) {\n        return fetchedObjects;\n    }\n    else {\n        NSLog(@\"%s ERROR : %@\",__FUNCTION__, [error localizedDescription]);\n        return nil;\n    }\n}\n\n- (BOOL)isEmptyStoreForEntityName:(NSString *)entityName\n{\n    NSArray *fetchedObjects = [self testByFetchingEntity:entityName];\n    return (fetchedObjects.count == 0) ? YES : NO;\n}\n\n\n#pragma mark - CSV tool methods\n\n- (NSString *)JSONStringFromCSVAtPath:(NSString *)path\n{\n    NSError *error = nil;\n\n    // Gets the CSV string at path\n    NSString *string = [[NSString alloc] initWithContentsOfFile:path encoding:NSStringEncodingConversionAllowLossy error:&error];\n    if (error) {\n        NSLog(@\"%s ERROR : %@\",__FUNCTION__, [error localizedDescription]);\n        return nil;\n    }\n\n    // Splits the CSV string into several lines\n    NSMutableArray *contentComponents = [NSMutableArray arrayWithArray:[string componentsSeparatedByString:@\"\\n\"]];\n    \n    // Retrieves the key paths of the objects, and removes it from the content\n    NSArray *keyPaths = [[contentComponents objectAtIndex:0] componentsSeparatedByString:@\",\"];\n    [contentComponents removeObjectAtIndex:0];\n    \n    // The string that will wrap every object\n    NSMutableString *JSONData = [NSMutableString new];\n    \n    // Loops trought the CSV content and wraps each found entity\n    [contentComponents enumerateObjectsUsingBlock:^(id obj, NSUInteger i, BOOL *stop) {\n\n        NSArray *itemComponents = [obj componentsSeparatedByString:@\",\"];\n        NSMutableString *object = [[NSMutableString alloc] initWithString:@\"{\"];\n        \n        [itemComponents enumerateObjectsUsingBlock:^(id obj, NSUInteger j, BOOL *stop) {\n            \n            NSString *attribute = [itemComponents objectAtIndex:j];\n            NSString *key = [keyPaths objectAtIndex:j];\n            \n            NSString *value = ([self isNumeric:attribute]) ? [NSString stringWithFormat:@\"%@\",attribute] : [NSString stringWithFormat:@\"\\\"%@\\\"\",attribute];\n\n            [object appendString:[NSString stringWithFormat:@\"\\\"%@\\\":%@\",key,value]];\n            \n            if (j < keyPaths.count-1) [object appendString:@\",\"];\n        }];\n        \n        [object appendString:@\"}\"];\n        if (i < contentComponents.count-1) [object appendString:@\",\"];\n        \n        [JSONData appendString:object];\n    }];\n    \n    // Return the newly created JSON string\n    return [NSString stringWithFormat:@\"[%@]\",JSONData];\n}\n\n- (BOOL)isNumeric:(NSString *)string\n{\n    NSCharacterSet *alphaNums = [[NSCharacterSet characterSetWithCharactersInString:@\".0987654321.\"] invertedSet];\n    NSCharacterSet *inStringSet = [NSCharacterSet characterSetWithCharactersInString:string];\n    return ![alphaNums isSupersetOfSet:inStringSet];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Pods.xcodeproj/project.pbxproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>archiveVersion</key>\n\t<string>1</string>\n\t<key>classes</key>\n\t<dict/>\n\t<key>objectVersion</key>\n\t<string>46</string>\n\t<key>objects</key>\n\t<dict>\n\t\t<key>01ABAEFB57742B588074804A3A93D28F</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>67CFD7043E5A189B674C9764F25C3075</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>122DA2E5084A4393C29BE363C764795C</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>E3778F5362B3FDFC4A95AAEF09C26B55</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Frameworks</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>15A529C27057E4A57D259CBC6E6CE49C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.markdown</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>186AAD8459D537D28AF6F70D7A92E799</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>1EE66377D2316EF3A97B5FDFA02D5D1F</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>696EBA38F9231D68AA2A783FA457442D</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>1FD3480879A570ED1EDAB49728DEF4CB</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Foundation.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>25FEA6FA6762D28FC88B9E831F0FAB4E</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>CoreData.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/CoreData.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>2ADBC2DBE027595FDD0CFD7C423FB3B7</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>E971A26A3F152625A2E9587160C17A91</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t</dict>\n\t\t<key>2CB8A018971E0D943D4C211B49560871</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>5757E2891B65C3CEE46B4BF57D9F2192</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>C7ACE4D52ABBDE4A01034ACE64FF09D4</string>\n\t\t\t\t<string>2D4AF077985CD6A9E601ECD6711B71DA</string>\n\t\t\t\t<string>94A4E4DEBCD09FB2353DFBC1F62D921C</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>A20BCD0FBC6A9DD8AAEAC01B7F297CE6</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>2D4AF077985CD6A9E601ECD6711B71DA</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>90DC74D91298A1DED182E05349D01859</string>\n\t\t\t\t<string>CDC5BA7AA813ED3F255F1BE118491F7D</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>2D8E8EC45A3A1A1D94AE762CB5028504</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>6569F07DC21AD8B72752685013E3D9D8</string>\n\t\t\t\t<string>A14E2444F162A20E3776820E0ADFFB52</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>3243687F2F61DDD248C5EE2F609C74A2</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>target</key>\n\t\t\t<string>2CB8A018971E0D943D4C211B49560871</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>3CA7BDBB00FA4C333BD5A63E84DE7077</string>\n\t\t</dict>\n\t\t<key>399377487C7F551E9E5E38D4B384C6C3</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>1EE66377D2316EF3A97B5FDFA02D5D1F</string>\n\t\t\t\t<string>43D26B6C014AF1A514F0049BBF1A3C6F</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>3CA7BDBB00FA4C333BD5A63E84DE7077</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>2CB8A018971E0D943D4C211B49560871</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t</dict>\n\t\t<key>3E4D787385F1490E0A40CB61234215BF</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.release.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>41DC8B5409E3EDEDCF7821B7D7A0A46F</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>59014FEFA453A9C1E1A77D736C067608</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>43D26B6C014AF1A514F0049BBF1A3C6F</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>696EBA38F9231D68AA2A783FA457442D</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>45669D954CA533A3F02B5B0FAA4DD25C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NSManagedObjectContext+Hydrate.m</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/NSManagedObjectContext+Hydrate.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4906E021DE97CEDDBFF6FD26F33214D1</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>AF27CD50497D850A8A171725FEDE8119</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>494D366A9D5523948CA05AD02BE1B3C5</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>5160E6F72E7030EA9B722EB4A8B64972</string>\n\t\t\t\t<string>45669D954CA533A3F02B5B0FAA4DD25C</string>\n\t\t\t\t<string>66C91E429F307F8E6236B8F007DF1FD4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4966DA635CFEE8CA20FF04FA021893EB</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>target</key>\n\t\t\t<string>E971A26A3F152625A2E9587160C17A91</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>2ADBC2DBE027595FDD0CFD7C423FB3B7</string>\n\t\t</dict>\n\t\t<key>4AB3F642DF75EA5A6A0F9394824948BA</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>5701846EB1B6C4657C07FCEEC302DA1B</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>5160E6F72E7030EA9B722EB4A8B64972</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NSManagedObjectContext+Hydrate.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/NSManagedObjectContext+Hydrate.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>520E3BEF80CA01E9E0AC8C98A53A7797</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>9217295504D65CA7345A95E788086031</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>54F2D891D54896FBD0974D87A20D8ED9</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>D808ED96D2B88939187E960723031DFB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>5701846EB1B6C4657C07FCEEC302DA1B</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>E8B09CD16713437C02F3D9728E43BF7F</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>5757E2891B65C3CEE46B4BF57D9F2192</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>D70B00D702B361A016C60A6609C5D3C3</string>\n\t\t\t\t<string>E31A7378EB593EB11B5CFA85446DA2C9</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>59014FEFA453A9C1E1A77D736C067608</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>1FD3480879A570ED1EDAB49728DEF4CB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>5DB666AC1070276A7247E3A017AB9DC3</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>C4ADF11DE4E348424E8F71F20FD64F1D</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Development Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>63F41FC835058C0B2DACE5EA3770FF76</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>UIKit.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/UIKit.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>641AE05DD55E5E6AC1590CD7B4A18F97</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.script.sh</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-resources.sh</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6569F07DC21AD8B72752685013E3D9D8</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_DYNAMIC_NO_PIC</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_OPTIMIZATION_LEVEL</key>\n\t\t\t\t<string>0</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>DEBUG=1</string>\n\t\t\t\t\t<string>$(inherited)</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>ONLY_ACTIVE_ARCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>65C11C09F95534E26643C27D4E0F3B23</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>66C91E429F307F8E6236B8F007DF1FD4</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>186AAD8459D537D28AF6F70D7A92E799</string>\n\t\t\t\t<string>696EBA38F9231D68AA2A783FA457442D</string>\n\t\t\t\t<string>AF27CD50497D850A8A171725FEDE8119</string>\n\t\t\t\t<string>B27801872526B1CCD4E25210B3B38F60</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Target Support Files/NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>67CFA17F7ECE29BE0E66F54E6238E1A4</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>67CFD7043E5A189B674C9764F25C3075</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>5160E6F72E7030EA9B722EB4A8B64972</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>696EBA38F9231D68AA2A783FA457442D</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6D584B9243620FBEA877976E560EE856</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>65C11C09F95534E26643C27D4E0F3B23</string>\n\t\t\t\t<string>9217295504D65CA7345A95E788086031</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>79ED337A280116F96991390387AFE15C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>7DB346D0F39D3F0E887471402A8071AB</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BA6428E9F66FD5A23C0A2E06ED26CD2F</string>\n\t\t\t\t<string>5DB666AC1070276A7247E3A017AB9DC3</string>\n\t\t\t\t<string>122DA2E5084A4393C29BE363C764795C</string>\n\t\t\t\t<string>9B1F0785B45C56C6091DF2FD8AF7149E</string>\n\t\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t\t<string>D2411A5FE7F7A004607BED49990C37F4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>89498BCE6F1C690CE8CDA12B7AC52CF5</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>65C11C09F95534E26643C27D4E0F3B23</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>8D3C299AFFF2966D07FA02C13276972F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>90DC74D91298A1DED182E05349D01859</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>1FD3480879A570ED1EDAB49728DEF4CB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>9217295504D65CA7345A95E788086031</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>94A4E4DEBCD09FB2353DFBC1F62D921C</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>89498BCE6F1C690CE8CDA12B7AC52CF5</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>952EEBFAF8F7E620423C9F156F25A506</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>15A529C27057E4A57D259CBC6E6CE49C</string>\n\t\t\t\t<string>BF59BC15D23E1E1912C8F334E7236813</string>\n\t\t\t\t<string>E8B09CD16713437C02F3D9728E43BF7F</string>\n\t\t\t\t<string>641AE05DD55E5E6AC1590CD7B4A18F97</string>\n\t\t\t\t<string>F1C148C8783505C2D2036DD90E68A489</string>\n\t\t\t\t<string>3E4D787385F1490E0A40CB61234215BF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Target Support Files/Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>99BA97A5A6A4BEE6D513B51836AF1D5C</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>1FD3480879A570ED1EDAB49728DEF4CB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>9AA767A9C19815C48C22749BB06740BC</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>3E4D787385F1490E0A40CB61234215BF</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>9B1F0785B45C56C6091DF2FD8AF7149E</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>494D366A9D5523948CA05AD02BE1B3C5</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>9F7E894E3BBEEA81C68E6C61E80ACE85</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>F1C148C8783505C2D2036DD90E68A489</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>A14E2444F162A20E3776820E0ADFFB52</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>ENABLE_NS_ASSERTIONS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>RELEASE=1</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t\t<key>VALIDATE_PRODUCT</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>A1E482DBFEE1FD3B01F7CFD8255C2556</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>45669D954CA533A3F02B5B0FAA4DD25C</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>A20BCD0FBC6A9DD8AAEAC01B7F297CE6</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>A6FAECE1815F0F2EAFB1C40E50B36CDD</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>AF27CD50497D850A8A171725FEDE8119</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>B27801872526B1CCD4E25210B3B38F60</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>B34DA4ABD3190E8CE77C574AF58BF590</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>25FEA6FA6762D28FC88B9E831F0FAB4E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>BA6428E9F66FD5A23C0A2E06ED26CD2F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Podfile</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Podfile</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SOURCE_ROOT</string>\n\t\t\t<key>xcLanguageSpecificationIdentifier</key>\n\t\t\t<string>xcode.lang.ruby</string>\n\t\t</dict>\n\t\t<key>BB11F90A7070C3100D33630C7C2D2425</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libNSManagedObjectContext-Hydrate.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libNSManagedObjectContext-Hydrate.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>BCFADFAE64D7AAADE713C814896F206A</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>B34DA4ABD3190E8CE77C574AF58BF590</string>\n\t\t\t\t<string>99BA97A5A6A4BEE6D513B51836AF1D5C</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>BF59BC15D23E1E1912C8F334E7236813</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.xml</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.plist</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C087C4EE0083616FA5282C6B88FA56CE</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>8D3C299AFFF2966D07FA02C13276972F</string>\n\t\t\t\t<string>79ED337A280116F96991390387AFE15C</string>\n\t\t\t\t<string>D808ED96D2B88939187E960723031DFB</string>\n\t\t\t\t<string>67CFA17F7ECE29BE0E66F54E6238E1A4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Examples/Countries/Pods/Target Support Files/DZNEmptyDataSet</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C49348DC2C6BD703370686D890F45F5E</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>9F7E894E3BBEEA81C68E6C61E80ACE85</string>\n\t\t\t\t<string>9AA767A9C19815C48C22749BB06740BC</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>C4ADF11DE4E348424E8F71F20FD64F1D</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>6D584B9243620FBEA877976E560EE856</string>\n\t\t\t\t<string>C087C4EE0083616FA5282C6B88FA56CE</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../../..</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C7ACE4D52ABBDE4A01034ACE64FF09D4</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>54F2D891D54896FBD0974D87A20D8ED9</string>\n\t\t\t\t<string>520E3BEF80CA01E9E0AC8C98A53A7797</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>CCA510CFBEA2D207524CDA0D73C3B561</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>A20BCD0FBC6A9DD8AAEAC01B7F297CE6</string>\n\t\t\t\t<string>BB11F90A7070C3100D33630C7C2D2425</string>\n\t\t\t\t<string>A6FAECE1815F0F2EAFB1C40E50B36CDD</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Products</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>CDC5BA7AA813ED3F255F1BE118491F7D</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>63F41FC835058C0B2DACE5EA3770FF76</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>D2411A5FE7F7A004607BED49990C37F4</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>952EEBFAF8F7E620423C9F156F25A506</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Targets Support Files</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D41D8CD98F00B204E9800998ECF8427E</key>\n\t\t<dict>\n\t\t\t<key>attributes</key>\n\t\t\t<dict>\n\t\t\t\t<key>LastSwiftUpdateCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t\t<key>LastUpgradeCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t</dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>2D8E8EC45A3A1A1D94AE762CB5028504</string>\n\t\t\t<key>compatibilityVersion</key>\n\t\t\t<string>Xcode 3.2</string>\n\t\t\t<key>developmentRegion</key>\n\t\t\t<string>English</string>\n\t\t\t<key>hasScannedForEncodings</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXProject</string>\n\t\t\t<key>knownRegions</key>\n\t\t\t<array>\n\t\t\t\t<string>en</string>\n\t\t\t</array>\n\t\t\t<key>mainGroup</key>\n\t\t\t<string>7DB346D0F39D3F0E887471402A8071AB</string>\n\t\t\t<key>productRefGroup</key>\n\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t<key>projectDirPath</key>\n\t\t\t<string></string>\n\t\t\t<key>projectReferences</key>\n\t\t\t<array/>\n\t\t\t<key>projectRoot</key>\n\t\t\t<string></string>\n\t\t\t<key>targets</key>\n\t\t\t<array>\n\t\t\t\t<string>2CB8A018971E0D943D4C211B49560871</string>\n\t\t\t\t<string>E971A26A3F152625A2E9587160C17A91</string>\n\t\t\t\t<string>E03DD8C366760E8AEB6C748E2452200A</string>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>D70B00D702B361A016C60A6609C5D3C3</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>79ED337A280116F96991390387AFE15C</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>D808ED96D2B88939187E960723031DFB</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E03DD8C366760E8AEB6C748E2452200A</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>C49348DC2C6BD703370686D890F45F5E</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>4AB3F642DF75EA5A6A0F9394824948BA</string>\n\t\t\t\t<string>41DC8B5409E3EDEDCF7821B7D7A0A46F</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array>\n\t\t\t\t<string>3243687F2F61DDD248C5EE2F609C74A2</string>\n\t\t\t\t<string>4966DA635CFEE8CA20FF04FA021893EB</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>A6FAECE1815F0F2EAFB1C40E50B36CDD</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>E31A7378EB593EB11B5CFA85446DA2C9</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>79ED337A280116F96991390387AFE15C</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>6.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>E3778F5362B3FDFC4A95AAEF09C26B55</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>25FEA6FA6762D28FC88B9E831F0FAB4E</string>\n\t\t\t\t<string>1FD3480879A570ED1EDAB49728DEF4CB</string>\n\t\t\t\t<string>63F41FC835058C0B2DACE5EA3770FF76</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>iOS</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E829635C99F3A93762B2950474C51569</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>A1E482DBFEE1FD3B01F7CFD8255C2556</string>\n\t\t\t\t<string>4906E021DE97CEDDBFF6FD26F33214D1</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>E8B09CD16713437C02F3D9728E43BF7F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E971A26A3F152625A2E9587160C17A91</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>399377487C7F551E9E5E38D4B384C6C3</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>E829635C99F3A93762B2950474C51569</string>\n\t\t\t\t<string>BCFADFAE64D7AAADE713C814896F206A</string>\n\t\t\t\t<string>01ABAEFB57742B588074804A3A93D28F</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>BB11F90A7070C3100D33630C7C2D2425</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>F1C148C8783505C2D2036DD90E68A489</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.debug.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t</dict>\n\t<key>rootObject</key>\n\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-Private.xcconfig",
    "content": "#include \"DZNEmptyDataSet.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_LDFLAGS = ${DZNEMPTYDATASET_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_DZNEmptyDataSet : NSObject\n@end\n@implementation PodsDummy_DZNEmptyDataSet\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet.xcconfig",
    "content": "DZNEMPTYDATASET_OTHER_LDFLAGS = -framework \"UIKit\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate-Private.xcconfig",
    "content": "#include \"NSManagedObjectContext-Hydrate.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/NSManagedObjectContext-Hydrate\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_LDFLAGS = ${NSMANAGEDOBJECTCONTEXT_HYDRATE_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_NSManagedObjectContext_Hydrate : NSObject\n@end\n@implementation PodsDummy_NSManagedObjectContext_Hydrate\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/NSManagedObjectContext-Hydrate/NSManagedObjectContext-Hydrate.xcconfig",
    "content": "NSMANAGEDOBJECTCONTEXT_HYDRATE_OTHER_LDFLAGS = -framework \"CoreData\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown",
    "content": "# Acknowledgements\nThis application makes use of the following third party libraries:\n\n## DZNEmptyDataSet\n\nThe MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n## NSManagedObjectContext-Hydrate\n\nThe MIT License (MIT)\n\nCopyright (c) 2012 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nGenerated by CocoaPods - http://cocoapods.org\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods-acknowledgements.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreferenceSpecifiers</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>This application makes use of the following third party libraries:</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Acknowledgements</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2012 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>NSManagedObjectContext-Hydrate</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>Generated by CocoaPods - http://cocoapods.org</string>\n\t\t\t<key>Title</key>\n\t\t\t<string></string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t</array>\n\t<key>StringsTable</key>\n\t<string>Acknowledgements</string>\n\t<key>Title</key>\n\t<string>Acknowledgements</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_Pods : NSObject\n@end\n@implementation PodsDummy_Pods\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods-resources.sh",
    "content": "#!/bin/sh\nset -e\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n\nRESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt\n> \"$RESOURCES_TO_COPY\"\n\nXCASSET_FILES=()\n\nrealpath() {\n  DIRECTORY=\"$(cd \"${1%/*}\" && pwd)\"\n  FILENAME=\"${1##*/}\"\n  echo \"$DIRECTORY/$FILENAME\"\n}\n\ninstall_resource()\n{\n  case $1 in\n    *.storyboard)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.xib)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.framework)\n      echo \"mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      mkdir -p \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      echo \"rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      rsync -av \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      ;;\n    *.xcdatamodel)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\"`.mom\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodel`.mom\"\n      ;;\n    *.xcdatamodeld)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\"\n      ;;\n    *.xcmappingmodel)\n      echo \"xcrun mapc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\\\"\"\n      xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\"\n      ;;\n    *.xcassets)\n      ABSOLUTE_XCASSET_FILE=$(realpath \"${PODS_ROOT}/$1\")\n      XCASSET_FILES+=(\"$ABSOLUTE_XCASSET_FILE\")\n      ;;\n    /*)\n      echo \"$1\"\n      echo \"$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n    *)\n      echo \"${PODS_ROOT}/$1\"\n      echo \"${PODS_ROOT}/$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n  esac\n}\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nrsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nif [[ \"${ACTION}\" == \"install\" ]]; then\n  mkdir -p \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\nrm -f \"$RESOURCES_TO_COPY\"\n\nif [[ -n \"${WRAPPER_EXTENSION}\" ]] && [ \"`xcrun --find actool`\" ] && [ -n \"$XCASSET_FILES\" ]\nthen\n  case \"${TARGETED_DEVICE_FAMILY}\" in\n    1,2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad --target-device iphone\"\n      ;;\n    1)\n      TARGET_DEVICE_ARGS=\"--target-device iphone\"\n      ;;\n    2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad\"\n      ;;\n    *)\n      TARGET_DEVICE_ARGS=\"--target-device mac\"\n      ;;\n  esac\n\n  # Find all other xcassets (this unfortunately includes those of path pods and other targets).\n  OTHER_XCASSETS=$(find \"$PWD\" -iname \"*.xcassets\" -type d)\n  while read line; do\n    if [[ $line != \"`realpath $PODS_ROOT`*\" ]]; then\n      XCASSET_FILES+=(\"$line\")\n    fi\n  done <<<\"$OTHER_XCASSETS\"\n\n  printf \"%s\\0\" \"${XCASSET_FILES[@]}\" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform \"${PLATFORM_NAME}\" --minimum-deployment-target \"${IPHONEOS_DEPLOYMENT_TARGET}\" ${TARGET_DEVICE_ARGS} --compress-pngs --compile \"${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods.debug.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" -isystem \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -l\"NSManagedObjectContext-Hydrate\" -framework \"CoreData\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/Countries/Pods/Target Support Files/Pods/Pods.release.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" -isystem \"${PODS_ROOT}/Headers/Public/NSManagedObjectContext-Hydrate\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -l\"NSManagedObjectContext-Hydrate\" -framework \"CoreData\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Podfile",
    "content": "platform :ios, '8.0'\n\npod 'DZNEmptyDataSet', :path => '../../'\n\npod 'DZNWebViewController', '2.0'"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2014 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/README.md",
    "content": "# DZWebBrowser\n\nAn iPhone/iPad simple web browser controller with navigation controls and sharing features:\n* Progress bar embeded on the navigation bar (optional).\n* Navigation bar shows title animated, à la Twitter official app.\n* Sharing options like posting on Twitter, Facebook, Mail, etc. (optional).\n* Long press gesture for capturing links and images (optional).\n* Customizable toolbar icons.\n* Localization support.\n* NSURLCache support.\n\n![DZWebBrowser](https://dl.dropboxusercontent.com/u/2452151/Permalink/DZWebBrowser.png)\n\nDZWebBrowser uses ARC and supports iOS6 and superior.\nAlso support multiple orientations.\n\nSome additonal feature ideas:\n- iOS7 support\n- Hide NavigationBar & ToolBar for larger screen real estate (à la Safari App).\n- Optional way of searching a custom URL from the NavigationBar.\n- Keywords auto-completion when searching on bar.\n- Reload page.\n\nFeel free to fork it and make it more interesting!\n\n## Installation\nAvailable in [Cocoa Pods](http://cocoapods.org/?q=DZWebBrowser)\n```\npod 'DZWebBrowser', '~> 0.0.1'\n```\n\n## How to use\nIt is very easy to add DZWebBrowser to your projects. Take a look into the sample project.\nHopefully you saved a couple of hours!\n\n### Step 1\n```\nImport \"DZWebBrowser.h\" to your view controller subclass.\n```\n\n### Step 2\nIf not installed with Cocoa Pods:\n```\nImport Apple's SystemConfiguration, CFNetwork, MessageUI and Social frameworks.\n```\n\n### Step 3\nCreate a new instance of DZWebBrowser and initialize with a NSURL.\nYou also need to embed the view controller into a UINavigationController.\n```\nNSURL *URL = [NSURL URLWithString:@\"http://www.google.com/\"];\n\nDZWebBrowser *webBrowser = [[DZWebBrowser alloc] initBrowserWithURL:URL];\nwebBrowser.showProgress = YES;\nwebBrowser.allowSharing = YES;\nwebBrowser.resourceBundleName = @\"custom-controls\";\n\nUINavigationController *webBrowserNC = [[UINavigationController alloc] initWithRootViewController:webBrowser];\n\n[self presentViewController:webBrowserNC animated:YES completion:NULL];\n```\n\n## Third party Frameworks\n\nDZWebBrowser requires third party frameworks, if not installed with Cocoa Pods you must add them as submodules:\n- Apple's [Reachability](https://github.com/tonymillion/Reachability), but the ARC version from [Tony Million](https://github.com/tonymillion).\n- [NJKWebViewProgress](https://github.com/ninjinkun/NJKWebViewProgress) from [Satoshi Asano](https://github.com/ninjinkun).\n- [SDURLCache](https://github.com/rs/SDURLCache) from [Olivier Poitrey](https://github.com/rs)\n\n## License\n(The MIT License)\n\nCopyright (c) 2012 Ignacio Romero Zurbuchen <iromero@dzen.cl>\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/Source/Classes/DZNPolyActivity.h",
    "content": "//\n//  DZNPolyActivity.h\n//  DZNWebViewController\n//  https://github.com/dzenbot/DZNWebViewController\n//\n//  Created by Ignacio Romero Zurbuchen on 3/28/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import <UIKit/UIKit.h>\n\n/**\n * Types of activity kind, used for polymorphic creation.\n */\ntypedef NS_OPTIONS(NSUInteger, DZNPolyActivityType) {\n    DZNPolyActivityTypeLink,\n    DZNPolyActivityTypeSafari,\n    DZNPolyActivityTypeChrome,\n    DZNPolyActivityTypeOpera,\n    DZNPolyActivityTypeDolphin\n};\n\n/**\n * The DZNPolyActivity class is an abstract subclass of UIActivity allowing to easily create polymorphic instances by assigning different activity types. Each type will render a different icon and title, and will perform different actions too.\n */\n@interface DZNPolyActivity : UIActivity\n\n/**\n * Initializes and returns a newly created activity with a specific type.\n *\n * @param type The type of the activity to be created.\n * @returns The initialized activity.\n */\n- (instancetype)initWithActivityType:(DZNPolyActivityType)type;\n\n/**\n * Allocates a new instance of the receiving class, sends it an init message, and returns the initialized object.\n * This method implements the same logic than initWithActivityType: but is just shorter to call.\n *\n * @param type The type of the activity to be created.\n */\n+ (instancetype)activityWithType:(DZNPolyActivityType)type;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/Source/Classes/DZNPolyActivity.m",
    "content": "//\n//  DZNPolyActivity.m\n//  DZNWebViewController\n//  https://github.com/dzenbot/DZNWebViewController\n//\n//  Created by Ignacio Romero Zurbuchen on 3/28/14.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import \"DZNPolyActivity.h\"\n\n@implementation DZNPolyActivity\n{\n    DZNPolyActivityType _type;\n\tNSURL *_URL;\n}\n\n+ (instancetype)activityWithType:(DZNPolyActivityType)type\n{\n    return [[DZNPolyActivity alloc] initWithActivityType:type];\n}\n\n- (instancetype)initWithActivityType:(DZNPolyActivityType)type\n{\n    self = [super init];\n    if (self) {\n        _type = type;\n    }\n    return self;\n}\n\n\n#pragma mark - Getter methods\n\n+ (UIActivityCategory)activityCategory\n{\n    return UIActivityCategoryAction;\n}\n\n- (NSString *)activityType\n{\n    switch (_type) {\n        case DZNPolyActivityTypeLink:           return @\"com.dzn.DZNWebViewController.activity.CopyLink\";\n        case DZNPolyActivityTypeSafari:         return @\"com.dzn.DZNWebViewController.activity.OpenInSafari\";\n        case DZNPolyActivityTypeChrome:         return @\"com.dzn.DZNWebViewController.activity.OpenInChrome\";\n        case DZNPolyActivityTypeOpera:          return @\"com.dzn.DZNWebViewController.activity.OpenInOperaMini\";\n        case DZNPolyActivityTypeDolphin:        return @\"com.dzn.DZNWebViewController.activity.OpenInDolphin\";\n    }\n}\n\n- (NSString *)activityTitle\n{\n    switch (_type) {\n        case DZNPolyActivityTypeLink:           return NSLocalizedString(@\"Copy Link\", nil);\n        case DZNPolyActivityTypeSafari:         return NSLocalizedString(@\"Open in Safari\", nil);\n        case DZNPolyActivityTypeChrome:         return NSLocalizedString(@\"Open in Chrome\", nil);\n        case DZNPolyActivityTypeOpera:          return NSLocalizedString(@\"Open in Opera\", nil);\n        case DZNPolyActivityTypeDolphin:        return NSLocalizedString(@\"Open in Dolphin\", nil);\n    }\n}\n\n- (UIImage *)activityImage\n{\n    switch (_type) {\n        case DZNPolyActivityTypeLink:           return [UIImage imageNamed:@\"Link7\"];\n        case DZNPolyActivityTypeSafari:         return [UIImage imageNamed:@\"Safari7\"];\n        case DZNPolyActivityTypeChrome:         return [UIImage imageNamed:@\"Chrome7\"];\n        case DZNPolyActivityTypeOpera:          return [UIImage imageNamed:@\"Opera7\"];\n        case DZNPolyActivityTypeDolphin:        return [UIImage imageNamed:@\"Dolphin7\"];\n        default:                                return nil;\n    }\n}\n\n- (NSURL *)chromeURLWithURL:(NSURL *)URL\n{\n    return [self customURLWithURL:URL andType:DZNPolyActivityTypeChrome];\n}\n\n- (NSURL *)operaURLWithURL:(NSURL *)URL\n{\n    return [self customURLWithURL:URL andType:DZNPolyActivityTypeOpera];\n}\n\n- (NSURL *)dolphinURLWithURL:(NSURL *)URL\n{\n    return [self customURLWithURL:URL andType:DZNPolyActivityTypeDolphin];\n}\n\n- (NSURL *)customURLWithURL:(NSURL *)URL andType:(DZNPolyActivityType)type\n{\n    // Replaces the URL Scheme with the type equivalent.\n    NSString *scheme = nil;\n    if ([URL.scheme isEqualToString:@\"http\"]) {\n        if (type == DZNPolyActivityTypeChrome) scheme = @\"googlechrome\";\n        if (type == DZNPolyActivityTypeOpera) scheme = @\"ohttp\";\n        if (type == DZNPolyActivityTypeDolphin) scheme = @\"dolphin\";\n    }\n    else if ([URL.scheme isEqualToString:@\"https\"]) {\n        if (type == DZNPolyActivityTypeChrome) scheme = @\"googlechromes\";\n        if (type == DZNPolyActivityTypeOpera) scheme = @\"ohttps\";\n        if (type == DZNPolyActivityTypeDolphin) scheme = @\"dolphin\";\n    }\n    \n    // Proceeds only if a valid URI Scheme is available.\n    if (scheme) {\n        NSRange range = [[URL absoluteString] rangeOfString:@\":\"];\n        NSString *urlNoScheme = [[URL absoluteString] substringFromIndex:range.location];\n        return [NSURL URLWithString:[scheme stringByAppendingString:urlNoScheme]];\n    }\n    \n    return nil;\n}\n\n- (BOOL)canPerformWithActivityItems:(NSArray *)activityItems\n{\n\tfor (UIActivity *item in activityItems) {\n        \n\t\tif ([item isKindOfClass:[NSString class]]) {\n            \n\t\t\tNSURL *URL = [NSURL URLWithString:(NSString *)item];\n            if (!URL) continue;\n            \n            if (_type == DZNPolyActivityTypeLink) {\n                return URL ? YES : NO;\n            }\n            if (_type == DZNPolyActivityTypeSafari) {\n                return [[UIApplication sharedApplication] canOpenURL:URL];\n            }\n            if (_type == DZNPolyActivityTypeChrome) {\n                return [[UIApplication sharedApplication] canOpenURL:[self chromeURLWithURL:URL]];\n            }\n            if (_type == DZNPolyActivityTypeOpera) {\n                return [[UIApplication sharedApplication] canOpenURL:[self operaURLWithURL:URL]];\n            }\n            if (_type == DZNPolyActivityTypeDolphin) {\n                return [[UIApplication sharedApplication] canOpenURL:[self dolphinURLWithURL:URL]];\n            }\n            \n            break;\n\t\t}\n\t}\n\n\treturn NO;\n}\n\n- (void)prepareWithActivityItems:(NSArray *)activityItems\n{\n\tfor (id item in activityItems) {\n        \n\t\tif ([item isKindOfClass:[NSString class]]) {\n\t\t\t_URL = [NSURL URLWithString:(NSString *)item];\n            if (!_URL) continue;\n            else break;\n\t\t}\n\t}\n}\n\n- (void)performActivity\n{\n    BOOL completed = NO;\n    \n    if (!_URL) {\n        [self activityDidFinish:completed];\n        return;\n    }\n    \n    switch (_type) {\n        case DZNPolyActivityTypeLink:\n            [[UIPasteboard generalPasteboard] setURL:_URL];\n            completed = YES;\n            break;\n        case DZNPolyActivityTypeSafari:\n            completed = [[UIApplication sharedApplication] openURL:_URL];\n            break;\n        case DZNPolyActivityTypeChrome:\n            completed = [[UIApplication sharedApplication] openURL:[self chromeURLWithURL:_URL]];\n            break;\n        case DZNPolyActivityTypeOpera:\n            completed = [[UIApplication sharedApplication] openURL:[self operaURLWithURL:_URL]];\n            break;\n        case DZNPolyActivityTypeDolphin:\n            completed = [[UIApplication sharedApplication] openURL:[self dolphinURLWithURL:_URL]];\n            break;\n    }\n    \n\t[self activityDidFinish:completed];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/Source/Classes/DZNWebViewController.h",
    "content": "//\n//  DZNWebViewController.h\n//  DZNWebViewController\n//  https://github.com/dzenbot/DZNWebViewController\n//\n//  Created by Ignacio Romero Zurbuchen on 10/25/13.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import <UIKit/UIKit.h>\n\n/**\n * Types of supported actions (i.e. Share & Copy link, Add to Reading List, Open in Safari/Chrome/Opera/Dolphin).\n */\ntypedef NS_OPTIONS(NSUInteger, DZNWebViewControllerActions) {\n    DZNWebViewControllerActionAll = -1,\n    DZNWebViewControllerActionNone = 0,\n    DZNWebViewControllerActionShareLink = (1 << 0),\n    DZNWebViewControllerActionCopyLink = (1 << 1),\n    DZNWebViewControllerActionReadLater = (1 << 2),\n    DZNWebViewControllerActionOpenSafari = (1 << 3),\n    DZNWebViewControllerActionOpenChrome = (1 << 4),\n    DZNWebViewControllerActionOpenOperaMini = (1 << 5),\n    DZNWebViewControllerActionOpenDolphin = (1 << 6)\n};\n\n/**\n * Types of network loading style.\n */\ntypedef NS_OPTIONS(NSUInteger, DZNWebViewControllerLoadingStyle) {\n    DZNWebViewControllerLoadingStyleNone,\n    DZNWebViewControllerLoadingStyleProgressView,\n    DZNWebViewControllerLoadingStyleActivityIndicator\n};\n\n/**\n * A very simple web browser with useful navigation and exportation tools.\n */\n@interface DZNWebViewController : UIViewController\n\n/** The web view that the controller manages. */\n@property (nonatomic, strong) UIWebView *webView;\n/** The URL identifying the location of the content to load. */\n@property (nonatomic, readonly) NSURL *URL;\n/** The loading visual style, using a progress bar or a network activity indicator. Default is DZNWebViewControllerLoadingStyleProgressView. */\n@property (nonatomic) DZNWebViewControllerLoadingStyle loadingStyle;\n/** The supported actions like sharing and copy link, add to reading list, open in Safari, etc. Default is DZNWebViewControllerActionAll. */\n@property (nonatomic) DZNWebViewControllerActions supportedActions;\n/** The toolbar background color. Default is black, translucent. */\n@property (nonatomic, strong) UIColor *toolbarBackgroundColor;\n/** The toolbar item's tint color. Default is white. */\n@property (nonatomic, strong) UIColor *toolbarTintColor;\n/** The navigation bar's title font. Default uses UINavigation's appearance title text attributes with key NSFontAttributeName. */\n@property (nonatomic, strong) UIFont *titleFont;\n/** The navigation bar's title custom font. Default uses UINavigation's appearance title text attributes with key NSForegroundColorAttributeName. */\n@property (nonatomic, strong) UIColor *titleColor;\n\n/**\n * Initializes and returns a newly created webview controller with an initial HTTP URL to be requested as soon as the view appears.\n *\n * @param URL The HTTP URL to be requested.\n * @returns The initialized webview controller.\n */\n- (id)initWithURL:(NSURL *)URL;\n\n/**\n * Initializes and returns a newly created webview controller for local HTML navigation.\n *\n * @param URL The file URL of the main html.\n * @returns The initialized webview controller.\n */\n- (id)initWithFileURL:(NSURL *)URL;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/Source/Classes/DZNWebViewController.m",
    "content": "//\n//  DZNWebViewController.m\n//  DZNWebViewController\n//  https://github.com/dzenbot/DZNWebViewController\n//\n//  Created by Ignacio Romero Zurbuchen on 10/25/13.\n//  Copyright (c) 2014 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import \"DZNWebViewController.h\"\n#import \"DZNPolyActivity.h\"\n\n#import <NJKWebViewProgress/NJKWebViewProgressView.h>\n#import <NJKWebViewProgress/NJKWebViewProgress.h>\n\n#define kDZNWebViewControllerContentTypeImage @\"image\"\n#define kDZNWebViewControllerContentTypeLink @\"link\"\n\n@interface DZNLongPressGestureRecognizer : UILongPressGestureRecognizer\n@end\n\n@implementation DZNLongPressGestureRecognizer\n- (BOOL)canBePreventedByGestureRecognizer:(UIGestureRecognizer *)preventedGestureRecognizer {\n    return NO;\n}\n@end\n\n@interface DZNWebViewController () <UIWebViewDelegate, UIGestureRecognizerDelegate, NJKWebViewProgressDelegate>\n{\n    NJKWebViewProgress *_progressProxy;\n    \n    UIBarButtonItem *_actionBarItem;\n    UIBarButtonItem *_backwardBarItem;\n    UIBarButtonItem *_forwardBarItem;\n    UIBarButtonItem *_loadingBarItem;\n    \n    int _loadBalance;\n    BOOL _didLoadContent;\n    BOOL _presentingActivities;\n}\n@property (nonatomic, strong) NJKWebViewProgressView *progressView;\n@property (nonatomic, strong) UIActivityIndicatorView *activityIndicatorView;\n@end\n\n@implementation DZNWebViewController\n@synthesize URL = _URL;\n\n- (id)init\n{\n    self = [super init];\n    if (self) {\n        _loadingStyle = DZNWebViewControllerLoadingStyleProgressView;\n        _supportedActions = DZNWebViewControllerActionAll;\n        _toolbarBackgroundColor = [UIColor blackColor];\n        _toolbarTintColor = [UIColor whiteColor];\n    }\n    return self;\n}\n\n- (id)initWithURL:(NSURL *)URL\n{\n    NSParameterAssert(URL);\n    NSAssert(URL != nil, @\"Invalid URL\");\n    NSAssert(URL.scheme != nil, @\"URL has no scheme\");\n\n    self = [self init];\n    if (self) {\n        _URL = URL;\n    }\n    return self;\n}\n\n- (id)initWithFileURL:(NSURL *)URL\n{\n    return [self initWithURL:URL];\n}\n\n\n#pragma mark - View lifecycle\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    if (self.supportedActions > 0) {\n        _actionBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(presentActivityController:)];\n        [self.navigationItem setRightBarButtonItem:_actionBarItem];\n    }\n    \n    self.view = self.webView;\n    self.automaticallyAdjustsScrollViewInsets = YES;\n    \n    [self setToolbarItems:self.navigationItems animated:NO];\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n    \n    [self.navigationController setToolbarHidden:NO];\n\n    self.navigationController.toolbar.barTintColor = _toolbarBackgroundColor;\n    self.navigationController.toolbar.tintColor = _toolbarTintColor;\n    self.navigationController.toolbar.translucent = NO;\n    [self.navigationController.interactivePopGestureRecognizer addTarget:self action:@selector(handleInteractivePopGesture:)];\n    \n    self.navigationController.view.backgroundColor = [UIColor whiteColor];\n}\n\n- (void)viewDidAppear:(BOOL)animated\n{\n    [super viewDidAppear:animated];\n    \n    if (!_didLoadContent) {\n        [self startRequestWithURL:_URL];\n    }\n}\n\n- (void)viewWillDisappear:(BOOL)animated\n{\n\t[super viewWillDisappear:animated];\n    \n    [self clearProgressViewAnimated:animated];\n}\n\n- (void)viewDidDisappear:(BOOL)animated\n{\n\t[super viewDidDisappear:animated];\n    \n    [self stopLoading];\n}\n\n\n#pragma mark - Getter methods\n\n- (UIWebView *)webView\n{\n    if (!_webView)\n    {\n        _webView = [[UIWebView alloc] initWithFrame:self.view.bounds];\n        _webView.autoresizingMask = UIViewAutoresizingFlexibleHeight;\n        _webView.backgroundColor = [UIColor whiteColor];\n        \n        if (_loadingStyle == DZNWebViewControllerLoadingStyleProgressView)\n        {\n            _progressProxy = [[NJKWebViewProgress alloc] init];\n            _webView.delegate = _progressProxy;\n            _progressProxy.webViewProxyDelegate = self;\n            _progressProxy.progressDelegate = self;\n        }\n        else {\n            _webView.delegate = self;\n        }\n        \n        DZNLongPressGestureRecognizer *gesture = [[DZNLongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPressGesture:)];\n        gesture.allowableMovement = 20;\n        gesture.delegate = self;\n        [_webView addGestureRecognizer:gesture];\n    }\n    return _webView;\n}\n\n- (NJKWebViewProgressView *)progressView\n{\n    if (!_progressView && _loadingStyle == DZNWebViewControllerLoadingStyleProgressView)\n    {\n        CGFloat progressBarHeight = 2.5f;\n        CGSize navigationBarSize = self.navigationController.navigationBar.bounds.size;\n        CGRect barFrame = CGRectMake(0, navigationBarSize.height - progressBarHeight, navigationBarSize.width, progressBarHeight);\n        _progressView = [[NJKWebViewProgressView alloc] initWithFrame:barFrame];\n        \n        [self.navigationController.navigationBar addSubview:_progressView];\n    }\n    return _progressView;\n}\n\n- (UIActivityIndicatorView *)activityIndicatorView\n{\n    if (!_activityIndicatorView)\n    {\n        _activityIndicatorView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];\n        _activityIndicatorView.hidesWhenStopped = YES;\n        _activityIndicatorView.color = _toolbarTintColor;\n    }\n    return _activityIndicatorView;\n}\n\n- (NSArray *)navigationItems\n{\n    _backwardBarItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@\"toolbar_backward\"] style:UIBarButtonItemStylePlain target:self action:@selector(goBack:)];\n    _backwardBarItem.enabled = NO;\n    \n    _forwardBarItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@\"toolbar_forward\"] style:UIBarButtonItemStylePlain target:self action:@selector(goForward:)];\n    _forwardBarItem.enabled = NO;\n    \n    if (_loadingStyle == DZNWebViewControllerLoadingStyleActivityIndicator) {\n        _loadingBarItem = [[UIBarButtonItem alloc] initWithCustomView:self.activityIndicatorView];\n    }\n    \n    UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:NULL];\n    UIBarButtonItem *fixedSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:NULL];\n    fixedSpace.width = 20.0;\n    \n    NSMutableArray *items = [NSMutableArray arrayWithArray:@[_backwardBarItem,fixedSpace,_forwardBarItem,flexibleSpace]];\n    if (_loadingBarItem) {\n        [items addObject:_loadingBarItem];\n    }\n    \n    return items;\n}\n\n- (UIFont *)titleFont\n{\n    if (!_titleFont) {\n        return [[UINavigationBar appearance].titleTextAttributes objectForKey:NSFontAttributeName];\n    }\n    \n    return _titleFont;\n}\n\n- (UIColor *)titleColor\n{\n    if (!_titleColor) {\n        return [[UINavigationBar appearance].titleTextAttributes objectForKey:NSForegroundColorAttributeName];\n    }\n    \n    return _titleColor;\n}\n\n- (NSString *)pageTitle\n{\n    NSString *js = @\"document.body.style.webkitTouchCallout = 'none'; document.getElementsByTagName('title')[0].textContent;\";\n    NSString *title = [_webView stringByEvaluatingJavaScriptFromString:js];\n    return [title stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];\n}\n\n- (NSURL *)URL\n{\n    return _webView.request.URL;\n}\n\n- (CGSize)HTLMWindowSize\n{\n    CGSize size = CGSizeZero;\n    size.width = [[_webView stringByEvaluatingJavaScriptFromString:@\"window.innerWidth\"] floatValue];\n    size.height = [[_webView stringByEvaluatingJavaScriptFromString:@\"window.innerHeight\"] floatValue];\n    return size;\n}\n\n- (CGPoint)convertPointToHTMLSystem:(CGPoint)point\n{\n    CGSize viewSize = _webView.frame.size;\n    CGSize windowSize = [self HTLMWindowSize];\n    \n    CGPoint scaledPoint = CGPointZero;\n    CGFloat factor = windowSize.width / viewSize.width;\n    \n    scaledPoint.x = point.x * factor;\n    scaledPoint.y = point.y * factor;\n    \n    return scaledPoint;\n}\n\n- (NSArray *)excludedActivityTypesForItem:(id)item\n{\n    NSMutableArray *types = [NSMutableArray new];\n    \n    if (![item isKindOfClass:[UIImage class]]) {\n        [types addObjectsFromArray:@[UIActivityTypeCopyToPasteboard,\n                                     UIActivityTypeSaveToCameraRoll,\n                                     UIActivityTypePostToFlickr,\n                                     UIActivityTypePrint,\n                                     UIActivityTypeAssignToContact]];\n    }\n    \n    if (self.supportsAllActions) {\n        return types;\n    }\n    \n    if ((_supportedActions & DZNWebViewControllerActionShareLink) == 0) {\n        [types addObjectsFromArray:@[UIActivityTypeMail, UIActivityTypeMessage,\n                                     UIActivityTypePostToFacebook, UIActivityTypePostToTwitter,\n                                     UIActivityTypePostToWeibo, UIActivityTypePostToTencentWeibo,\n                                     UIActivityTypeAirDrop]];\n    }\n    if ((_supportedActions & DZNWebViewControllerActionReadLater) == 0 && [item isKindOfClass:[UIImage class]]) {\n        [types addObject:UIActivityTypeAddToReadingList];\n    }\n    \n    return types;\n}\n\n- (NSArray *)applicationActivitiesForItem:(id)item\n{\n    NSMutableArray *activities = [NSMutableArray new];\n    \n    if ([item isKindOfClass:[UIImage class]]) {\n        return activities;\n    }\n    \n    if ((_supportedActions & DZNWebViewControllerActionCopyLink) > 0 || self.supportsAllActions) {\n        [activities addObject:[DZNPolyActivity activityWithType:DZNPolyActivityTypeLink]];\n    }\n    if ((_supportedActions & DZNWebViewControllerActionOpenSafari) > 0 || self.supportsAllActions) {\n        [activities addObject:[DZNPolyActivity activityWithType:DZNPolyActivityTypeSafari]];\n    }\n    if ((_supportedActions & DZNWebViewControllerActionOpenChrome) > 0 || self.supportsAllActions) {\n        [activities addObject:[DZNPolyActivity activityWithType:DZNPolyActivityTypeChrome]];\n    }\n    if ((_supportedActions & DZNWebViewControllerActionOpenOperaMini) > 0 || self.supportsAllActions) {\n        [activities addObject:[DZNPolyActivity activityWithType:DZNPolyActivityTypeOpera]];\n    }\n    if ((_supportedActions & DZNWebViewControllerActionOpenDolphin) > 0 || self.supportsAllActions) {\n        [activities addObject:[DZNPolyActivity activityWithType:DZNPolyActivityTypeDolphin]];\n    }\n    \n    return activities;\n}\n\n- (BOOL)supportsAllActions\n{\n    return (_supportedActions == DZNWebViewControllerActionAll) ? YES : NO;\n}\n\n\n#pragma mark - Setter methods\n\n- (void)setURL:(NSURL *)URL\n{\n    [self startRequestWithURL:URL];\n}\n\n- (void)setViewTitle:(NSString *)title\n{\n    UILabel *label = (UILabel *)self.navigationItem.titleView;\n    \n    if (!label || ![label isKindOfClass:[UILabel class]]) {\n        label = [UILabel new];\n        label.numberOfLines = 2;\n        label.textAlignment = NSTextAlignmentCenter;\n        label.font = self.titleFont;\n        label.textColor = self.titleColor;\n        self.navigationItem.titleView = label;\n    }\n    \n    if (title) {\n        label.text = title;\n        [label sizeToFit];\n        \n        CGRect frame = label.frame;\n        frame.size.height = self.navigationController.navigationBar.frame.size.height;\n        label.frame = frame;\n    }\n}\n\n/*\n * Sets the request errors with an alert view.\n */\n- (void)setLoadingError:(NSError *)error\n{\n    switch (error.code) {\n//        case NSURLErrorTimedOut:\n        case NSURLErrorUnknown:\n        case NSURLErrorCancelled:\n            return;\n    }\n    \n    [self setActivityIndicatorsVisible:NO];\n    \n    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@\"Error\", nil) message:error.localizedDescription delegate:nil cancelButtonTitle:NSLocalizedString(@\"OK\", nil) otherButtonTitles: nil];\n    [alert show];\n}\n\n/*\n * Toggles the activity indicators on the status bar & footer view.\n */\n- (void)setActivityIndicatorsVisible:(BOOL)visible\n{\n    [UIApplication sharedApplication].networkActivityIndicatorVisible = visible;\n    \n    if (_loadingStyle != DZNWebViewControllerLoadingStyleActivityIndicator) {\n        return;\n    }\n    \n    if (visible) [_activityIndicatorView startAnimating];\n    else [_activityIndicatorView stopAnimating];\n}\n\n\n#pragma mark - DZNWebViewController methods\n\n- (void)startRequestWithURL:(NSURL *)URL\n{\n    _loadBalance = 0;\n    \n    if (![self.webView.request.URL isFileURL]) {\n        [_webView loadRequest:[[NSURLRequest alloc] initWithURL:URL]];\n    }\n    else {\n        NSData *data = [[NSData alloc] initWithContentsOfURL:URL];\n        NSString *HTMLString = [[NSString alloc] initWithData:data encoding:NSStringEncodingConversionAllowLossy];\n        \n        [_webView loadHTMLString:HTMLString baseURL:nil];\n    }\n}\n\n- (void)goBack:(id)sender\n{\n    if ([_webView canGoBack]) {\n        [_webView goBack];\n    }\n}\n\n- (void)goForward:(id)sender\n{\n    if ([_webView canGoForward]) {\n        [_webView goForward];\n    }\n}\n\n- (void)presentActivityController:(id)sender\n{\n    NSLog(@\"%s\",__FUNCTION__);\n    \n    NSString *type = kDZNWebViewControllerContentTypeLink;\n    NSString *title = [self pageTitle];\n    NSString *url = [self URL].absoluteString;\n    \n    NSLog(@\"type : %@\", type);\n    NSLog(@\"title : %@\", title);\n    NSLog(@\"url : %@\", url);\n    \n    NSDictionary *content = @{@\"title\": [self pageTitle], @\"url\": [self URL].absoluteString, @\"type\": kDZNWebViewControllerContentTypeLink};\n    [self presentActivityControllerWithContent:content];\n}\n\n- (void)presentActivityControllerWithContent:(NSDictionary *)content\n{\n    if (!content) {\n        return;\n    }\n    \n    NSString *type = [content objectForKey:@\"type\"];\n    NSString *title = [content objectForKey:@\"title\"];\n    NSString *url = [content objectForKey:@\"url\"];\n    \n    NSLog(@\"type : %@\", type);\n    NSLog(@\"title : %@\", title);\n    NSLog(@\"url : %@\", url);\n    \n    if ([type isEqualToString:kDZNWebViewControllerContentTypeLink]) {\n        \n        [self presentActivityControllerWithItem:url andTitle:title];\n    }\n    if ([type isEqualToString:kDZNWebViewControllerContentTypeImage]) {\n        \n        [self setActivityIndicatorsVisible:YES];\n        \n        dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0ul);\n        dispatch_async(queue, ^{\n            NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]];\n            UIImage *image = [UIImage imageWithData:data];\n            dispatch_sync(dispatch_get_main_queue(), ^{\n                [self presentActivityControllerWithItem:image andTitle:title];\n                [self setActivityIndicatorsVisible:NO];\n            });\n        });\n    }\n}\n\n- (void)presentActivityControllerWithItem:(id)item andTitle:(NSString *)title\n{\n    if (!item) {\n        return;\n    }\n    \n    _presentingActivities = YES;\n    \n    UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[title, item] applicationActivities:[self applicationActivitiesForItem:item]];\n    \n    controller.excludedActivityTypes = [self excludedActivityTypesForItem:item];\n    \n    if (title) {\n        [controller setValue:title forKey:@\"subject\"];\n    }\n    \n    [self presentViewController:controller animated:YES completion:nil];\n    \n    controller.completionHandler = ^(NSString *activityType, BOOL completed) {\n        NSLog(@\"completed dialog - activity: %@ - finished flag: %d\", activityType, completed);\n\n        _presentingActivities = NO;\n    };\n}\n\n- (void)handleLongPressGesture:(UIGestureRecognizer *)gesture\n{\n    if (gesture.state == UIGestureRecognizerStateBegan)\n    {\n        [self injectJavaScript];\n        \n        CGPoint point = [self convertPointToHTMLSystem:[gesture locationInView:_webView]];\n        \n        //// Get the URL link at the touch location\n        NSString *function = [NSString stringWithFormat:@\"script.getElement(%d,%d);\", (int)point.x, (int)point.y];\n        NSString *result = [_webView stringByEvaluatingJavaScriptFromString:function];\n        NSData *data = [result dataUsingEncoding:NSStringEncodingConversionAllowLossy|NSStringEncodingConversionExternalRepresentation];\n        \n        if (!data) {\n            return;\n        }\n        \n        NSMutableDictionary *content = [NSMutableDictionary dictionaryWithDictionary:[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil]];\n        \n        if (content.allValues.count > 0) {\n            [content setObject:[NSValue valueWithCGPoint:point] forKey:@\"location\"];\n            [self presentActivityControllerWithContent:content];\n        }\n    }\n}\n\n- (void)injectJavaScript\n{\n    NSString *path = [[NSBundle mainBundle] pathForResource:@\"inpector-script\" ofType:@\"js\"];\n    NSString *script = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];\n    \n    [_webView stringByEvaluatingJavaScriptFromString:script];\n}\n\n- (void)handleInteractivePopGesture:(UIGestureRecognizer *)gesture\n{\n    NSLog(@\"%s : %@\",__FUNCTION__, gesture);\n}\n\n- (void)clearProgressViewAnimated:(BOOL)animated\n{\n    if (!_progressView) {\n        return;\n    }\n    \n    [UIView animateWithDuration:animated ? 0.25 : 0.0\n                     animations:^{\n                         _progressView.alpha = 0;\n                     } completion:^(BOOL finished) {\n                         [_progressView removeFromSuperview];\n                     }];\n}\n\n- (void)stopLoading\n{\n    [self.webView stopLoading];\n    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;\n}\n\n\n#pragma mark - UIWebViewDelegate methods\n\n- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType\n{    \n    if (request.URL && !_presentingActivities) {\n        return YES;\n    }\n    \n    return NO;\n}\n\n- (void)webViewDidStartLoad:(UIWebView *)webView\n{\n    // load balance is use to see if the load was completed end of the site\n    _loadBalance++;\n    \n    if (_loadBalance == 1) {\n        [self setActivityIndicatorsVisible:YES];\n    }\n    \n    _backwardBarItem.enabled = [_webView canGoBack];\n    _forwardBarItem.enabled = [_webView canGoForward];\n}\n\n- (void)webViewDidFinishLoad:(UIWebView *)webView\n{\n    if (_loadBalance >= 1) _loadBalance--;\n    else if (_loadBalance < 0) _loadBalance = 0;\n\n    if (_loadBalance == 0) {\n        _didLoadContent = YES;\n        [self setActivityIndicatorsVisible:NO];\n    }\n    \n    _backwardBarItem.enabled = [_webView canGoBack];\n    _forwardBarItem.enabled = [_webView canGoForward];\n    \n    [self setViewTitle:[self pageTitle]];\n    \n    if ([webView.request.URL isFileURL] && _loadingStyle == DZNWebViewControllerLoadingStyleProgressView) {\n        [_progressView setProgress:1.0 animated:YES];\n    }\n}\n\n- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error\n{\n    _loadBalance = 0;\n    [self setLoadingError:error];\n}\n\n\n#pragma mark - UIGestureRecognizerDelegate methods\n\n- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer\n{\n    return YES;\n}\n\n- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch\n{\n    if ([gestureRecognizer isKindOfClass:[DZNLongPressGestureRecognizer class]]) {\n        return YES;\n    }\n    return NO;\n}\n\n- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer\n{\n    Class class = [DZNLongPressGestureRecognizer class];\n    if ([gestureRecognizer isKindOfClass:class] || [otherGestureRecognizer isKindOfClass:class]) {\n        return NO;\n    }\n    \n    return YES;\n}\n\n#pragma mark - NJKWebViewProgressDelegate methods\n\n- (void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress\n{\n    [self.progressView setProgress:progress animated:YES];\n}\n\n\n#pragma mark - View lifeterm\n\n- (void)didReceiveMemoryWarning\n{\n    [super didReceiveMemoryWarning];\n}\n\n- (void)viewDidUnload\n{\n    [super viewDidUnload];\n}\n\n- (void)dealloc\n{\n    _actionBarItem = nil;\n    _backwardBarItem = nil;\n    _forwardBarItem = nil;\n    _loadingBarItem = nil;\n\n    _activityIndicatorView = nil;\n    \n    _webView = nil;\n    _URL = nil;\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (NSUInteger)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return NO;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/DZNWebViewController/Source/Scripts/inpector-script.js",
    "content": "\nvar script = new function() {\n    \n    this.getElement = function(x,y) {\n        var img = getImage(x,y);\n        if (img == null) return getLink(x,y);\n        else return img;\n    }\n\n    getLink = function(x,y) {\n        var tags = \"\";\n        var e = \"\";\n        var offset = 0;\n        while ((tags.length == 0) && (offset < 20)) {\n            e = document.elementFromPoint(x,y+offset);\n            while (e) {\n                if (e.href) {\n                    tags += e.href;\n                    break;\n                }\n                e = e.parentNode;\n            }\n            if (tags.length == 0) {\n                e = document.elementFromPoint(x,y-offset);\n                while (e) {\n                    if (e.href) {\n                        tags += e.href;\n                        break;\n                    }\n                    e = e.parentNode;\n                }\n            }\n            offset++;\n        }\n        \n        if (tags != null && tags.length > 0) return '{ \"type\" : \"link\" , \"url\" : \"'+ tags +'\", \"title\" : \"'+ e.innerHTML +'\"}';\n        else return null;\n    }\n    \n    getImage = function(x,y) {\n        var tags = \"\";\n        var title = \"\";\n        var e = \"\";\n        var offset = 0;\n        while ((tags.length == 0) && (offset < 20)) {\n            e = document.elementFromPoint(x,y+offset);\n            while (e) {\n                if (e.src) {\n                    tags += e.src;\n                    title += e.alt;\n                    break;\n                }\n                e = e.parentNode;\n            }\n            if (tags.length == 0) {\n                e = document.elementFromPoint(x,y-offset);\n                while (e) {\n                    if (e.src) {\n                        tags += e.src;\n                        title += e.alt;\n                        break;\n                    }\n                    e = e.parentNode;\n                }\n            }\n            offset++;\n        }\n        \n        if (tags != null && tags.length > 0) return '{ \"type\" : \"image\" , \"url\" : \"'+ tags +'\" , \"title\" : \"'+ title +'\"}';\n        else return null;\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Local Podspecs/DZNEmptyDataSet.podspec.json",
    "content": "{\n  \"name\": \"DZNEmptyDataSet\",\n  \"version\": \"1.8\",\n  \"summary\": \"A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\",\n  \"description\": \"It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show. The -reloadData call will be observed so the empty dataset will be configured whenever needed.\",\n  \"homepage\": \"https://github.com/dzenbot/DZNEmptyDataSet\",\n  \"license\": {\n    \"type\": \"MIT\",\n    \"file\": \"LICENSE\"\n  },\n  \"authors\": {\n    \"dzenbot\": \"iromero@dzen.cl\"\n  },\n  \"platforms\": {\n    \"ios\": \"6.0\"\n  },\n  \"source\": {\n    \"git\": \"https://github.com/dzenbot/DZNEmptyDataSet.git\",\n    \"tag\": \"v1.8\"\n  },\n  \"source_files\": [\n    \"Classes\",\n    \"Source/**/*.{h,m}\"\n  ],\n  \"requires_arc\": true,\n  \"frameworks\": \"UIKit\"\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2013 Satoshi Asano\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE."
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/NJKWebViewProgress/NJKWebViewProgress.h",
    "content": "//\n//  NJKWebViewProgress.h\n//\n//  Created by Satoshi Aasano on 4/20/13.\n//  Copyright (c) 2013 Satoshi Asano. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n#undef njk_weak\n#if __has_feature(objc_arc_weak)\n#define njk_weak weak\n#else\n#define njk_weak unsafe_unretained\n#endif\n\nextern const float NJKInitialProgressValue;\nextern const float NJKInteractiveProgressValue;\nextern const float NJKFinalProgressValue;\n\ntypedef void (^NJKWebViewProgressBlock)(float progress);\n@protocol NJKWebViewProgressDelegate;\n@interface NJKWebViewProgress : NSObject<UIWebViewDelegate>\n@property (nonatomic, njk_weak) id<NJKWebViewProgressDelegate>progressDelegate;\n@property (nonatomic, njk_weak) id<UIWebViewDelegate>webViewProxyDelegate;\n@property (nonatomic, copy) NJKWebViewProgressBlock progressBlock;\n@property (nonatomic, readonly) float progress; // 0.0..1.0\n\n- (void)reset;\n@end\n\n@protocol NJKWebViewProgressDelegate <NSObject>\n- (void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress;\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/NJKWebViewProgress/NJKWebViewProgress.m",
    "content": "//\n//  NJKWebViewProgress.m\n//\n//  Created by Satoshi Aasano on 4/20/13.\n//  Copyright (c) 2013 Satoshi Asano. All rights reserved.\n//\n\n#import \"NJKWebViewProgress.h\"\n\nNSString *completeRPCURL = @\"webviewprogressproxy:///complete\";\n\nconst float NJKInitialProgressValue = 0.1f;\nconst float NJKInteractiveProgressValue = 0.5f;\nconst float NJKFinalProgressValue = 0.9f;\n\n@implementation NJKWebViewProgress\n{\n    NSUInteger _loadingCount;\n    NSUInteger _maxLoadCount;\n    NSURL *_currentURL;\n    BOOL _interactive;\n}\n\n- (id)init\n{\n    self = [super init];\n    if (self) {\n        _maxLoadCount = _loadingCount = 0;\n        _interactive = NO;\n    }\n    return self;\n}\n\n- (void)startProgress\n{\n    if (_progress < NJKInitialProgressValue) {\n        [self setProgress:NJKInitialProgressValue];\n    }\n}\n\n- (void)incrementProgress\n{\n    float progress = self.progress;\n    float maxProgress = _interactive ? NJKFinalProgressValue : NJKInteractiveProgressValue;\n    float remainPercent = (float)_loadingCount / (float)_maxLoadCount;\n    float increment = (maxProgress - progress) * remainPercent;\n    progress += increment;\n    progress = fmin(progress, maxProgress);\n    [self setProgress:progress];\n}\n\n- (void)completeProgress\n{\n    [self setProgress:1.0];\n}\n\n- (void)setProgress:(float)progress\n{\n    // progress should be incremental only\n    if (progress > _progress || progress == 0) {\n        _progress = progress;\n        if ([_progressDelegate respondsToSelector:@selector(webViewProgress:updateProgress:)]) {\n            [_progressDelegate webViewProgress:self updateProgress:progress];\n        }\n        if (_progressBlock) {\n            _progressBlock(progress);\n        }\n    }\n}\n\n- (void)reset\n{\n    _maxLoadCount = _loadingCount = 0;\n    _interactive = NO;\n    [self setProgress:0.0];\n}\n\n#pragma mark -\n#pragma mark UIWebViewDelegate\n\n- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType\n{\n    if ([request.URL.absoluteString isEqualToString:completeRPCURL]) {\n        [self completeProgress];\n        return NO;\n    }\n    \n    BOOL ret = YES;\n    if ([_webViewProxyDelegate respondsToSelector:@selector(webView:shouldStartLoadWithRequest:navigationType:)]) {\n        ret = [_webViewProxyDelegate webView:webView shouldStartLoadWithRequest:request navigationType:navigationType];\n    }\n    \n    BOOL isFragmentJump = NO;\n    if (request.URL.fragment) {\n        NSString *nonFragmentURL = [request.URL.absoluteString stringByReplacingOccurrencesOfString:[@\"#\" stringByAppendingString:request.URL.fragment] withString:@\"\"];\n        isFragmentJump = [nonFragmentURL isEqualToString:webView.request.URL.absoluteString];\n    }\n\n    BOOL isTopLevelNavigation = [request.mainDocumentURL isEqual:request.URL];\n\n    BOOL isHTTP = [request.URL.scheme isEqualToString:@\"http\"] || [request.URL.scheme isEqualToString:@\"https\"];\n    if (ret && !isFragmentJump && isHTTP && isTopLevelNavigation) {\n        _currentURL = request.URL;\n        [self reset];\n    }\n    return ret;\n}\n\n- (void)webViewDidStartLoad:(UIWebView *)webView\n{\n    if ([_webViewProxyDelegate respondsToSelector:@selector(webViewDidStartLoad:)]) {\n        [_webViewProxyDelegate webViewDidStartLoad:webView];\n    }\n\n    _loadingCount++;\n    _maxLoadCount = fmax(_maxLoadCount, _loadingCount);\n\n    [self startProgress];\n}\n\n- (void)webViewDidFinishLoad:(UIWebView *)webView\n{\n    if ([_webViewProxyDelegate respondsToSelector:@selector(webViewDidFinishLoad:)]) {\n        [_webViewProxyDelegate webViewDidFinishLoad:webView];\n    }\n    \n    _loadingCount--;\n    [self incrementProgress];\n    \n    NSString *readyState = [webView stringByEvaluatingJavaScriptFromString:@\"document.readyState\"];\n\n    BOOL interactive = [readyState isEqualToString:@\"interactive\"];\n    if (interactive) {\n        _interactive = YES;\n        NSString *waitForCompleteJS = [NSString stringWithFormat:@\"window.addEventListener('load',function() { var iframe = document.createElement('iframe'); iframe.style.display = 'none'; iframe.src = '%@'; document.body.appendChild(iframe);  }, false);\", completeRPCURL];\n        [webView stringByEvaluatingJavaScriptFromString:waitForCompleteJS];\n    }\n    \n    BOOL isNotRedirect = _currentURL && [_currentURL isEqual:webView.request.mainDocumentURL];\n    BOOL complete = [readyState isEqualToString:@\"complete\"];\n    if (complete && isNotRedirect) {\n        [self completeProgress];\n    }\n}\n\n- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error\n{\n    if ([_webViewProxyDelegate respondsToSelector:@selector(webView:didFailLoadWithError:)]) {\n        [_webViewProxyDelegate webView:webView didFailLoadWithError:error];\n    }\n    \n    _loadingCount--;\n    [self incrementProgress];\n\n    NSString *readyState = [webView stringByEvaluatingJavaScriptFromString:@\"document.readyState\"];\n\n    BOOL interactive = [readyState isEqualToString:@\"interactive\"];\n    if (interactive) {\n        _interactive = YES;\n        NSString *waitForCompleteJS = [NSString stringWithFormat:@\"window.addEventListener('load',function() { var iframe = document.createElement('iframe'); iframe.style.display = 'none'; iframe.src = '%@'; document.body.appendChild(iframe);  }, false);\", completeRPCURL];\n        [webView stringByEvaluatingJavaScriptFromString:waitForCompleteJS];\n    }\n    \n    BOOL isNotRedirect = _currentURL && [_currentURL isEqual:webView.request.mainDocumentURL];\n    BOOL complete = [readyState isEqualToString:@\"complete\"];\n    if (complete && isNotRedirect) {\n        [self completeProgress];\n    }\n}\n\n#pragma mark - \n#pragma mark Method Forwarding\n// for future UIWebViewDelegate impl\n\n- (BOOL)respondsToSelector:(SEL)aSelector\n{\n    if ( [super respondsToSelector:aSelector] )\n        return YES;\n    \n    if ([self.webViewProxyDelegate respondsToSelector:aSelector])\n        return YES;\n    \n    return NO;\n}\n\n- (NSMethodSignature *)methodSignatureForSelector:(SEL)selector\n{\n    NSMethodSignature *signature = [super methodSignatureForSelector:selector];\n    if(!signature) {\n        if([_webViewProxyDelegate respondsToSelector:selector]) {\n            return [(NSObject *)_webViewProxyDelegate methodSignatureForSelector:selector];\n        }\n    }\n    return signature;\n}\n\n- (void)forwardInvocation:(NSInvocation*)invocation\n{\n    if ([_webViewProxyDelegate respondsToSelector:[invocation selector]]) {\n        [invocation invokeWithTarget:_webViewProxyDelegate];\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/NJKWebViewProgress/NJKWebViewProgressView.h",
    "content": "//\n//  NJKWebViewProgressView.h\n// iOS 7 Style WebView Progress Bar\n//\n//  Created by Satoshi Aasano on 11/16/13.\n//  Copyright (c) 2013 Satoshi Asano. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface NJKWebViewProgressView : UIView\n@property (nonatomic) float progress;\n\n@property (nonatomic) UIView *progressBarView;\n@property (nonatomic) NSTimeInterval barAnimationDuration; // default 0.1\n@property (nonatomic) NSTimeInterval fadeAnimationDuration; // default 0.27\n@property (nonatomic) NSTimeInterval fadeOutDelay; // default 0.1\n\n- (void)setProgress:(float)progress animated:(BOOL)animated;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/NJKWebViewProgress/NJKWebViewProgressView.m",
    "content": "//\n//  NJKWebViewProgressView.m\n//\n//  Created by Satoshi Aasanoon 11/16/13.\n//  Copyright (c) 2013 Satoshi Asano. All rights reserved.\n//\n\n#import \"NJKWebViewProgressView.h\"\n\n@implementation NJKWebViewProgressView\n\n- (id)initWithFrame:(CGRect)frame\n{\n    self = [super initWithFrame:frame];\n    if (self) {\n        [self configureViews];\n    }\n    return self;\n}\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    [self configureViews];\n}\n\n-(void)configureViews\n{\n    self.userInteractionEnabled = NO;\n    self.autoresizingMask = UIViewAutoresizingFlexibleWidth;\n    _progressBarView = [[UIView alloc] initWithFrame:self.bounds];\n    _progressBarView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;\n    UIColor *tintColor = [UIColor colorWithRed:22.f / 255.f green:126.f / 255.f blue:251.f / 255.f alpha:1.0]; // iOS7 Safari bar color\n    if ([UIApplication.sharedApplication.delegate.window respondsToSelector:@selector(setTintColor:)] && UIApplication.sharedApplication.delegate.window.tintColor) {\n        tintColor = UIApplication.sharedApplication.delegate.window.tintColor;\n    }\n    _progressBarView.backgroundColor = tintColor;\n    [self addSubview:_progressBarView];\n    \n    _barAnimationDuration = 0.27f;\n    _fadeAnimationDuration = 0.27f;\n    _fadeOutDelay = 0.1f;\n}\n\n-(void)setProgress:(float)progress\n{\n    [self setProgress:progress animated:NO];\n}\n\n- (void)setProgress:(float)progress animated:(BOOL)animated\n{\n    BOOL isGrowing = progress > 0.0;\n    [UIView animateWithDuration:(isGrowing && animated) ? _barAnimationDuration : 0.0 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{\n        CGRect frame = _progressBarView.frame;\n        frame.size.width = progress * self.bounds.size.width;\n        _progressBarView.frame = frame;\n    } completion:nil];\n\n    if (progress >= 1.0) {\n        [UIView animateWithDuration:animated ? _fadeAnimationDuration : 0.0 delay:_fadeOutDelay options:UIViewAnimationOptionCurveEaseInOut animations:^{\n            _progressBarView.alpha = 0.0;\n        } completion:^(BOOL completed){\n            CGRect frame = _progressBarView.frame;\n            frame.size.width = 0;\n            _progressBarView.frame = frame;\n        }];\n    }\n    else {\n        [UIView animateWithDuration:animated ? _fadeAnimationDuration : 0.0 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{\n            _progressBarView.alpha = 1.0;\n        } completion:nil];\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/NJKWebViewProgress/README.md",
    "content": "# NJKWebViewProgress\nNJKWebViewProgress is a progress interface library for UIWebView. Currently, UIWebView doesn't have official progress interface. You can implement progress bar for your in-app browser using this module.\n\n<img src=\"https://raw.github.com/ninjinkun/NJKWebViewProgress/master/DemoApp/Screenshot/screenshot1.png\" alt=\"iOS ScreenShot 1\" width=\"240px\" style=\"width: 240px;\" />\n\nNJKWebViewProgress doesn't use CocoaTouch's private methods. It's AppStore safe.\n\n# Used in Production\n- [Yahoo! JAPAN](https://itunes.apple.com/app/yahoo!-japan/id299147843?mt=8)\n- [Facebook](https://itunes.apple.com/app/facebook/id284882215?mt=8‎)\n\n# Requirements\n- iOS 4.3 or later\n- ARC\n\n# Usage\nInstance `NJKWebViewProgress` and set `UIWebViewDelegate`. If you set `webViewProxyDelegate`, `NJKWebViewProgress` should perform as a proxy object.\n\n```objc\n_progressProxy = [[NJKWebViewProgress alloc] init]; // instance variable\nwebView.delegate = _progressProxy;\n_progressProxy.webViewProxyDelegate = self;\n_progressProxy.progressDelegate = self;\n```\n\nWhen UIWebView start loading, `NJKWebViewProgress` call delegate method and block with progress.\n```objc\n-(void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress\n{\n    [progressView setProgress:progress animated:NO];\n}\n```\n\n```objc\nprogressProxy.progressBlock = ^(float progress) {\n    [progressView setProgress:progress animated:NO];\n};\n```\n\nYou can determine the current state of the document by comparing the `progress` value to one of the provided constants:\n\n```objc\n-(void)webViewProgress:(NJKWebViewProgress *)webViewProgress updateProgress:(float)progress\n{\n    if (progress == NJKInteractiveProgressValue) {\n        // The web view has finished parsing the document,\n        // but is still loading sub-resources\n    }\n}\n```\n\nThis repository contains iOS 7 Safari style bar `NJKWebViewProgressView`. You can choose `NJKWebViewProgressView`, `UIProgressView` or your custom bar.\n\n# Install\n## CocoaPods\n\n```\npod 'NJKWebViewProgress'\n```\n\n# License\n[Apache]: http://www.apache.org/licenses/LICENSE-2.0\n[MIT]: http://www.opensource.org/licenses/mit-license.php\n[GPL]: http://www.gnu.org/licenses/gpl.html\n[BSD]: http://opensource.org/licenses/bsd-license.php\n[MIT license][MIT].\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Pods.xcodeproj/project.pbxproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>archiveVersion</key>\n\t<string>1</string>\n\t<key>classes</key>\n\t<dict/>\n\t<key>objectVersion</key>\n\t<string>46</string>\n\t<key>objects</key>\n\t<dict>\n\t\t<key>0073E62095A55A1F04431C64E8DB6061</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNWebViewController.m</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Classes/DZNWebViewController.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>00D64622331244D48CEF8CE7FF8F7EAB</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>4CB917E13EFB8E8A77A9DFB54A094700</string>\n\t\t\t\t<string>3285B9E793F3F681BD81989693DB7FDB</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Core</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>01D849F61E9CC095AA77BAE56F346986</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>488BDE8C22466D3528798E30AE6B5402</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>02A8E618E310DC8260866C0A176B8856</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>7DEC2641EE544FF8108497D2D83AD8BB</string>\n\t\t\t\t<string>D0DB248CCEF8BC38702BB8F452FD5050</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>0413937F6D6F601B38AC993CF871B9D4</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>40FCDC44E85DE5BD85AF2850D2806CEE</string>\n\t\t\t\t<string>EBC06BB5E21023F73D6F1CA0BE30E89F</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>066718DC0ECEFF52EB0A0C806917569C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>toolbar_backward@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/toolbar_backward@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>087B0E4C776D6EFC2671C4206717E79B</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgressView.m</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress/NJKWebViewProgressView.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>09B2E8DCC807ED54CF44E15C7959D22A</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNWebViewController-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0A95F74CB955C77DD2BDC6D29C5F3770</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNWebViewController-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0D64CC4711BF078F371F23487E9BF068</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Link7@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Link7@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0DD91045976DDAD683B1C7CAD39F8AE5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0E289E1A078FE239BA061FB854977182</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>C6397BB480ED559EC8C4D23E5609C595</string>\n\t\t\t\t<string>B005BE0EC46301ED8CCFDE3E1C4A92A1</string>\n\t\t\t\t<string>6724C6F09F10BF9DB297DDCC4DF74370</string>\n\t\t\t\t<string>0073E62095A55A1F04431C64E8DB6061</string>\n\t\t\t\t<string>93A488956ED8CAEBF9077073B1642C90</string>\n\t\t\t\t<string>7152B5FF5A9C4F197012B71B22F99497</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>0E375E174055F581ED4CF6FA4E0C8790</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>FB912EEF8564E7EBB05F67DB96DD26C4</string>\n\t\t\t\t<string>96E697C0C0FD092DA857FD588D2BC7D1</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>1437484E41E42B115A552058DFC598B3</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Chrome7@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Chrome7@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>1567880981488C1D179ADF6A1ECECAF9</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>76532940032CB802526412FF77D1FA32</string>\n\t\t\t\t<string>2ABA9D4094A198868F811D99DF803232</string>\n\t\t\t\t<string>FA28D880912CEEEEBD708B97F02C0DD1</string>\n\t\t\t\t<string>525949615DCBEE0F02C41F1A6BB82D63</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Examples/WebBrowser/Pods/Target Support Files/DZNEmptyDataSet</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>15A529C27057E4A57D259CBC6E6CE49C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.markdown</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>16A9AF8E5E3CA31F13C217CF15EBC2D5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Chrome7@2x~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Chrome7@2x~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>1C55386CA03F0186E1DD13ECB5322E53</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>567A61A81B4A3196053BF8770809D4F8</string>\n\t\t\t\t<string>2AA7BA789526BF7E304CEFC8A6ED8E43</string>\n\t\t\t\t<string>4D939E3667F633B71122A0C3CB796F05</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>1E6367EA7EE6EC92788A3035BED4D6DA</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.debug.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>21CF14A60E42F519D8A245C74E080C05</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>477F7AE04133753DEE38147EFB53937F</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t</dict>\n\t\t<key>23C9FB54F2A600BA08974D877C5C75DB</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Safari7~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Safari7~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>251A0F9D3243DA7DE7CEEE71C5D45E64</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNWebViewController.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>26ABDED51EFD3789BA3FD7122BECAA7E</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>00D64622331244D48CEF8CE7FF8F7EAB</string>\n\t\t\t\t<string>52E35203AA0C4C76011C90B32EE9940A</string>\n\t\t\t\t<string>A2A9934A7E48EB557EADBFD949E2FB24</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>2975A9E2355EF5EEF7D0AB8CFE231775</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>0073E62095A55A1F04431C64E8DB6061</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>2AA7BA789526BF7E304CEFC8A6ED8E43</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>3285B9E793F3F681BD81989693DB7FDB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t\t<key>settings</key>\n\t\t\t<dict>\n\t\t\t\t<key>COMPILER_FLAGS</key>\n\t\t\t\t<string>-DOS_OBJECT_USE_OBJC=0</string>\n\t\t\t</dict>\n\t\t</dict>\n\t\t<key>2ABA9D4094A198868F811D99DF803232</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>2D5514AC2D607AB0CDEACDCF6E583A21</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>2ABA9D4094A198868F811D99DF803232</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>2D8E8EC45A3A1A1D94AE762CB5028504</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>A70CDAD61F90AC503C7D04CC22DA2923</string>\n\t\t\t\t<string>FB45FFD90572718D82AB9092B750F0CA</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>31201D4DCCAC1E05500309C4A16BEA34</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Link7.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Link7.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>321A4E6A83E343470840E18593A2C0F2</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>866829F0438E7A1FFD0AA0BC40B44B88</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNWebViewController/DZNWebViewController-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>326EC967FB51B178CB8081E8062E45B9</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Opera7.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Opera7.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>3285B9E793F3F681BD81989693DB7FDB</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress.m</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress/NJKWebViewProgress.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>32D0072C747E69660F212CAA7C9A617B</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>CC9BE5817D3DF008561806689BAE0037</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>33A8490F19EF0F87A46B0D10D487692C</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Opera7@2x~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Opera7@2x~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>3478F2DCA6D15A17EB15C732B2A29316</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>target</key>\n\t\t\t<string>FBC39E4CFD44CE42CBCB4C7D314F945A</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>937931930E346CE38EB6AAA9E7634CD3</string>\n\t\t</dict>\n\t\t<key>3BD1AE08BA079DFB376041170F33FBF6</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>9BB56AFA98D0E3E9F5EF527F6C622650</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>40FCDC44E85DE5BD85AF2850D2806CEE</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>4CB917E13EFB8E8A77A9DFB54A094700</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>433CD3331B6C3787F473C941B61FC68F</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>D0FB9306D21AF23A056944AE037CBFFF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Frameworks</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>475E470C0987A8148EE64EE29EA4341F</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libPods.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>477F7AE04133753DEE38147EFB53937F</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>D78D847DA540289161D6FE2DECCDA3CE</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>9B96644CD0BD51EDBF2BF88F5C6E0F51</string>\n\t\t\t\t<string>02A8E618E310DC8260866C0A176B8856</string>\n\t\t\t\t<string>75100CB23FCD462E35EEB26D078FE4F1</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array>\n\t\t\t\t<string>4B88A7B239A67E11F0383D9188FBFA49</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>741F1CAE077A31AD9849213CA657545E</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>488BDE8C22466D3528798E30AE6B5402</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Foundation.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>4AFBED6ECA416534FA2B6532862AED42</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Dolphin7.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Dolphin7.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4B88A7B239A67E11F0383D9188FBFA49</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>target</key>\n\t\t\t<string>5CC6C4056B04D092E49F6A43604045AF</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>EE281861B6DBC82D55D54DA87FCCFD9F</string>\n\t\t</dict>\n\t\t<key>4CB917E13EFB8E8A77A9DFB54A094700</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress/NJKWebViewProgress.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>4D939E3667F633B71122A0C3CB796F05</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>087B0E4C776D6EFC2671C4206717E79B</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t\t<key>settings</key>\n\t\t\t<dict>\n\t\t\t\t<key>COMPILER_FLAGS</key>\n\t\t\t\t<string>-DOS_OBJECT_USE_OBJC=0</string>\n\t\t\t</dict>\n\t\t</dict>\n\t\t<key>525949615DCBEE0F02C41F1A6BB82D63</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>52E35203AA0C4C76011C90B32EE9940A</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>69C6B5DB0D94FC77C75E778BAD64E79E</string>\n\t\t\t\t<string>087B0E4C776D6EFC2671C4206717E79B</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>ProgressView</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>5469A210B3E614E4FEEDD3159FFE90C1</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Opera7~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Opera7~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>567A61A81B4A3196053BF8770809D4F8</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>0DD91045976DDAD683B1C7CAD39F8AE5</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>58856371393ACFD6A520E06621D7DCCF</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>A92E7DC4AA2B7D01F6E02A3F6E67E100</string>\n\t\t\t\t<string>CE0846A3D34851D399F971B79134E3A5</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>58D54D01C7C264E43DFF4DB7F808F173</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>E02D9C0B9F7B4E4330A75496C55268B3</string>\n\t\t\t\t<string>2D5514AC2D607AB0CDEACDCF6E583A21</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>59D8577F668C692FAB872D8FDC51C5DC</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>866829F0438E7A1FFD0AA0BC40B44B88</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNWebViewController/DZNWebViewController-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>5CC6C4056B04D092E49F6A43604045AF</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>58856371393ACFD6A520E06621D7DCCF</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>1C55386CA03F0186E1DD13ECB5322E53</string>\n\t\t\t\t<string>32D0072C747E69660F212CAA7C9A617B</string>\n\t\t\t\t<string>0413937F6D6F601B38AC993CF871B9D4</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>6D4465D03AD96C0EA6C0156AD46CE253</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>5DB666AC1070276A7247E3A017AB9DC3</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>F6977508B6D92B50BAB6F2EAFC125E29</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Development Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>5E6955AD34728605AE35F018EB73CB7A</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>5CC6C4056B04D092E49F6A43604045AF</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t</dict>\n\t\t<key>5E9EADFF5D42F6797C393118B0C2F9A5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Safari7.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Safari7.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>60C4A67006B834120D84AF62A45AE782</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>0E289E1A078FE239BA061FB854977182</string>\n\t\t\t\t<string>26ABDED51EFD3789BA3FD7122BECAA7E</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>61C6A344AF6013905621E7A918AC3AA3</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>A4F6D097A9E1B249CEDFC4EE4D7A48A9</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>635E612DB8D14980C75972C0A9CAABAA</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>779CD1D16F3A16795920C50919972DE9</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>64D9DF6D02079CDA82EBBA54A3B4EF05</string>\n\t\t\t\t<string>EA6C45AFB0BE2C0DBBD0F156AD3D6D14</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array>\n\t\t\t\t<string>3478F2DCA6D15A17EB15C732B2A29316</string>\n\t\t\t\t<string>C1B3908E1F4BEF1CBA685C3F81FA69A2</string>\n\t\t\t\t<string>A8DED044636DD0D714015E763AB37254</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>475E470C0987A8148EE64EE29EA4341F</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>641AE05DD55E5E6AC1590CD7B4A18F97</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.script.sh</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-resources.sh</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>64D9DF6D02079CDA82EBBA54A3B4EF05</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>3BD1AE08BA079DFB376041170F33FBF6</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>66B732661C0B62E6FE34E4D45838768D</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Opera7@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Opera7@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6724C6F09F10BF9DB297DDCC4DF74370</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNWebViewController.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Classes/DZNWebViewController.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>67FA59F041ACB11DFC39C3EAA88044C6</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>685CA950AA4A4E958900902DE3E24BB9</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BD71D8C8365D72389F242C8CB5F9A1BB</string>\n\t\t\t\t<string>A5890604E32694489BFFC947FD365109</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>69C6B5DB0D94FC77C75E778BAD64E79E</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgressView.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress/NJKWebViewProgressView.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>6D4465D03AD96C0EA6C0156AD46CE253</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libNJKWebViewProgress.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libNJKWebViewProgress.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>7152B5FF5A9C4F197012B71B22F99497</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>251A0F9D3243DA7DE7CEEE71C5D45E64</string>\n\t\t\t\t<string>866829F0438E7A1FFD0AA0BC40B44B88</string>\n\t\t\t\t<string>0A95F74CB955C77DD2BDC6D29C5F3770</string>\n\t\t\t\t<string>09B2E8DCC807ED54CF44E15C7959D22A</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Target Support Files/DZNWebViewController</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>741F1CAE077A31AD9849213CA657545E</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libDZNWebViewController.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libDZNWebViewController.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>74CCEA35B1C48D4804C8F1933826B260</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>C863E3EA6C5F317637A9AB0441D80F38</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>75100CB23FCD462E35EEB26D078FE4F1</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>F8CE190644F372AD96FF9A6C1B6030F1</string>\n\t\t\t\t<string>915B3868DF5E7DF86C822250138C26B7</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>76532940032CB802526412FF77D1FA32</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>779CD1D16F3A16795920C50919972DE9</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>E16F060272BDCBB8427970FE55475812</string>\n\t\t\t\t<string>74CCEA35B1C48D4804C8F1933826B260</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>7DB346D0F39D3F0E887471402A8071AB</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>BA6428E9F66FD5A23C0A2E06ED26CD2F</string>\n\t\t\t\t<string>5DB666AC1070276A7247E3A017AB9DC3</string>\n\t\t\t\t<string>433CD3331B6C3787F473C941B61FC68F</string>\n\t\t\t\t<string>60C4A67006B834120D84AF62A45AE782</string>\n\t\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t\t<string>D2411A5FE7F7A004607BED49990C37F4</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>7DEC2641EE544FF8108497D2D83AD8BB</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>488BDE8C22466D3528798E30AE6B5402</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>866829F0438E7A1FFD0AA0BC40B44B88</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNWebViewController-Private.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>86724DCAD53620BDFA4606251852B941</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Dolphin7@2x~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Dolphin7@2x~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>8925101CC8B7B61B5FE3199640820F0F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Chrome7~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Chrome7~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>8A0271BAFC9A632953155DA1BF56ABB3</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>8F77189E6318E8CF7D4477430C926C56</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Safari7@2x~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Safari7@2x~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>915B3868DF5E7DF86C822250138C26B7</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>6724C6F09F10BF9DB297DDCC4DF74370</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>928DC48E6B6A0AEF70BE5899C43C37C8</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>F5D3B1E4F40C2261682245A246C733D7</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXHeadersBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>937931930E346CE38EB6AAA9E7634CD3</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>FBC39E4CFD44CE42CBCB4C7D314F945A</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t</dict>\n\t\t<key>93A488956ED8CAEBF9077073B1642C90</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>FF1711ABD18CC794D4A8CC4688EE2ED5</string>\n\t\t\t\t<string>1437484E41E42B115A552058DFC598B3</string>\n\t\t\t\t<string>16A9AF8E5E3CA31F13C217CF15EBC2D5</string>\n\t\t\t\t<string>8925101CC8B7B61B5FE3199640820F0F</string>\n\t\t\t\t<string>4AFBED6ECA416534FA2B6532862AED42</string>\n\t\t\t\t<string>E2486259CE059E8504893500040A277A</string>\n\t\t\t\t<string>86724DCAD53620BDFA4606251852B941</string>\n\t\t\t\t<string>A56984EF53584DC2C51242ED300294E8</string>\n\t\t\t\t<string>31201D4DCCAC1E05500309C4A16BEA34</string>\n\t\t\t\t<string>0D64CC4711BF078F371F23487E9BF068</string>\n\t\t\t\t<string>EF3209A99BF79C2BA0B40581A96AF81F</string>\n\t\t\t\t<string>A21D8D00852BA1953EEAED467FFCE955</string>\n\t\t\t\t<string>326EC967FB51B178CB8081E8062E45B9</string>\n\t\t\t\t<string>66B732661C0B62E6FE34E4D45838768D</string>\n\t\t\t\t<string>33A8490F19EF0F87A46B0D10D487692C</string>\n\t\t\t\t<string>5469A210B3E614E4FEEDD3159FFE90C1</string>\n\t\t\t\t<string>5E9EADFF5D42F6797C393118B0C2F9A5</string>\n\t\t\t\t<string>E8BFF88494664E704CBCEE5CD03BD4CD</string>\n\t\t\t\t<string>8F77189E6318E8CF7D4477430C926C56</string>\n\t\t\t\t<string>23C9FB54F2A600BA08974D877C5C75DB</string>\n\t\t\t\t<string>DE406E5C9C961184770C68FAD854F503</string>\n\t\t\t\t<string>AB0275B1A20701F0FFB0578F2DEEEED3</string>\n\t\t\t\t<string>066718DC0ECEFF52EB0A0C806917569C</string>\n\t\t\t\t<string>BEF8748F405E35019DB7442C57ACCF32</string>\n\t\t\t\t<string>C3DDE1147A36EC3A56E23F90FA3E8F4F</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Resources</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>9489FB90811ED6FABE3779A7F3540F94</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>488BDE8C22466D3528798E30AE6B5402</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>952EEBFAF8F7E620423C9F156F25A506</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>15A529C27057E4A57D259CBC6E6CE49C</string>\n\t\t\t\t<string>BF59BC15D23E1E1912C8F334E7236813</string>\n\t\t\t\t<string>9BB56AFA98D0E3E9F5EF527F6C622650</string>\n\t\t\t\t<string>641AE05DD55E5E6AC1590CD7B4A18F97</string>\n\t\t\t\t<string>1E6367EA7EE6EC92788A3035BED4D6DA</string>\n\t\t\t\t<string>C863E3EA6C5F317637A9AB0441D80F38</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Pods</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Target Support Files/Pods</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>96E697C0C0FD092DA857FD588D2BC7D1</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>A5890604E32694489BFFC947FD365109</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>9B96644CD0BD51EDBF2BF88F5C6E0F51</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>A1DCD87F2C210B625448672C220131AC</string>\n\t\t\t\t<string>AD54FC0B3CC40B092E7F07A47D50D3A9</string>\n\t\t\t\t<string>2975A9E2355EF5EEF7D0AB8CFE231775</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXSourcesBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>9BB56AFA98D0E3E9F5EF527F6C622650</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>9E2BF271EF3695337D8D0D0D0C05CBEF</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>NJKWebViewProgress-prefix.pch</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A1DCD87F2C210B625448672C220131AC</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>B005BE0EC46301ED8CCFDE3E1C4A92A1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>A21D8D00852BA1953EEAED467FFCE955</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Link7~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Link7~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A2A9934A7E48EB557EADBFD949E2FB24</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>8A0271BAFC9A632953155DA1BF56ABB3</string>\n\t\t\t\t<string>67FA59F041ACB11DFC39C3EAA88044C6</string>\n\t\t\t\t<string>0DD91045976DDAD683B1C7CAD39F8AE5</string>\n\t\t\t\t<string>9E2BF271EF3695337D8D0D0D0C05CBEF</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Support Files</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Target Support Files/NJKWebViewProgress</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A4F6D097A9E1B249CEDFC4EE4D7A48A9</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>wrapper.framework</string>\n\t\t\t<key>name</key>\n\t\t\t<string>UIKit.framework</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/UIKit.framework</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>DEVELOPER_DIR</string>\n\t\t</dict>\n\t\t<key>A56984EF53584DC2C51242ED300294E8</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Dolphin7~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Dolphin7~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A5890604E32694489BFFC947FD365109</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>A70CDAD61F90AC503C7D04CC22DA2923</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_DYNAMIC_NO_PIC</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_OPTIMIZATION_LEVEL</key>\n\t\t\t\t<string>0</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>DEBUG=1</string>\n\t\t\t\t\t<string>$(inherited)</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>ONLY_ACTIVE_ARCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>A8DED044636DD0D714015E763AB37254</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>target</key>\n\t\t\t<string>5CC6C4056B04D092E49F6A43604045AF</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>5E6955AD34728605AE35F018EB73CB7A</string>\n\t\t</dict>\n\t\t<key>A92E7DC4AA2B7D01F6E02A3F6E67E100</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>67FA59F041ACB11DFC39C3EAA88044C6</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/NJKWebViewProgress/NJKWebViewProgress-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>AA3640DA259BAB271F6F37146DAFE207</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>9489FB90811ED6FABE3779A7F3540F94</string>\n\t\t\t\t<string>61C6A344AF6013905621E7A918AC3AA3</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>AB0275B1A20701F0FFB0578F2DEEEED3</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>toolbar_backward.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/toolbar_backward.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>AD54FC0B3CC40B092E7F07A47D50D3A9</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>0A95F74CB955C77DD2BDC6D29C5F3770</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>B005BE0EC46301ED8CCFDE3E1C4A92A1</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNPolyActivity.m</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Classes/DZNPolyActivity.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>BA6428E9F66FD5A23C0A2E06ED26CD2F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Podfile</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../Podfile</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>SOURCE_ROOT</string>\n\t\t\t<key>xcLanguageSpecificationIdentifier</key>\n\t\t\t<string>xcode.lang.ruby</string>\n\t\t</dict>\n\t\t<key>BD71D8C8365D72389F242C8CB5F9A1BB</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>UIScrollView+EmptyDataSet.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>BEF8748F405E35019DB7442C57ACCF32</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>toolbar_forward.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/toolbar_forward.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>BF59BC15D23E1E1912C8F334E7236813</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.plist.xml</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods-acknowledgements.plist</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C1B3908E1F4BEF1CBA685C3F81FA69A2</key>\n\t\t<dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXTargetDependency</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>target</key>\n\t\t\t<string>477F7AE04133753DEE38147EFB53937F</string>\n\t\t\t<key>targetProxy</key>\n\t\t\t<string>21CF14A60E42F519D8A245C74E080C05</string>\n\t\t</dict>\n\t\t<key>C3DDE1147A36EC3A56E23F90FA3E8F4F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>toolbar_forward@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/toolbar_forward@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C6397BB480ED559EC8C4D23E5609C595</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.h</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNPolyActivity.h</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Classes/DZNPolyActivity.h</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C863E3EA6C5F317637A9AB0441D80F38</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>text.xcconfig</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Pods.release.xcconfig</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>C9150457C17D5815F1D554D43C3D9E13</key>\n\t\t<dict>\n\t\t\t<key>explicitFileType</key>\n\t\t\t<string>archive.ar</string>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>path</key>\n\t\t\t<string>libDZNEmptyDataSet.a</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>BUILT_PRODUCTS_DIR</string>\n\t\t</dict>\n\t\t<key>CC9BE5817D3DF008561806689BAE0037</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>488BDE8C22466D3528798E30AE6B5402</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>CCA510CFBEA2D207524CDA0D73C3B561</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>C9150457C17D5815F1D554D43C3D9E13</string>\n\t\t\t\t<string>741F1CAE077A31AD9849213CA657545E</string>\n\t\t\t\t<string>6D4465D03AD96C0EA6C0156AD46CE253</string>\n\t\t\t\t<string>475E470C0987A8148EE64EE29EA4341F</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Products</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>CE0846A3D34851D399F971B79134E3A5</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>67FA59F041ACB11DFC39C3EAA88044C6</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/NJKWebViewProgress/NJKWebViewProgress-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>D0DB248CCEF8BC38702BB8F452FD5050</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>A4F6D097A9E1B249CEDFC4EE4D7A48A9</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>D0FB9306D21AF23A056944AE037CBFFF</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>488BDE8C22466D3528798E30AE6B5402</string>\n\t\t\t\t<string>A4F6D097A9E1B249CEDFC4EE4D7A48A9</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>iOS</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D2411A5FE7F7A004607BED49990C37F4</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>952EEBFAF8F7E620423C9F156F25A506</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Targets Support Files</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>D41D8CD98F00B204E9800998ECF8427E</key>\n\t\t<dict>\n\t\t\t<key>attributes</key>\n\t\t\t<dict>\n\t\t\t\t<key>LastSwiftUpdateCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t\t<key>LastUpgradeCheck</key>\n\t\t\t\t<string>0700</string>\n\t\t\t</dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>2D8E8EC45A3A1A1D94AE762CB5028504</string>\n\t\t\t<key>compatibilityVersion</key>\n\t\t\t<string>Xcode 3.2</string>\n\t\t\t<key>developmentRegion</key>\n\t\t\t<string>English</string>\n\t\t\t<key>hasScannedForEncodings</key>\n\t\t\t<string>0</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXProject</string>\n\t\t\t<key>knownRegions</key>\n\t\t\t<array>\n\t\t\t\t<string>en</string>\n\t\t\t</array>\n\t\t\t<key>mainGroup</key>\n\t\t\t<string>7DB346D0F39D3F0E887471402A8071AB</string>\n\t\t\t<key>productRefGroup</key>\n\t\t\t<string>CCA510CFBEA2D207524CDA0D73C3B561</string>\n\t\t\t<key>projectDirPath</key>\n\t\t\t<string></string>\n\t\t\t<key>projectReferences</key>\n\t\t\t<array/>\n\t\t\t<key>projectRoot</key>\n\t\t\t<string></string>\n\t\t\t<key>targets</key>\n\t\t\t<array>\n\t\t\t\t<string>FBC39E4CFD44CE42CBCB4C7D314F945A</string>\n\t\t\t\t<string>477F7AE04133753DEE38147EFB53937F</string>\n\t\t\t\t<string>5CC6C4056B04D092E49F6A43604045AF</string>\n\t\t\t\t<string>635E612DB8D14980C75972C0A9CAABAA</string>\n\t\t\t</array>\n\t\t</dict>\n\t\t<key>D78D847DA540289161D6FE2DECCDA3CE</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurations</key>\n\t\t\t<array>\n\t\t\t\t<string>321A4E6A83E343470840E18593A2C0F2</string>\n\t\t\t\t<string>59D8577F668C692FAB872D8FDC51C5DC</string>\n\t\t\t</array>\n\t\t\t<key>defaultConfigurationIsVisible</key>\n\t\t\t<string>0</string>\n\t\t\t<key>defaultConfigurationName</key>\n\t\t\t<string>Release</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCConfigurationList</string>\n\t\t</dict>\n\t\t<key>DE406E5C9C961184770C68FAD854F503</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>inpector-script.js</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Scripts/inpector-script.js</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E02D9C0B9F7B4E4330A75496C55268B3</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>2ABA9D4094A198868F811D99DF803232</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_PREFIX_HEADER</key>\n\t\t\t\t<string>Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>E16F060272BDCBB8427970FE55475812</key>\n\t\t<dict>\n\t\t\t<key>baseConfigurationReference</key>\n\t\t\t<string>1E6367EA7EE6EC92788A3035BED4D6DA</string>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ENABLE_STRICT_OBJC_MSGSEND</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>MTL_ENABLE_DEBUG_INFO</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>OTHER_LDFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>OTHER_LIBTOOLFLAGS</key>\n\t\t\t\t<string></string>\n\t\t\t\t<key>PODS_ROOT</key>\n\t\t\t\t<string>$(SRCROOT)</string>\n\t\t\t\t<key>PRODUCT_NAME</key>\n\t\t\t\t<string>$(TARGET_NAME)</string>\n\t\t\t\t<key>SDKROOT</key>\n\t\t\t\t<string>iphoneos</string>\n\t\t\t\t<key>SKIP_INSTALL</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Debug</string>\n\t\t</dict>\n\t\t<key>E2486259CE059E8504893500040A277A</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Dolphin7@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Dolphin7@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>E8BFF88494664E704CBCEE5CD03BD4CD</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Safari7@2x.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Safari7@2x.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>EA6C45AFB0BE2C0DBBD0F156AD3D6D14</key>\n\t\t<dict>\n\t\t\t<key>buildActionMask</key>\n\t\t\t<string>2147483647</string>\n\t\t\t<key>files</key>\n\t\t\t<array>\n\t\t\t\t<string>01D849F61E9CC095AA77BAE56F346986</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFrameworksBuildPhase</string>\n\t\t\t<key>runOnlyForDeploymentPostprocessing</key>\n\t\t\t<string>0</string>\n\t\t</dict>\n\t\t<key>EBC06BB5E21023F73D6F1CA0BE30E89F</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>69C6B5DB0D94FC77C75E778BAD64E79E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>EE281861B6DBC82D55D54DA87FCCFD9F</key>\n\t\t<dict>\n\t\t\t<key>containerPortal</key>\n\t\t\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXContainerItemProxy</string>\n\t\t\t<key>proxyType</key>\n\t\t\t<string>1</string>\n\t\t\t<key>remoteGlobalIDString</key>\n\t\t\t<string>5CC6C4056B04D092E49F6A43604045AF</string>\n\t\t\t<key>remoteInfo</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t</dict>\n\t\t<key>EF3209A99BF79C2BA0B40581A96AF81F</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Link7@2x~ipad.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Link7@2x~ipad.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>F5D3B1E4F40C2261682245A246C733D7</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>BD71D8C8365D72389F242C8CB5F9A1BB</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>F6977508B6D92B50BAB6F2EAFC125E29</key>\n\t\t<dict>\n\t\t\t<key>children</key>\n\t\t\t<array>\n\t\t\t\t<string>685CA950AA4A4E958900902DE3E24BB9</string>\n\t\t\t\t<string>1567880981488C1D179ADF6A1ECECAF9</string>\n\t\t\t</array>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXGroup</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>path</key>\n\t\t\t<string>../../..</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>F8CE190644F372AD96FF9A6C1B6030F1</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>C6397BB480ED559EC8C4D23E5609C595</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>FA28D880912CEEEEBD708B97F02C0DD1</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>lastKnownFileType</key>\n\t\t\t<string>sourcecode.c.objc</string>\n\t\t\t<key>path</key>\n\t\t\t<string>DZNEmptyDataSet-dummy.m</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t\t<key>FB45FFD90572718D82AB9092B750F0CA</key>\n\t\t<dict>\n\t\t\t<key>buildSettings</key>\n\t\t\t<dict>\n\t\t\t\t<key>ALWAYS_SEARCH_USER_PATHS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>CLANG_CXX_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu++0x</string>\n\t\t\t\t<key>CLANG_CXX_LIBRARY</key>\n\t\t\t\t<string>libc++</string>\n\t\t\t\t<key>CLANG_ENABLE_MODULES</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_ENABLE_OBJC_ARC</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_BOOL_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_CONSTANT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_EMPTY_BODY</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_ENUM_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_INT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_OBJC_ROOT_CLASS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN_UNREACHABLE_CODE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>COPY_PHASE_STRIP</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>ENABLE_NS_ASSERTIONS</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>GCC_C_LANGUAGE_STANDARD</key>\n\t\t\t\t<string>gnu99</string>\n\t\t\t\t<key>GCC_PREPROCESSOR_DEFINITIONS</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>RELEASE=1</string>\n\t\t\t\t</array>\n\t\t\t\t<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_ABOUT_RETURN_TYPE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNDECLARED_SELECTOR</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNINITIALIZED_AUTOS</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_FUNCTION</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>GCC_WARN_UNUSED_VARIABLE</key>\n\t\t\t\t<string>YES</string>\n\t\t\t\t<key>IPHONEOS_DEPLOYMENT_TARGET</key>\n\t\t\t\t<string>8.0</string>\n\t\t\t\t<key>STRIP_INSTALLED_PRODUCT</key>\n\t\t\t\t<string>NO</string>\n\t\t\t\t<key>SYMROOT</key>\n\t\t\t\t<string>${SRCROOT}/../build</string>\n\t\t\t\t<key>VALIDATE_PRODUCT</key>\n\t\t\t\t<string>YES</string>\n\t\t\t</dict>\n\t\t\t<key>isa</key>\n\t\t\t<string>XCBuildConfiguration</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Release</string>\n\t\t</dict>\n\t\t<key>FB912EEF8564E7EBB05F67DB96DD26C4</key>\n\t\t<dict>\n\t\t\t<key>fileRef</key>\n\t\t\t<string>FA28D880912CEEEEBD708B97F02C0DD1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXBuildFile</string>\n\t\t</dict>\n\t\t<key>FBC39E4CFD44CE42CBCB4C7D314F945A</key>\n\t\t<dict>\n\t\t\t<key>buildConfigurationList</key>\n\t\t\t<string>58D54D01C7C264E43DFF4DB7F808F173</string>\n\t\t\t<key>buildPhases</key>\n\t\t\t<array>\n\t\t\t\t<string>0E375E174055F581ED4CF6FA4E0C8790</string>\n\t\t\t\t<string>AA3640DA259BAB271F6F37146DAFE207</string>\n\t\t\t\t<string>928DC48E6B6A0AEF70BE5899C43C37C8</string>\n\t\t\t</array>\n\t\t\t<key>buildRules</key>\n\t\t\t<array/>\n\t\t\t<key>dependencies</key>\n\t\t\t<array/>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXNativeTarget</string>\n\t\t\t<key>name</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productName</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>productReference</key>\n\t\t\t<string>C9150457C17D5815F1D554D43C3D9E13</string>\n\t\t\t<key>productType</key>\n\t\t\t<string>com.apple.product-type.library.static</string>\n\t\t</dict>\n\t\t<key>FF1711ABD18CC794D4A8CC4688EE2ED5</key>\n\t\t<dict>\n\t\t\t<key>includeInIndex</key>\n\t\t\t<string>1</string>\n\t\t\t<key>isa</key>\n\t\t\t<string>PBXFileReference</string>\n\t\t\t<key>name</key>\n\t\t\t<string>Chrome7.png</string>\n\t\t\t<key>path</key>\n\t\t\t<string>Source/Resources/Chrome7.png</string>\n\t\t\t<key>sourceTree</key>\n\t\t\t<string>&lt;group&gt;</string>\n\t\t</dict>\n\t</dict>\n\t<key>rootObject</key>\n\t<string>D41D8CD98F00B204E9800998ECF8427E</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-Private.xcconfig",
    "content": "#include \"DZNEmptyDataSet.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_LDFLAGS = ${DZNEMPTYDATASET_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_DZNEmptyDataSet : NSObject\n@end\n@implementation PodsDummy_DZNEmptyDataSet\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNEmptyDataSet/DZNEmptyDataSet.xcconfig",
    "content": "DZNEMPTYDATASET_OTHER_LDFLAGS = -framework \"UIKit\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNWebViewController/DZNWebViewController-Private.xcconfig",
    "content": "#include \"DZNWebViewController.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_LDFLAGS = ${DZNWEBVIEWCONTROLLER_OTHER_LDFLAGS}\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNWebViewController/DZNWebViewController-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_DZNWebViewController : NSObject\n@end\n@implementation PodsDummy_DZNWebViewController\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNWebViewController/DZNWebViewController-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/DZNWebViewController/DZNWebViewController.xcconfig",
    "content": "DZNWEBVIEWCONTROLLER_OTHER_LDFLAGS = -framework \"UIKit\""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/NJKWebViewProgress/NJKWebViewProgress-Private.xcconfig",
    "content": "#include \"NJKWebViewProgress.xcconfig\"\nGCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = \"${PODS_ROOT}/Headers/Private\" \"${PODS_ROOT}/Headers/Private/NJKWebViewProgress\" \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nPODS_ROOT = ${SRCROOT}\nSKIP_INSTALL = YES"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/NJKWebViewProgress/NJKWebViewProgress-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_NJKWebViewProgress : NSObject\n@end\n@implementation PodsDummy_NJKWebViewProgress\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/NJKWebViewProgress/NJKWebViewProgress-prefix.pch",
    "content": "#ifdef __OBJC__\n#import <UIKit/UIKit.h>\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/NJKWebViewProgress/NJKWebViewProgress.xcconfig",
    "content": ""
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown",
    "content": "# Acknowledgements\nThis application makes use of the following third party libraries:\n\n## DZNEmptyDataSet\n\nThe MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n## DZNWebViewController\n\nThe MIT License (MIT)\n\nCopyright (c) 2014 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n## NJKWebViewProgress\n\nThe MIT License (MIT)\n\nCopyright (c) 2013 Satoshi Asano\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\nGenerated by CocoaPods - http://cocoapods.org\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods-acknowledgements.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreferenceSpecifiers</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>This application makes use of the following third party libraries:</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Acknowledgements</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>DZNEmptyDataSet</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2014 Ignacio Romero Zurbuchen, DZN Labs, iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>DZNWebViewController</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>The MIT License (MIT)\n\nCopyright (c) 2013 Satoshi Asano\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>NJKWebViewProgress</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>Generated by CocoaPods - http://cocoapods.org</string>\n\t\t\t<key>Title</key>\n\t\t\t<string></string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t</dict>\n\t</array>\n\t<key>StringsTable</key>\n\t<string>Acknowledgements</string>\n\t<key>Title</key>\n\t<string>Acknowledgements</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods-dummy.m",
    "content": "#import <Foundation/Foundation.h>\n@interface PodsDummy_Pods : NSObject\n@end\n@implementation PodsDummy_Pods\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods-resources.sh",
    "content": "#!/bin/sh\nset -e\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n\nRESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt\n> \"$RESOURCES_TO_COPY\"\n\nXCASSET_FILES=()\n\nrealpath() {\n  DIRECTORY=\"$(cd \"${1%/*}\" && pwd)\"\n  FILENAME=\"${1##*/}\"\n  echo \"$DIRECTORY/$FILENAME\"\n}\n\ninstall_resource()\n{\n  case $1 in\n    *.storyboard)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .storyboard`.storyboardc\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.xib)\n      echo \"ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}\"\n      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \\\"$1\\\" .xib`.nib\" \"${PODS_ROOT}/$1\" --sdk \"${SDKROOT}\"\n      ;;\n    *.framework)\n      echo \"mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      mkdir -p \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      echo \"rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      rsync -av \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n      ;;\n    *.xcdatamodel)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\"`.mom\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodel`.mom\"\n      ;;\n    *.xcdatamodeld)\n      echo \"xcrun momc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\\\"\"\n      xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcdatamodeld`.momd\"\n      ;;\n    *.xcmappingmodel)\n      echo \"xcrun mapc \\\"${PODS_ROOT}/$1\\\" \\\"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\\\"\"\n      xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xcmappingmodel`.cdm\"\n      ;;\n    *.xcassets)\n      ABSOLUTE_XCASSET_FILE=$(realpath \"${PODS_ROOT}/$1\")\n      XCASSET_FILES+=(\"$ABSOLUTE_XCASSET_FILE\")\n      ;;\n    /*)\n      echo \"$1\"\n      echo \"$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n    *)\n      echo \"${PODS_ROOT}/$1\"\n      echo \"${PODS_ROOT}/$1\" >> \"$RESOURCES_TO_COPY\"\n      ;;\n  esac\n}\nif [[ \"$CONFIGURATION\" == \"Debug\" ]]; then\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_backward.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_backward@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_forward.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_forward@2x.png\"\n  install_resource \"DZNWebViewController/Source/Scripts/inpector-script.js\"\nfi\nif [[ \"$CONFIGURATION\" == \"Release\" ]]; then\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Chrome7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Dolphin7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Link7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Opera7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7@2x~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/Safari7~ipad.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_backward.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_backward@2x.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_forward.png\"\n  install_resource \"DZNWebViewController/Source/Resources/toolbar_forward@2x.png\"\n  install_resource \"DZNWebViewController/Source/Scripts/inpector-script.js\"\nfi\n\nmkdir -p \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nrsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nif [[ \"${ACTION}\" == \"install\" ]]; then\n  mkdir -p \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\n  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from=\"$RESOURCES_TO_COPY\" / \"${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\nrm -f \"$RESOURCES_TO_COPY\"\n\nif [[ -n \"${WRAPPER_EXTENSION}\" ]] && [ \"`xcrun --find actool`\" ] && [ -n \"$XCASSET_FILES\" ]\nthen\n  case \"${TARGETED_DEVICE_FAMILY}\" in\n    1,2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad --target-device iphone\"\n      ;;\n    1)\n      TARGET_DEVICE_ARGS=\"--target-device iphone\"\n      ;;\n    2)\n      TARGET_DEVICE_ARGS=\"--target-device ipad\"\n      ;;\n    *)\n      TARGET_DEVICE_ARGS=\"--target-device mac\"\n      ;;\n  esac\n\n  # Find all other xcassets (this unfortunately includes those of path pods and other targets).\n  OTHER_XCASSETS=$(find \"$PWD\" -iname \"*.xcassets\" -type d)\n  while read line; do\n    if [[ $line != \"`realpath $PODS_ROOT`*\" ]]; then\n      XCASSET_FILES+=(\"$line\")\n    fi\n  done <<<\"$OTHER_XCASSETS\"\n\n  printf \"%s\\0\" \"${XCASSET_FILES[@]}\" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform \"${PLATFORM_NAME}\" --minimum-deployment-target \"${IPHONEOS_DEPLOYMENT_TARGET}\" ${TARGET_DEVICE_ARGS} --compress-pngs --compile \"${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}\"\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods.debug.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" -isystem \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" -isystem \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -l\"DZNWebViewController\" -l\"NJKWebViewProgress\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/Pods/Target Support Files/Pods/Pods.release.xcconfig",
    "content": "GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1\nHEADER_SEARCH_PATHS = $(inherited) \"${PODS_ROOT}/Headers/Public\" \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_CFLAGS = $(inherited) -isystem \"${PODS_ROOT}/Headers/Public\" -isystem \"${PODS_ROOT}/Headers/Public/DZNEmptyDataSet\" -isystem \"${PODS_ROOT}/Headers/Public/DZNWebViewController\" -isystem \"${PODS_ROOT}/Headers/Public/NJKWebViewProgress\"\nOTHER_LDFLAGS = $(inherited) -ObjC -l\"DZNEmptyDataSet\" -l\"DZNWebViewController\" -l\"NJKWebViewProgress\" -framework \"UIKit\"\nPODS_ROOT = ${SRCROOT}/Pods"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/AppDelegate.h",
    "content": "//\n//  AppDelegate.h\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface AppDelegate : UIResponder <UIApplicationDelegate>\n\n@property (strong, nonatomic) UIWindow *window;\n\n\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/AppDelegate.m",
    "content": "//\n//  AppDelegate.m\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import \"AppDelegate.h\"\n#import \"ViewController.h\"\n\n@interface AppDelegate ()\n@end\n\n@implementation AppDelegate\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];\n    self.window.backgroundColor = [UIColor whiteColor];\n    \n    self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:[ViewController new]];\n    [self.window  makeKeyAndVisible];\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/Images.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"29x29\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"29x29\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"40x40\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"40x40\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"60x60\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"60x60\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UILaunchStoryboardName</key>\n\t<string>Launch Screen</string>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/Launch Screen.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.XIB\" version=\"3.0\" toolsVersion=\"7706\" systemVersion=\"14F6a\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" launchScreen=\"YES\" useTraitCollections=\"YES\">\n    <dependencies>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"7703\"/>\n    </dependencies>\n    <objects>\n        <placeholder placeholderIdentifier=\"IBFilesOwner\" id=\"-1\" userLabel=\"File's Owner\"/>\n        <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"-2\" customClass=\"UIResponder\"/>\n        <view contentMode=\"scaleToFill\" id=\"iN0-l3-epB\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"480\" height=\"480\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n            <nil key=\"simulatedStatusBarMetrics\"/>\n            <freeformSimulatedSizeMetrics key=\"simulatedDestinationMetrics\"/>\n            <point key=\"canvasLocation\" x=\"404\" y=\"445\"/>\n        </view>\n    </objects>\n</document>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/ViewController.h",
    "content": "//\n//  ViewController.h\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@interface ViewController : UIViewController\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/ViewController.m",
    "content": "//\n//  ViewController.m\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import \"ViewController.h\"\n#import \"WebViewController.h\"\n\n@interface ViewController ()\n@end\n\n@implementation ViewController\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];\n    [button setTitle:@\"Show WebBrowser\" forState:UIControlStateNormal];\n    [button addTarget:self action:@selector(showWebBrowser:) forControlEvents:UIControlEventTouchUpInside];\n    [button sizeToFit];\n    \n    [self.view addSubview:button];\n    \n    button.center = self.view.center;\n}\n\n- (IBAction)showWebBrowser:(id)sender\n{\n    WebViewController *webViewController = [[WebViewController alloc] initWithURL:[NSURL URLWithString:@\"https://www\"]];\n    [self.navigationController pushViewController:webViewController animated:YES];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/WebViewController.h",
    "content": "//\n//  WebViewController.h\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import \"DZNWebViewController.h\"\n\n@interface WebViewController : DZNWebViewController\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/WebViewController.m",
    "content": "//\n//  WebViewController.m\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import \"WebViewController.h\"\n\n#import \"UIScrollView+EmptyDataSet.h\"\n\n@interface WebViewController () <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n@property (nonatomic, getter=didFailLoading) BOOL failedLoading;\n@end\n\n@implementation WebViewController\n\n\n#pragma mark - View lifecycle\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.webView.scrollView.emptyDataSetSource = self;\n    self.webView.scrollView.emptyDataSetDelegate = self;\n}\n\n- (void)viewWillAppear:(BOOL)animated\n{\n    [super viewWillAppear:animated];\n}\n\n- (void)viewDidAppear:(BOOL)animated\n{\n    [super viewDidAppear:animated];\n}\n\n- (void)viewWillDisappear:(BOOL)animated\n{\n    [super viewWillDisappear:animated];\n}\n\n- (void)viewDidDisappear:(BOOL)animated\n{\n    [super viewDidDisappear:animated];\n}\n\n\n#pragma mark - DZNEmptyDataSetSource\n\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    if (self.webView.isLoading || !self.didFailLoading) {\n        return nil;\n    }\n    \n    NSString *text = @\"Safari cannot open the page because your iPhone is not connected to the Internet.\";\n    UIColor *textColor = [UIColor colorWithRed:125/255.0 green:127/255.0 blue:127/255.0 alpha:1.0];\n    \n    NSMutableDictionary *attributes = [NSMutableDictionary new];\n    \n    NSMutableParagraphStyle *paragraph = [NSMutableParagraphStyle new];\n    paragraph.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraph.alignment = NSTextAlignmentCenter;\n    paragraph.lineSpacing = 2.0;\n    \n    [attributes setObject:textColor forKey:NSForegroundColorAttributeName];\n    [attributes setObject:paragraph forKey:NSParagraphStyleAttributeName];\n    \n    return [[NSMutableAttributedString alloc] initWithString:text attributes:attributes];\n}\n\n#pragma mark - DZNEmptyDataSetDelegate\n\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n\n\n#pragma mark - UIWebViewDelegate methods\n\n- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType\n{\n    self.failedLoading = NO;\n    \n    return YES;\n}\n\n- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error\n{\n    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;\n    \n    self.failedLoading = YES;\n    \n    [self.webView.scrollView reloadEmptyDataSet];\n}\n\n\n#pragma mark - View Auto-Rotation\n\n- (UIInterfaceOrientationMask)supportedInterfaceOrientations\n{\n    return UIInterfaceOrientationMaskAll;\n}\n\n- (BOOL)shouldAutorotate\n{\n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser/main.m",
    "content": "//\n//  main.m\n//  WebBrowser\n//\n//  Created by Ignacio Romero Z. on 7/21/15.\n//  Copyright (c) 2015 DZN Labs. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import \"AppDelegate.h\"\n\nint main(int argc, char * argv[]) {\n    @autoreleasepool {\n        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t4F6E68461B5EA3A800986BC6 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F6E68451B5EA3A800986BC6 /* main.m */; };\n\t\t4F6E68491B5EA3A800986BC6 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F6E68481B5EA3A800986BC6 /* AppDelegate.m */; };\n\t\t4F6E68511B5EA3A800986BC6 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4F6E68501B5EA3A800986BC6 /* Images.xcassets */; };\n\t\t4F6E686E1B5EA53500986BC6 /* WebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F6E686D1B5EA53500986BC6 /* WebViewController.m */; };\n\t\t4F6E68701B5EA97700986BC6 /* Launch Screen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4F6E686F1B5EA97700986BC6 /* Launch Screen.xib */; };\n\t\t4F6E68731B5EAE7A00986BC6 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4F6E68721B5EAE7A00986BC6 /* ViewController.m */; };\n\t\tF6E1962583FABDF06543D258 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EBFBBB824ED40725AF3D1879 /* libPods.a */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t4335584D7B6AFF844D9D2009 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.release.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t4A7E7A7C10500E6036A9F47F /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = \"Pods/Target Support Files/Pods/Pods.debug.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t4F6E68401B5EA3A800986BC6 /* WebBrowser.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WebBrowser.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t4F6E68441B5EA3A800986BC6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t4F6E68451B5EA3A800986BC6 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t4F6E68471B5EA3A800986BC6 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\t4F6E68481B5EA3A800986BC6 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = \"<group>\"; };\n\t\t4F6E68501B5EA3A800986BC6 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = \"<group>\"; };\n\t\t4F6E686C1B5EA53500986BC6 /* WebViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewController.h; sourceTree = \"<group>\"; };\n\t\t4F6E686D1B5EA53500986BC6 /* WebViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewController.m; sourceTree = \"<group>\"; };\n\t\t4F6E686F1B5EA97700986BC6 /* Launch Screen.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = \"Launch Screen.xib\"; sourceTree = \"<group>\"; };\n\t\t4F6E68711B5EAE7A00986BC6 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = \"<group>\"; };\n\t\t4F6E68721B5EAE7A00986BC6 /* ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = \"<group>\"; };\n\t\tEBFBBB824ED40725AF3D1879 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t4F6E683D1B5EA3A800986BC6 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF6E1962583FABDF06543D258 /* libPods.a in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t48EBD9D2092AA7E855678068 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEBFBBB824ED40725AF3D1879 /* libPods.a */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F6E68371B5EA3A800986BC6 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F6E68421B5EA3A800986BC6 /* WebBrowser */,\n\t\t\t\t4F6E68411B5EA3A800986BC6 /* Products */,\n\t\t\t\t973D12E210BF39F55F26738E /* Pods */,\n\t\t\t\t48EBD9D2092AA7E855678068 /* Frameworks */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F6E68411B5EA3A800986BC6 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F6E68401B5EA3A800986BC6 /* WebBrowser.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F6E68421B5EA3A800986BC6 /* WebBrowser */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F6E68471B5EA3A800986BC6 /* AppDelegate.h */,\n\t\t\t\t4F6E68481B5EA3A800986BC6 /* AppDelegate.m */,\n\t\t\t\t4F6E68711B5EAE7A00986BC6 /* ViewController.h */,\n\t\t\t\t4F6E68721B5EAE7A00986BC6 /* ViewController.m */,\n\t\t\t\t4F6E686C1B5EA53500986BC6 /* WebViewController.h */,\n\t\t\t\t4F6E686D1B5EA53500986BC6 /* WebViewController.m */,\n\t\t\t\t4F6E68501B5EA3A800986BC6 /* Images.xcassets */,\n\t\t\t\t4F6E68431B5EA3A800986BC6 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = WebBrowser;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t4F6E68431B5EA3A800986BC6 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4F6E68441B5EA3A800986BC6 /* Info.plist */,\n\t\t\t\t4F6E68451B5EA3A800986BC6 /* main.m */,\n\t\t\t\t4F6E686F1B5EA97700986BC6 /* Launch Screen.xib */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t973D12E210BF39F55F26738E /* Pods */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t4A7E7A7C10500E6036A9F47F /* Pods.debug.xcconfig */,\n\t\t\t\t4335584D7B6AFF844D9D2009 /* Pods.release.xcconfig */,\n\t\t\t);\n\t\t\tname = Pods;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t4F6E683F1B5EA3A800986BC6 /* WebBrowser */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 4F6E68631B5EA3A800986BC6 /* Build configuration list for PBXNativeTarget \"WebBrowser\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t06B64B20CEDCFA4CBEAFDBEB /* Check Pods Manifest.lock */,\n\t\t\t\t4F6E683C1B5EA3A800986BC6 /* Sources */,\n\t\t\t\t4F6E683D1B5EA3A800986BC6 /* Frameworks */,\n\t\t\t\t4F6E683E1B5EA3A800986BC6 /* Resources */,\n\t\t\t\tEBDF195E5478E573603CE34E /* Copy Pods Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = WebBrowser;\n\t\t\tproductName = WebBrowser;\n\t\t\tproductReference = 4F6E68401B5EA3A800986BC6 /* WebBrowser.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t4F6E68381B5EA3A800986BC6 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0730;\n\t\t\t\tORGANIZATIONNAME = \"DZN Labs\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t4F6E683F1B5EA3A800986BC6 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 4F6E683B1B5EA3A800986BC6 /* Build configuration list for PBXProject \"WebBrowser\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tBase,\n\t\t\t);\n\t\t\tmainGroup = 4F6E68371B5EA3A800986BC6;\n\t\t\tproductRefGroup = 4F6E68411B5EA3A800986BC6 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t4F6E683F1B5EA3A800986BC6 /* WebBrowser */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t4F6E683E1B5EA3A800986BC6 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F6E68511B5EA3A800986BC6 /* Images.xcassets in Resources */,\n\t\t\t\t4F6E68701B5EA97700986BC6 /* Launch Screen.xib in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t06B64B20CEDCFA4CBEAFDBEB /* Check Pods Manifest.lock */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Check Pods Manifest.lock\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"diff \\\"${PODS_ROOT}/../Podfile.lock\\\" \\\"${PODS_ROOT}/Manifest.lock\\\" > /dev/null\\nif [[ $? != 0 ]] ; then\\n    cat << EOM\\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\\nEOM\\n    exit 1\\nfi\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n\t\tEBDF195E5478E573603CE34E /* Copy Pods Resources */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Copy Pods Resources\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"\\\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\\\"\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t4F6E683C1B5EA3A800986BC6 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t4F6E68491B5EA3A800986BC6 /* AppDelegate.m in Sources */,\n\t\t\t\t4F6E68461B5EA3A800986BC6 /* main.m in Sources */,\n\t\t\t\t4F6E68731B5EAE7A00986BC6 /* ViewController.m in Sources */,\n\t\t\t\t4F6E686E1B5EA53500986BC6 /* WebViewController.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\t4F6E68611B5EA3A800986BC6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F6E68621B5EA3A800986BC6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t4F6E68641B5EA3A800986BC6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 4A7E7A7C10500E6036A9F47F /* Pods.debug.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tINFOPLIST_FILE = WebBrowser/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t4F6E68651B5EA3A800986BC6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 4335584D7B6AFF844D9D2009 /* Pods.release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tINFOPLIST_FILE = WebBrowser/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.dzn.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t4F6E683B1B5EA3A800986BC6 /* Build configuration list for PBXProject \"WebBrowser\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F6E68611B5EA3A800986BC6 /* Debug */,\n\t\t\t\t4F6E68621B5EA3A800986BC6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t4F6E68631B5EA3A800986BC6 /* Build configuration list for PBXNativeTarget \"WebBrowser\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t4F6E68641B5EA3A800986BC6 /* Debug */,\n\t\t\t\t4F6E68651B5EA3A800986BC6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 4F6E68381B5EA3A800986BC6 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:WebBrowser.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Examples/WebBrowser/WebBrowser.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:WebBrowser.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Pods/Pods.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Framework/DZNEmptyDataSet/DZNEmptyDataSet.h",
    "content": "#import <UIKit/UIKit.h>\n\n//! Project version number for DZNEmptyDataSet.\nFOUNDATION_EXPORT double DZNEmptyDataSetVersionNumber;\n\n//! Project version string for DZNEmptyDataSet.\nFOUNDATION_EXPORT const unsigned char DZNEmptyDataSetVersionString[];\n\n// In this header, you should import all the public headers of your framework using statements like #import <DZNEmptyDataSet/PublicHeader.h>\n\n#import <DZNEmptyDataSet/UIScrollView+EmptyDataSet.h>\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Framework/DZNEmptyDataSet/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.wavio.$(PRODUCT_NAME:rfc1034identifier)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Framework/DZNEmptyDataSet.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t42F9D98C1B4D9F6300E307F2 /* DZNEmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 42F9D98B1B4D9F6300E307F2 /* DZNEmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t42F9D9A41B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 42F9D9A21B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t42F9D9A51B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 42F9D9A31B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t42F9D9861B4D9F6300E307F2 /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DZNEmptyDataSet.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t42F9D98A1B4D9F6300E307F2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t42F9D98B1B4D9F6300E307F2 /* DZNEmptyDataSet.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DZNEmptyDataSet.h; sourceTree = \"<group>\"; };\n\t\t42F9D9A21B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"UIScrollView+EmptyDataSet.h\"; path = \"../../Source/UIScrollView+EmptyDataSet.h\"; sourceTree = \"<group>\"; };\n\t\t42F9D9A31B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"UIScrollView+EmptyDataSet.m\"; path = \"../../Source/UIScrollView+EmptyDataSet.m\"; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t42F9D9821B4D9F6300E307F2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t42F9D97C1B4D9F6300E307F2 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t42F9D9881B4D9F6300E307F2 /* DZNEmptyDataSet */,\n\t\t\t\t42F9D9871B4D9F6300E307F2 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t42F9D9871B4D9F6300E307F2 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t42F9D9861B4D9F6300E307F2 /* DZNEmptyDataSet.framework */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t42F9D9881B4D9F6300E307F2 /* DZNEmptyDataSet */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t42F9D98B1B4D9F6300E307F2 /* DZNEmptyDataSet.h */,\n\t\t\t\t42F9D9A21B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.h */,\n\t\t\t\t42F9D9A31B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.m */,\n\t\t\t\t42F9D9891B4D9F6300E307F2 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = DZNEmptyDataSet;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t42F9D9891B4D9F6300E307F2 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t42F9D98A1B4D9F6300E307F2 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t42F9D9831B4D9F6300E307F2 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t42F9D98C1B4D9F6300E307F2 /* DZNEmptyDataSet.h in Headers */,\n\t\t\t\t42F9D9A41B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t42F9D9851B4D9F6300E307F2 /* DZNEmptyDataSet */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 42F9D99C1B4D9F6300E307F2 /* Build configuration list for PBXNativeTarget \"DZNEmptyDataSet\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t42F9D9811B4D9F6300E307F2 /* Sources */,\n\t\t\t\t42F9D9821B4D9F6300E307F2 /* Frameworks */,\n\t\t\t\t42F9D9831B4D9F6300E307F2 /* Headers */,\n\t\t\t\t42F9D9841B4D9F6300E307F2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = DZNEmptyDataSet;\n\t\t\tproductName = DZNEmptyDataSet;\n\t\t\tproductReference = 42F9D9861B4D9F6300E307F2 /* DZNEmptyDataSet.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t42F9D97D1B4D9F6300E307F2 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0640;\n\t\t\t\tORGANIZATIONNAME = \"Marvin Nazari\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t42F9D9851B4D9F6300E307F2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 42F9D9801B4D9F6300E307F2 /* Build configuration list for PBXProject \"DZNEmptyDataSet\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 42F9D97C1B4D9F6300E307F2;\n\t\t\tproductRefGroup = 42F9D9871B4D9F6300E307F2 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t42F9D9851B4D9F6300E307F2 /* DZNEmptyDataSet */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t42F9D9841B4D9F6300E307F2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t42F9D9811B4D9F6300E307F2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t42F9D9A51B4D9F9700E307F2 /* UIScrollView+EmptyDataSet.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\t42F9D99A1B4D9F6300E307F2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t42F9D99B1B4D9F6300E307F2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t42F9D99D1B4D9F6300E307F2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = DZNEmptyDataSet/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t42F9D99E1B4D9F6300E307F2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = DZNEmptyDataSet/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t42F9D9801B4D9F6300E307F2 /* Build configuration list for PBXProject \"DZNEmptyDataSet\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t42F9D99A1B4D9F6300E307F2 /* Debug */,\n\t\t\t\t42F9D99B1B4D9F6300E307F2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t42F9D99C1B4D9F6300E307F2 /* Build configuration list for PBXNativeTarget \"DZNEmptyDataSet\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t42F9D99D1B4D9F6300E307F2 /* Debug */,\n\t\t\t\t42F9D99E1B4D9F6300E307F2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 42F9D97D1B4D9F6300E307F2 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Framework/DZNEmptyDataSet.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:DZNEmptyDataSet.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Framework/DZNEmptyDataSet.xcodeproj/xcshareddata/xcschemes/DZNEmptyDataSet.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0640\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"42F9D9851B4D9F6300E307F2\"\n               BuildableName = \"DZNEmptyDataSet.framework\"\n               BlueprintName = \"DZNEmptyDataSet\"\n               ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"42F9D9901B4D9F6300E307F2\"\n               BuildableName = \"DZNEmptyDataSetTests.xctest\"\n               BlueprintName = \"DZNEmptyDataSetTests\"\n               ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"42F9D9901B4D9F6300E307F2\"\n               BuildableName = \"DZNEmptyDataSetTests.xctest\"\n               BlueprintName = \"DZNEmptyDataSetTests\"\n               ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"42F9D9851B4D9F6300E307F2\"\n            BuildableName = \"DZNEmptyDataSet.framework\"\n            BlueprintName = \"DZNEmptyDataSet\"\n            ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"42F9D9851B4D9F6300E307F2\"\n            BuildableName = \"DZNEmptyDataSet.framework\"\n            BlueprintName = \"DZNEmptyDataSet\"\n            ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"42F9D9851B4D9F6300E307F2\"\n            BuildableName = \"DZNEmptyDataSet.framework\"\n            BlueprintName = \"DZNEmptyDataSet\"\n            ReferencedContainer = \"container:DZNEmptyDataSet.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/README.md",
    "content": "DZNEmptyDataSet\n=================\n\n[![Pod Version](http://img.shields.io/cocoapods/v/DZNEmptyDataSet.svg)](http://cocoadocs.org/docsets/DZNEmptyDataSet/)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![License](http://img.shields.io/badge/license-MIT-blue.svg)](http://opensource.org/licenses/MIT)\n\n### Projects using this library\n\n[Add your project to the list here](https://github.com/dzenbot/DZNEmptyDataSet/wiki/Projects-using-DZNEmptyDataSet) and provide a (320px wide) render of the result.\n\n\n### The Empty Data Set Pattern\nAlso known as *[Empty State](http://emptystat.es/)* or *[Blank Slate](http://patternry.com/p=blank-slate/)*.\n\nMost applications show lists of content (data sets), which many turn out to be empty at one point, specially for new users with blank accounts. Empty screens create confusion by not being clear about what's going on, if there is an error/bug or if the user is supposed to do something within your app to be able to consume the content.\n\nPlease read this very interesting article about [*Designing For The Empty States*](http://tympanus.net/codrops/2013/01/09/designing-for-the-empty-states/).\n\n![Screenshots_Row1](https://raw.githubusercontent.com/dzenbot/UITableView-DataSet/master/Examples/Applications/Screenshots/Screenshots_row1.png)\n![Screenshots_Row2](https://raw.githubusercontent.com/dzenbot/UITableView-DataSet/master/Examples/Applications/Screenshots/Screenshots_row2.png)\n(*These are real life examples, available in the 'Applications' sample project*)\n\n**[Empty Data Sets](http://pttrns.com/?did=1&scid=30)** are helpful for:\n* Avoiding white-screens and communicating to your users why the screen is empty.\n* Calling to action (particularly as an onboarding process).\n* Avoiding other interruptive mechanisms like showing error alerts.\n* Being consistent and improving the user experience.\n* Delivering a brand presence.\n\n\n### Features\n* Compatible with UITableView and UICollectionView. Also compatible with UISearchDisplayController and UIScrollView.\n* Gives multiple possibilities of layout and appearance, by showing an image and/or title label and/or description label and/or button.\n* Uses NSAttributedString for easier appearance customisation.\n* Uses auto-layout to automagically center the content to the tableview, with auto-rotation support. Also accepts custom vertical and horizontal alignment.\n* Background color customisation.\n* Allows tap gesture on the whole tableview rectangle (useful for resigning first responder or similar actions).\n* For more advanced customisation, it allows a custom view.\n* Compatible with Storyboard.\n* Compatible with iOS 6 or later.\n* Compatible with iPhone and iPad.\n* **App Store ready**\n\nThis library has been designed in a way where you won't need to extend UITableView or UICollectionView class. It will still work when using UITableViewController or UICollectionViewController.\nBy just conforming to DZNEmptyDataSetSource & DZNEmptyDataSetDelegate, you will be able to fully customize the content and appearance of the empty states for your application.\n\n\n## Installation\n\nAvailable in [CocoaPods](http://cocoapods.org/?q=DZNEmptyDataSet)\n```ruby\npod 'DZNEmptyDataSet'\n```\n\nTo integrate DZNEmptyDataSet into your Xcode project using Carthage, specify it in your `Cartfile`:\n\n```ruby\ngithub \"dzenbot/DZNEmptyDataSet\"\n```\n\n\n## How to use\nFor complete documentation, [visit CocoaPods' auto-generated doc](http://cocoadocs.org/docsets/DZNEmptyDataSet/)\n\n### Import\n```objc\n#import \"UIScrollView+EmptyDataSet.h\"\n```\nUnless you are importing as a framework, then do:\n```objc\n#import \"<DZNEmptyDataSet/UIScrollView+EmptyDataSet.h>\"\n```\n\n### Protocol Conformance\nConform to datasource and/or delegate.\n```objc\n@interface MainViewController : UITableViewController <DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n\n    self.tableView.emptyDataSetSource = self;\n    self.tableView.emptyDataSetDelegate = self;\n    \n    // A little trick for removing the cell separators\n    self.tableView.tableFooterView = [UIView new];\n}\n```\n\n### Data Source Implementation\nReturn the content you want to show on the empty state, and take advantage of NSAttributedString features to customise the text appearance.\n\nThe image for the empty state:\n```objc\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIImage imageNamed:@\"empty_placeholder\"];\n}\n```\n\nThe image view animation\n```objc\n- (CAAnimation *)imageAnimationForEmptyDataSet:(UIScrollView *)scrollView\n{\n    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath: @\"transform\"];\n    \n    animation.fromValue = [NSValue valueWithCATransform3D:CATransform3DIdentity];\n    animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI_2, 0.0, 0.0, 1.0)];\n    \n    animation.duration = 0.25;\n    animation.cumulative = YES;\n    animation.repeatCount = MAXFLOAT;\n    \n    return animation;\n}\n```\n\nThe attributed string for the title of the empty state:\n```objc\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"Please Allow Photo Access\";\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:18.0f],\n                                 NSForegroundColorAttributeName: [UIColor darkGrayColor]};\n    \n    return [[NSAttributedString alloc] initWithString:text attributes:attributes];\n}\n```\n\nThe attributed string for the description of the empty state:\n```objc\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView\n{\n    NSString *text = @\"This allows you to share photos from your library and save photos to your camera roll.\";\n    \n    NSMutableParagraphStyle *paragraph = [NSMutableParagraphStyle new];\n    paragraph.lineBreakMode = NSLineBreakByWordWrapping;\n    paragraph.alignment = NSTextAlignmentCenter;\n    \n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:14.0f],\n                                 NSForegroundColorAttributeName: [UIColor lightGrayColor],\n                                 NSParagraphStyleAttributeName: paragraph};\n                                 \n    return [[NSAttributedString alloc] initWithString:text attributes:attributes];                      \n}\n```\n\nThe attributed string to be used for the specified button state:\n```objc\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldSystemFontOfSize:17.0f]};\n\n    return [[NSAttributedString alloc] initWithString:@\"Continue\" attributes:attributes];\n}\n```\n\nor the image to be used for the specified button state:\n```objc\n- (UIImage *)buttonImageForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state\n{\n    return [UIImage imageNamed:@\"button_image\"];\n}\n```\n\nThe background color for the empty state:\n```objc\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return [UIColor whiteColor];\n}\n```\n\nIf you need a more complex layout, you can return a custom view instead:\n```objc\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView\n{\n    UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];\n    [activityView startAnimating];\n    return activityView;\n}\n```\n\nAdditionally, you can also adjust the vertical alignment of the content view (ie: useful when there is tableHeaderView visible):\n```objc\n- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return -self.tableView.tableHeaderView.frame.size.height/2.0f;\n}\n```\n\nFinally, you can separate components from each other (default separation is 11 pts):\n```objc\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView\n{\n    return 20.0f;\n}\n```\n\n\n### Delegate Implementation\nReturn the behaviours you would expect from the empty states, and receive the user events.\n\nAsks to know if the empty state should be rendered and displayed (Default is YES) :\n```objc\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView\n{\n    return YES;\n}\n```\n\nAsks for interaction permission (Default is YES) :\n```objc\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView\n{\n    return YES;\n}\n```\n\nAsks for scrolling permission (Default is NO) :\n```objc\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView\n{\n    return YES;\n}\n```\n\nAsks for image view animation permission (Default is NO) :\n```objc\n- (BOOL) emptyDataSetShouldAllowImageViewAnimate:(UIScrollView *)scrollView\n{\n    return YES;\n}\n```\n\nNotifies when the dataset view was tapped:\n```objc\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view\n{\n    // Do something\n}\n```\n\nNotifies when the data set call to action button was tapped:\n```objc\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button\n{\n    // Do something\n}\n```\n\n### Refresh layout\nIf you need to refresh the empty state layout, simply call:\n\n```objc\n[self.tableView reloadData];\n```\nor\n```objc\n[self.collectionView reloadData];\n```\ndepending of which you are using.\n\n### Force layout update\nYou can also call `[self.tableView reloadEmptyDataSet]` to invalidate the current empty state layout and trigger a layout update, bypassing `-reloadData`. This might be useful if you have a lot of logic on your data source that you want to avoid calling, when not needed. `[self.scrollView reloadEmptyDataSet]` is the only way to refresh content when using with UIScrollView.\n\n\n## Sample projects\n\n#### Applications\nThis project replicates several popular application's empty states (~20) with their exact content and appearance, such as Airbnb, Dropbox, Facebook, Foursquare, and many others. See how easy and flexible it is to customize the appearance of your empty states. You can also use this project as a playground to test things.\n\n#### Countries\nThis project shows a list of the world countries loaded from CoreData. It uses NSFecthedResultController for filtering search. When searching and no content is matched, a simple empty state is shown. See how to interact between the UITableViewDataSource and the DZNEmptyDataSetSource protocols, while using a typical CoreData stack.\n\n#### Colors\nThis project is a simple example of how this library also works with UICollectionView and UISearchDisplayController, while using Storyboards.\n\n\n## Collaboration\nFeel free to collaborate with ideas, issues and/or pull requests.\n\n\n## License\n(The MIT License)\n\nCopyright (c) 2016 Ignacio Romero Zurbuchen iromero@dzen.cl\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Source/UIScrollView+EmptyDataSet.h",
    "content": "//\n//  UIScrollView+EmptyDataSet.h\n//  DZNEmptyDataSet\n//  https://github.com/dzenbot/DZNEmptyDataSet\n//\n//  Created by Ignacio Romero Zurbuchen on 6/20/14.\n//  Copyright (c) 2016 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import <UIKit/UIKit.h>\n\n@protocol DZNEmptyDataSetSource;\n@protocol DZNEmptyDataSetDelegate;\n\n#define DZNEmptyDataSetDeprecated(instead) DEPRECATED_MSG_ATTRIBUTE(\" Use \" # instead \" instead\")\n\n/**\n A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.\n @discussion It will work automatically, by just conforming to DZNEmptyDataSetSource, and returning the data you want to show.\n */\n@interface UIScrollView (EmptyDataSet)\n\n/** The empty datasets data source. */\n@property (nonatomic, weak) IBOutlet id <DZNEmptyDataSetSource> emptyDataSetSource;\n/** The empty datasets delegate. */\n@property (nonatomic, weak) IBOutlet id <DZNEmptyDataSetDelegate> emptyDataSetDelegate;\n/** YES if any empty dataset is visible. */\n@property (nonatomic, readonly, getter = isEmptyDataSetVisible) BOOL emptyDataSetVisible;\n\n/**\n Reloads the empty dataset content receiver.\n @discussion Call this method to force all the data to refresh. Calling -reloadData is similar, but this forces only the empty dataset to reload, not the entire table view or collection view.\n */\n- (void)reloadEmptyDataSet;\n\n@end\n\n\n/**\n The object that acts as the data source of the empty datasets.\n @discussion The data source must adopt the DZNEmptyDataSetSource protocol. The data source is not retained. All data source methods are optional.\n */\n@protocol DZNEmptyDataSetSource <NSObject>\n@optional\n\n/**\n Asks the data source for the title of the dataset.\n The dataset uses a fixed font style by default, if no attributes are set. If you want a different font style, return a attributed string.\n \n @param scrollView A scrollView subclass informing the data source.\n @return An attributed string for the dataset title, combining font, text color, text pararaph style, etc.\n */\n- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n Asks the data source for the description of the dataset.\n The dataset uses a fixed font style by default, if no attributes are set. If you want a different font style, return a attributed string.\n \n @param scrollView A scrollView subclass informing the data source.\n @return An attributed string for the dataset description text, combining font, text color, text pararaph style, etc.\n */\n- (NSAttributedString *)descriptionForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n Asks the data source for the image of the dataset.\n \n @param scrollView A scrollView subclass informing the data source.\n @return An image for the dataset.\n */\n- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView;\n\n\n/**\n Asks the data source for a tint color of the image dataset. Default is nil.\n \n @param scrollView A scrollView subclass object informing the data source.\n @return A color to tint the image of the dataset.\n */\n- (UIColor *)imageTintColorForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n *  Asks the data source for the image animation of the dataset.\n *\n *  @param scrollView A scrollView subclass object informing the delegate.\n *\n *  @return image animation\n */\n- (CAAnimation *) imageAnimationForEmptyDataSet:(UIScrollView *) scrollView;\n\n/**\n Asks the data source for the title to be used for the specified button state.\n The dataset uses a fixed font style by default, if no attributes are set. If you want a different font style, return a attributed string.\n \n @param scrollView A scrollView subclass object informing the data source.\n @param state The state that uses the specified title. The possible values are described in UIControlState.\n @return An attributed string for the dataset button title, combining font, text color, text pararaph style, etc.\n */\n- (NSAttributedString *)buttonTitleForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state;\n\n/**\n Asks the data source for the image to be used for the specified button state.\n This method will override buttonTitleForEmptyDataSet:forState: and present the image only without any text.\n \n @param scrollView A scrollView subclass object informing the data source.\n @param state The state that uses the specified title. The possible values are described in UIControlState.\n @return An image for the dataset button imageview.\n */\n- (UIImage *)buttonImageForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state;\n\n/**\n Asks the data source for a background image to be used for the specified button state.\n There is no default style for this call.\n \n @param scrollView A scrollView subclass informing the data source.\n @param state The state that uses the specified image. The values are described in UIControlState.\n @return An attributed string for the dataset button title, combining font, text color, text pararaph style, etc.\n */\n- (UIImage *)buttonBackgroundImageForEmptyDataSet:(UIScrollView *)scrollView forState:(UIControlState)state;\n\n/**\n Asks the data source for the background color of the dataset. Default is clear color.\n \n @param scrollView A scrollView subclass object informing the data source.\n @return A color to be applied to the dataset background view.\n */\n- (UIColor *)backgroundColorForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n Asks the data source for a custom view to be displayed instead of the default views such as labels, imageview and button. Default is nil.\n Use this method to show an activity view indicator for loading feedback, or for complete custom empty data set.\n Returning a custom view will ignore -offsetForEmptyDataSet and -spaceHeightForEmptyDataSet configurations.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return The custom view.\n */\n- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n Asks the data source for a offset for vertical and horizontal alignment of the content. Default is CGPointZero.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return The offset for vertical and horizontal alignment.\n */\n- (CGPoint)offsetForEmptyDataSet:(UIScrollView *)scrollView DZNEmptyDataSetDeprecated(-verticalOffsetForEmptyDataSet:);\n- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView;\n\n/**\n Asks the data source for a vertical space between elements. Default is 11 pts.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return The space height between elements.\n */\n- (CGFloat)spaceHeightForEmptyDataSet:(UIScrollView *)scrollView;\n\n@end\n\n\n/**\n The object that acts as the delegate of the empty datasets.\n @discussion The delegate can adopt the DZNEmptyDataSetDelegate protocol. The delegate is not retained. All delegate methods are optional.\n \n @discussion All delegate methods are optional. Use this delegate for receiving action callbacks.\n */\n@protocol DZNEmptyDataSetDelegate <NSObject>\n@optional\n\n/**\n Asks the delegate to know if the empty dataset should fade in when displayed. Default is YES.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if the empty dataset should fade in.\n */\n- (BOOL)emptyDataSetShouldFadeIn:(UIScrollView *)scrollView;\n\n/**\n Asks the delegate to know if the empty dataset should still be displayed when the amount of items is more than 0. Default is NO\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if empty dataset should be forced to display\n */\n- (BOOL)emptyDataSetShouldBeForcedToDisplay:(UIScrollView *)scrollView;\n\n/**\n Asks the delegate to know if the empty dataset should be rendered and displayed. Default is YES.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if the empty dataset should show.\n */\n- (BOOL)emptyDataSetShouldDisplay:(UIScrollView *)scrollView;\n\n/**\n Asks the delegate for touch permission. Default is YES.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if the empty dataset receives touch gestures.\n */\n- (BOOL)emptyDataSetShouldAllowTouch:(UIScrollView *)scrollView;\n\n/**\n Asks the delegate for scroll permission. Default is NO.\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if the empty dataset is allowed to be scrollable.\n */\n- (BOOL)emptyDataSetShouldAllowScroll:(UIScrollView *)scrollView;\n\n/**\n Asks the delegate for image view animation permission. Default is NO.\n Make sure to return a valid CAAnimation object from imageAnimationForEmptyDataSet:\n \n @param scrollView A scrollView subclass object informing the delegate.\n @return YES if the empty dataset is allowed to animate\n */\n- (BOOL)emptyDataSetShouldAnimateImageView:(UIScrollView *)scrollView;\n\n/**\n Tells the delegate that the empty dataset view was tapped.\n Use this method either to resignFirstResponder of a textfield or searchBar.\n \n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetDidTapView:(UIScrollView *)scrollView DZNEmptyDataSetDeprecated(-emptyDataSet:didTapView:);\n\n/**\n Tells the delegate that the action button was tapped.\n \n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetDidTapButton:(UIScrollView *)scrollView DZNEmptyDataSetDeprecated(-emptyDataSet:didTapButton:);\n\n/**\n Tells the delegate that the empty dataset view was tapped.\n Use this method either to resignFirstResponder of a textfield or searchBar.\n \n @param scrollView A scrollView subclass informing the delegate.\n @param view the view tapped by the user\n */\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapView:(UIView *)view;\n\n/**\n Tells the delegate that the action button was tapped.\n \n @param scrollView A scrollView subclass informing the delegate.\n @param button the button tapped by the user\n */\n- (void)emptyDataSet:(UIScrollView *)scrollView didTapButton:(UIButton *)button;\n\n/**\n Tells the delegate that the empty data set will appear.\n\n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetWillAppear:(UIScrollView *)scrollView;\n\n/**\n Tells the delegate that the empty data set did appear.\n\n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetDidAppear:(UIScrollView *)scrollView;\n\n/**\n Tells the delegate that the empty data set will disappear.\n\n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetWillDisappear:(UIScrollView *)scrollView;\n\n/**\n Tells the delegate that the empty data set did disappear.\n\n @param scrollView A scrollView subclass informing the delegate.\n */\n- (void)emptyDataSetDidDisappear:(UIScrollView *)scrollView;\n\n@end\n\n#undef DZNEmptyDataSetDeprecated\n\n"
  },
  {
    "path": "Carthage/Checkouts/DZNEmptyDataSet/Source/UIScrollView+EmptyDataSet.m",
    "content": "//\n//  UIScrollView+EmptyDataSet.m\n//  DZNEmptyDataSet\n//  https://github.com/dzenbot/DZNEmptyDataSet\n//\n//  Created by Ignacio Romero Zurbuchen on 6/20/14.\n//  Copyright (c) 2016 DZN Labs. All rights reserved.\n//  Licence: MIT-Licence\n//\n\n#import \"UIScrollView+EmptyDataSet.h\"\n#import <objc/runtime.h>\n\n@interface UIView (DZNConstraintBasedLayoutExtensions)\n\n- (NSLayoutConstraint *)equallyRelatedConstraintWithView:(UIView *)view attribute:(NSLayoutAttribute)attribute;\n\n@end\n\n@interface DZNWeakObjectContainer : NSObject\n\n@property (nonatomic, readonly, weak) id weakObject;\n\n- (instancetype)initWithWeakObject:(id)object;\n\n@end\n\n@interface DZNEmptyDataSetView : UIView\n\n@property (nonatomic, readonly) UIView *contentView;\n@property (nonatomic, readonly) UILabel *titleLabel;\n@property (nonatomic, readonly) UILabel *detailLabel;\n@property (nonatomic, readonly) UIImageView *imageView;\n@property (nonatomic, readonly) UIButton *button;\n@property (nonatomic, strong) UIView *customView;\n@property (nonatomic, strong) UITapGestureRecognizer *tapGesture;\n\n@property (nonatomic, assign) CGFloat verticalOffset;\n@property (nonatomic, assign) CGFloat verticalSpace;\n\n@property (nonatomic, assign) BOOL fadeInOnDisplay;\n\n- (void)setupConstraints;\n- (void)prepareForReuse;\n\n@end\n\n\n#pragma mark - UIScrollView+EmptyDataSet\n\nstatic char const * const kEmptyDataSetSource =     \"emptyDataSetSource\";\nstatic char const * const kEmptyDataSetDelegate =   \"emptyDataSetDelegate\";\nstatic char const * const kEmptyDataSetView =       \"emptyDataSetView\";\n\n#define kEmptyImageViewAnimationKey @\"com.dzn.emptyDataSet.imageViewAnimation\"\n\n@interface UIScrollView () <UIGestureRecognizerDelegate>\n@property (nonatomic, readonly) DZNEmptyDataSetView *emptyDataSetView;\n@end\n\n@implementation UIScrollView (DZNEmptyDataSet)\n\n#pragma mark - Getters (Public)\n\n- (id<DZNEmptyDataSetSource>)emptyDataSetSource\n{\n    DZNWeakObjectContainer *container = objc_getAssociatedObject(self, kEmptyDataSetSource);\n    return container.weakObject;\n}\n\n- (id<DZNEmptyDataSetDelegate>)emptyDataSetDelegate\n{\n    DZNWeakObjectContainer *container = objc_getAssociatedObject(self, kEmptyDataSetDelegate);\n    return container.weakObject;\n}\n\n- (BOOL)isEmptyDataSetVisible\n{\n    UIView *view = objc_getAssociatedObject(self, kEmptyDataSetView);\n    return view ? !view.hidden : NO;\n}\n\n\n#pragma mark - Getters (Private)\n\n- (DZNEmptyDataSetView *)emptyDataSetView\n{\n    DZNEmptyDataSetView *view = objc_getAssociatedObject(self, kEmptyDataSetView);\n    \n    if (!view)\n    {\n        view = [DZNEmptyDataSetView new];\n        view.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;\n        view.hidden = YES;\n        \n        view.tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dzn_didTapContentView:)];\n        view.tapGesture.delegate = self;\n        [view addGestureRecognizer:view.tapGesture];\n        \n        [self setEmptyDataSetView:view];\n    }\n    return view;\n}\n\n- (BOOL)dzn_canDisplay\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource conformsToProtocol:@protocol(DZNEmptyDataSetSource)]) {\n        if ([self isKindOfClass:[UITableView class]] || [self isKindOfClass:[UICollectionView class]] || [self isKindOfClass:[UIScrollView class]]) {\n            return YES;\n        }\n    }\n    \n    return NO;\n}\n\n- (NSInteger)dzn_itemsCount\n{\n    NSInteger items = 0;\n    \n    // UIScollView doesn't respond to 'dataSource' so let's exit\n    if (![self respondsToSelector:@selector(dataSource)]) {\n        return items;\n    }\n    \n    // UITableView support\n    if ([self isKindOfClass:[UITableView class]]) {\n        \n        UITableView *tableView = (UITableView *)self;\n        id <UITableViewDataSource> dataSource = tableView.dataSource;\n        \n        NSInteger sections = 1;\n        \n        if (dataSource && [dataSource respondsToSelector:@selector(numberOfSectionsInTableView:)]) {\n            sections = [dataSource numberOfSectionsInTableView:tableView];\n        }\n        \n        if (dataSource && [dataSource respondsToSelector:@selector(tableView:numberOfRowsInSection:)]) {\n            for (NSInteger section = 0; section < sections; section++) {\n                items += [dataSource tableView:tableView numberOfRowsInSection:section];\n            }\n        }\n    }\n    // UICollectionView support\n    else if ([self isKindOfClass:[UICollectionView class]]) {\n        \n        UICollectionView *collectionView = (UICollectionView *)self;\n        id <UICollectionViewDataSource> dataSource = collectionView.dataSource;\n\n        NSInteger sections = 1;\n        \n        if (dataSource && [dataSource respondsToSelector:@selector(numberOfSectionsInCollectionView:)]) {\n            sections = [dataSource numberOfSectionsInCollectionView:collectionView];\n        }\n        \n        if (dataSource && [dataSource respondsToSelector:@selector(collectionView:numberOfItemsInSection:)]) {\n            for (NSInteger section = 0; section < sections; section++) {\n                items += [dataSource collectionView:collectionView numberOfItemsInSection:section];\n            }\n        }\n    }\n    \n    return items;\n}\n\n\n#pragma mark - Data Source Getters\n\n- (NSAttributedString *)dzn_titleLabelString\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(titleForEmptyDataSet:)]) {\n        NSAttributedString *string = [self.emptyDataSetSource titleForEmptyDataSet:self];\n        if (string) NSAssert([string isKindOfClass:[NSAttributedString class]], @\"You must return a valid NSAttributedString object for -titleForEmptyDataSet:\");\n        return string;\n    }\n    return nil;\n}\n\n- (NSAttributedString *)dzn_detailLabelString\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(descriptionForEmptyDataSet:)]) {\n        NSAttributedString *string = [self.emptyDataSetSource descriptionForEmptyDataSet:self];\n        if (string) NSAssert([string isKindOfClass:[NSAttributedString class]], @\"You must return a valid NSAttributedString object for -descriptionForEmptyDataSet:\");\n        return string;\n    }\n    return nil;\n}\n\n- (UIImage *)dzn_image\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(imageForEmptyDataSet:)]) {\n        UIImage *image = [self.emptyDataSetSource imageForEmptyDataSet:self];\n        if (image) NSAssert([image isKindOfClass:[UIImage class]], @\"You must return a valid UIImage object for -imageForEmptyDataSet:\");\n        return image;\n    }\n    return nil;\n}\n\n- (CAAnimation *)dzn_imageAnimation\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(imageAnimationForEmptyDataSet:)]) {\n        CAAnimation *imageAnimation = [self.emptyDataSetSource imageAnimationForEmptyDataSet:self];\n        if (imageAnimation) NSAssert([imageAnimation isKindOfClass:[CAAnimation class]], @\"You must return a valid CAAnimation object for -imageAnimationForEmptyDataSet:\");\n        return imageAnimation;\n    }\n    return nil;\n}\n\n- (UIColor *)dzn_imageTintColor\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(imageTintColorForEmptyDataSet:)]) {\n        UIColor *color = [self.emptyDataSetSource imageTintColorForEmptyDataSet:self];\n        if (color) NSAssert([color isKindOfClass:[UIColor class]], @\"You must return a valid UIColor object for -imageTintColorForEmptyDataSet:\");\n        return color;\n    }\n    return nil;\n}\n\n- (NSAttributedString *)dzn_buttonTitleForState:(UIControlState)state\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(buttonTitleForEmptyDataSet:forState:)]) {\n        NSAttributedString *string = [self.emptyDataSetSource buttonTitleForEmptyDataSet:self forState:state];\n        if (string) NSAssert([string isKindOfClass:[NSAttributedString class]], @\"You must return a valid NSAttributedString object for -buttonTitleForEmptyDataSet:forState:\");\n        return string;\n    }\n    return nil;\n}\n\n- (UIImage *)dzn_buttonImageForState:(UIControlState)state\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(buttonImageForEmptyDataSet:forState:)]) {\n        UIImage *image = [self.emptyDataSetSource buttonImageForEmptyDataSet:self forState:state];\n        if (image) NSAssert([image isKindOfClass:[UIImage class]], @\"You must return a valid UIImage object for -buttonImageForEmptyDataSet:forState:\");\n        return image;\n    }\n    return nil;\n}\n\n- (UIImage *)dzn_buttonBackgroundImageForState:(UIControlState)state\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(buttonBackgroundImageForEmptyDataSet:forState:)]) {\n        UIImage *image = [self.emptyDataSetSource buttonBackgroundImageForEmptyDataSet:self forState:state];\n        if (image) NSAssert([image isKindOfClass:[UIImage class]], @\"You must return a valid UIImage object for -buttonBackgroundImageForEmptyDataSet:forState:\");\n        return image;\n    }\n    return nil;\n}\n\n- (UIColor *)dzn_dataSetBackgroundColor\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(backgroundColorForEmptyDataSet:)]) {\n        UIColor *color = [self.emptyDataSetSource backgroundColorForEmptyDataSet:self];\n        if (color) NSAssert([color isKindOfClass:[UIColor class]], @\"You must return a valid UIColor object for -backgroundColorForEmptyDataSet:\");\n        return color;\n    }\n    return [UIColor clearColor];\n}\n\n- (UIView *)dzn_customView\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(customViewForEmptyDataSet:)]) {\n        UIView *view = [self.emptyDataSetSource customViewForEmptyDataSet:self];\n        if (view) NSAssert([view isKindOfClass:[UIView class]], @\"You must return a valid UIView object for -customViewForEmptyDataSet:\");\n        return view;\n    }\n    return nil;\n}\n\n- (CGFloat)dzn_verticalOffset\n{\n    CGFloat offset = 0.0;\n    \n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(verticalOffsetForEmptyDataSet:)]) {\n        offset = [self.emptyDataSetSource verticalOffsetForEmptyDataSet:self];\n    }\n    return offset;\n}\n\n- (CGFloat)dzn_verticalSpace\n{\n    if (self.emptyDataSetSource && [self.emptyDataSetSource respondsToSelector:@selector(spaceHeightForEmptyDataSet:)]) {\n        return [self.emptyDataSetSource spaceHeightForEmptyDataSet:self];\n    }\n    return 0.0;\n}\n\n\n#pragma mark - Delegate Getters & Events (Private)\n\n- (BOOL)dzn_shouldFadeIn {\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldFadeIn:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldFadeIn:self];\n    }\n    return YES;\n}\n\n- (BOOL)dzn_shouldDisplay\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldDisplay:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldDisplay:self];\n    }\n    return YES;\n}\n\n- (BOOL)dzn_shouldBeForcedToDisplay\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldBeForcedToDisplay:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldBeForcedToDisplay:self];\n    }\n    return NO;\n}\n\n- (BOOL)dzn_isTouchAllowed\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldAllowTouch:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldAllowTouch:self];\n    }\n    return YES;\n}\n\n- (BOOL)dzn_isScrollAllowed\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldAllowScroll:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldAllowScroll:self];\n    }\n    return NO;\n}\n\n- (BOOL)dzn_isImageViewAnimateAllowed\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetShouldAnimateImageView:)]) {\n        return [self.emptyDataSetDelegate emptyDataSetShouldAnimateImageView:self];\n    }\n    return NO;\n}\n\n- (void)dzn_willAppear\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetWillAppear:)]) {\n        [self.emptyDataSetDelegate emptyDataSetWillAppear:self];\n    }\n}\n\n- (void)dzn_didAppear\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetDidAppear:)]) {\n        [self.emptyDataSetDelegate emptyDataSetDidAppear:self];\n    }\n}\n\n- (void)dzn_willDisappear\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetWillDisappear:)]) {\n        [self.emptyDataSetDelegate emptyDataSetWillDisappear:self];\n    }\n}\n\n- (void)dzn_didDisappear\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetDidDisappear:)]) {\n        [self.emptyDataSetDelegate emptyDataSetDidDisappear:self];\n    }\n}\n\n- (void)dzn_didTapContentView:(id)sender\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSet:didTapView:)]) {\n        [self.emptyDataSetDelegate emptyDataSet:self didTapView:sender];\n    }\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-declarations\"\n    else if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetDidTapView:)]) {\n        [self.emptyDataSetDelegate emptyDataSetDidTapView:self];\n    }\n#pragma clang diagnostic pop\n}\n\n- (void)dzn_didTapDataButton:(id)sender\n{\n    if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSet:didTapButton:)]) {\n        [self.emptyDataSetDelegate emptyDataSet:self didTapButton:sender];\n    }\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-declarations\"\n    else if (self.emptyDataSetDelegate && [self.emptyDataSetDelegate respondsToSelector:@selector(emptyDataSetDidTapButton:)]) {\n        [self.emptyDataSetDelegate emptyDataSetDidTapButton:self];\n    }\n#pragma clang diagnostic pop\n}\n\n\n#pragma mark - Setters (Public)\n\n- (void)setEmptyDataSetSource:(id<DZNEmptyDataSetSource>)datasource\n{\n    if (!datasource || ![self dzn_canDisplay]) {\n        [self dzn_invalidate];\n    }\n    \n    objc_setAssociatedObject(self, kEmptyDataSetSource, [[DZNWeakObjectContainer alloc] initWithWeakObject:datasource], OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n    \n    // We add method sizzling for injecting -dzn_reloadData implementation to the native -reloadData implementation\n    [self swizzleIfPossible:@selector(reloadData)];\n    \n    // Exclusively for UITableView, we also inject -dzn_reloadData to -endUpdates\n    if ([self isKindOfClass:[UITableView class]]) {\n        [self swizzleIfPossible:@selector(endUpdates)];\n    }\n}\n\n- (void)setEmptyDataSetDelegate:(id<DZNEmptyDataSetDelegate>)delegate\n{\n    if (!delegate) {\n        [self dzn_invalidate];\n    }\n    \n    objc_setAssociatedObject(self, kEmptyDataSetDelegate, [[DZNWeakObjectContainer alloc] initWithWeakObject:delegate], OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n}\n\n\n#pragma mark - Setters (Private)\n\n- (void)setEmptyDataSetView:(DZNEmptyDataSetView *)view\n{\n    objc_setAssociatedObject(self, kEmptyDataSetView, view, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n}\n\n\n#pragma mark - Reload APIs (Public)\n\n- (void)reloadEmptyDataSet\n{\n    [self dzn_reloadEmptyDataSet];\n}\n\n\n#pragma mark - Reload APIs (Private)\n\n- (void)dzn_reloadEmptyDataSet\n{\n    if (![self dzn_canDisplay]) {\n        return;\n    }\n    \n    if (([self dzn_shouldDisplay] && [self dzn_itemsCount] == 0) || [self dzn_shouldBeForcedToDisplay])\n    {\n        // Notifies that the empty dataset view will appear\n        [self dzn_willAppear];\n        \n        DZNEmptyDataSetView *view = self.emptyDataSetView;\n        \n        if (!view.superview) {\n            // Send the view all the way to the back, in case a header and/or footer is present, as well as for sectionHeaders or any other content\n            if (([self isKindOfClass:[UITableView class]] || [self isKindOfClass:[UICollectionView class]]) && self.subviews.count > 1) {\n                [self insertSubview:view atIndex:0];\n            }\n            else {\n                [self addSubview:view];\n            }\n        }\n        \n        // Removing view resetting the view and its constraints it very important to guarantee a good state\n        [view prepareForReuse];\n        \n        UIView *customView = [self dzn_customView];\n        \n        // If a non-nil custom view is available, let's configure it instead\n        if (customView) {\n            view.customView = customView;\n        }\n        else {\n            // Get the data from the data source\n            NSAttributedString *titleLabelString = [self dzn_titleLabelString];\n            NSAttributedString *detailLabelString = [self dzn_detailLabelString];\n            \n            UIImage *buttonImage = [self dzn_buttonImageForState:UIControlStateNormal];\n            NSAttributedString *buttonTitle = [self dzn_buttonTitleForState:UIControlStateNormal];\n            \n            UIImage *image = [self dzn_image];\n            UIColor *imageTintColor = [self dzn_imageTintColor];\n            UIImageRenderingMode renderingMode = imageTintColor ? UIImageRenderingModeAlwaysTemplate : UIImageRenderingModeAlwaysOriginal;\n            \n            view.verticalSpace = [self dzn_verticalSpace];\n            \n            // Configure Image\n            if (image) {\n                if ([image respondsToSelector:@selector(imageWithRenderingMode:)]) {\n                    view.imageView.image = [image imageWithRenderingMode:renderingMode];\n                    view.imageView.tintColor = imageTintColor;\n                }\n                else {\n                    // iOS 6 fallback: insert code to convert imaged if needed\n                    view.imageView.image = image;\n                }\n            }\n            \n            // Configure title label\n            if (titleLabelString) {\n                view.titleLabel.attributedText = titleLabelString;\n            }\n            \n            // Configure detail label\n            if (detailLabelString) {\n                view.detailLabel.attributedText = detailLabelString;\n            }\n            \n            // Configure button\n            if (buttonImage) {\n                [view.button setImage:buttonImage forState:UIControlStateNormal];\n                [view.button setImage:[self dzn_buttonImageForState:UIControlStateHighlighted] forState:UIControlStateHighlighted];\n            }\n            else if (buttonTitle) {\n                [view.button setAttributedTitle:buttonTitle forState:UIControlStateNormal];\n                [view.button setAttributedTitle:[self dzn_buttonTitleForState:UIControlStateHighlighted] forState:UIControlStateHighlighted];\n                [view.button setBackgroundImage:[self dzn_buttonBackgroundImageForState:UIControlStateNormal] forState:UIControlStateNormal];\n                [view.button setBackgroundImage:[self dzn_buttonBackgroundImageForState:UIControlStateHighlighted] forState:UIControlStateHighlighted];\n            }\n        }\n        \n        // Configure offset\n        view.verticalOffset = [self dzn_verticalOffset];\n        \n        // Configure the empty dataset view\n        view.backgroundColor = [self dzn_dataSetBackgroundColor];\n        view.hidden = NO;\n        view.clipsToBounds = YES;\n        \n        // Configure empty dataset userInteraction permission\n        view.userInteractionEnabled = [self dzn_isTouchAllowed];\n        \n        // Configure empty dataset fade in display\n        view.fadeInOnDisplay = [self dzn_shouldFadeIn];\n        \n        [view setupConstraints];\n        \n        [UIView performWithoutAnimation:^{\n            [view layoutIfNeeded];            \n        }];\n        \n        // Configure scroll permission\n        self.scrollEnabled = [self dzn_isScrollAllowed];\n        \n        // Configure image view animation\n        if ([self dzn_isImageViewAnimateAllowed])\n        {\n            CAAnimation *animation = [self dzn_imageAnimation];\n            \n            if (animation) {\n                [self.emptyDataSetView.imageView.layer addAnimation:animation forKey:kEmptyImageViewAnimationKey];\n            }\n        }\n        else if ([self.emptyDataSetView.imageView.layer animationForKey:kEmptyImageViewAnimationKey]) {\n            [self.emptyDataSetView.imageView.layer removeAnimationForKey:kEmptyImageViewAnimationKey];\n        }\n        \n        // Notifies that the empty dataset view did appear\n        [self dzn_didAppear];\n    }\n    else if (self.isEmptyDataSetVisible) {\n        [self dzn_invalidate];\n    }\n}\n\n- (void)dzn_invalidate\n{\n    // Notifies that the empty dataset view will disappear\n    [self dzn_willDisappear];\n    \n    if (self.emptyDataSetView) {\n        [self.emptyDataSetView prepareForReuse];\n        [self.emptyDataSetView removeFromSuperview];\n        \n        [self setEmptyDataSetView:nil];\n    }\n    \n    self.scrollEnabled = YES;\n    \n    // Notifies that the empty dataset view did disappear\n    [self dzn_didDisappear];\n}\n\n\n#pragma mark - Method Swizzling\n\nstatic NSMutableDictionary *_impLookupTable;\nstatic NSString *const DZNSwizzleInfoPointerKey = @\"pointer\";\nstatic NSString *const DZNSwizzleInfoOwnerKey = @\"owner\";\nstatic NSString *const DZNSwizzleInfoSelectorKey = @\"selector\";\n\n// Based on Bryce Buchanan's swizzling technique http://blog.newrelic.com/2014/04/16/right-way-to-swizzle/\n// And Juzzin's ideas https://github.com/juzzin/JUSEmptyViewController\n\nvoid dzn_original_implementation(id self, SEL _cmd)\n{\n    // Fetch original implementation from lookup table\n    Class baseClass = dzn_baseClassToSwizzleForTarget(self);\n    NSString *key = dzn_implementationKey(baseClass, _cmd);\n    \n    NSDictionary *swizzleInfo = [_impLookupTable objectForKey:key];\n    NSValue *impValue = [swizzleInfo valueForKey:DZNSwizzleInfoPointerKey];\n    \n    IMP impPointer = [impValue pointerValue];\n    \n    // We then inject the additional implementation for reloading the empty dataset\n    // Doing it before calling the original implementation does update the 'isEmptyDataSetVisible' flag on time.\n    [self dzn_reloadEmptyDataSet];\n    \n    // If found, call original implementation\n    if (impPointer) {\n        ((void(*)(id,SEL))impPointer)(self,_cmd);\n    }\n}\n\nNSString *dzn_implementationKey(Class class, SEL selector)\n{\n    if (!class || !selector) {\n        return nil;\n    }\n    \n    NSString *className = NSStringFromClass([class class]);\n    \n    NSString *selectorName = NSStringFromSelector(selector);\n    return [NSString stringWithFormat:@\"%@_%@\",className,selectorName];\n}\n\nClass dzn_baseClassToSwizzleForTarget(id target)\n{\n    if ([target isKindOfClass:[UITableView class]]) {\n        return [UITableView class];\n    }\n    else if ([target isKindOfClass:[UICollectionView class]]) {\n        return [UICollectionView class];\n    }\n    else if ([target isKindOfClass:[UIScrollView class]]) {\n        return [UIScrollView class];\n    }\n    \n    return nil;\n}\n\n- (void)swizzleIfPossible:(SEL)selector\n{\n    // Check if the target responds to selector\n    if (![self respondsToSelector:selector]) {\n        return;\n    }\n    \n    // Create the lookup table\n    if (!_impLookupTable) {\n        _impLookupTable = [[NSMutableDictionary alloc] initWithCapacity:3]; // 3 represent the supported base classes\n    }\n    \n    // We make sure that setImplementation is called once per class kind, UITableView or UICollectionView.\n    for (NSDictionary *info in [_impLookupTable allValues]) {\n        Class class = [info objectForKey:DZNSwizzleInfoOwnerKey];\n        NSString *selectorName = [info objectForKey:DZNSwizzleInfoSelectorKey];\n        \n        if ([selectorName isEqualToString:NSStringFromSelector(selector)]) {\n            if ([self isKindOfClass:class]) {\n                return;\n            }\n        }\n    }\n    \n    Class baseClass = dzn_baseClassToSwizzleForTarget(self);\n    NSString *key = dzn_implementationKey(baseClass, selector);\n    NSValue *impValue = [[_impLookupTable objectForKey:key] valueForKey:DZNSwizzleInfoPointerKey];\n    \n    // If the implementation for this class already exist, skip!!\n    if (impValue || !key || !baseClass) {\n        return;\n    }\n    \n    // Swizzle by injecting additional implementation\n    Method method = class_getInstanceMethod(baseClass, selector);\n    IMP dzn_newImplementation = method_setImplementation(method, (IMP)dzn_original_implementation);\n    \n    // Store the new implementation in the lookup table\n    NSDictionary *swizzledInfo = @{DZNSwizzleInfoOwnerKey: baseClass,\n                                   DZNSwizzleInfoSelectorKey: NSStringFromSelector(selector),\n                                   DZNSwizzleInfoPointerKey: [NSValue valueWithPointer:dzn_newImplementation]};\n    \n    [_impLookupTable setObject:swizzledInfo forKey:key];\n}\n\n\n#pragma mark - UIGestureRecognizerDelegate Methods\n\n- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer\n{\n    if ([gestureRecognizer.view isEqual:self.emptyDataSetView]) {\n        return [self dzn_isTouchAllowed];\n    }\n    \n    return [super gestureRecognizerShouldBegin:gestureRecognizer];\n}\n\n- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer\n{\n    UIGestureRecognizer *tapGesture = self.emptyDataSetView.tapGesture;\n    \n    if ([gestureRecognizer isEqual:tapGesture] || [otherGestureRecognizer isEqual:tapGesture]) {\n        return YES;\n    }\n    \n    // defer to emptyDataSetDelegate's implementation if available\n    if ( (self.emptyDataSetDelegate != (id)self) && [self.emptyDataSetDelegate respondsToSelector:@selector(gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:)]) {\n        return [(id)self.emptyDataSetDelegate gestureRecognizer:gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:otherGestureRecognizer];\n    }\n    \n    return NO;\n}\n\n@end\n\n\n#pragma mark - DZNEmptyDataSetView\n\n@interface DZNEmptyDataSetView ()\n@end\n\n@implementation DZNEmptyDataSetView\n@synthesize contentView = _contentView;\n@synthesize titleLabel = _titleLabel, detailLabel = _detailLabel, imageView = _imageView, button = _button;\n\n#pragma mark - Initialization Methods\n\n- (instancetype)init\n{\n    self =  [super init];\n    if (self) {\n        [self addSubview:self.contentView];\n    }\n    return self;\n}\n\n- (void)didMoveToSuperview\n{\n    self.frame = self.superview.bounds;\n    \n    void(^fadeInBlock)(void) = ^{_contentView.alpha = 1.0;};\n    \n    if (self.fadeInOnDisplay) {\n        [UIView animateWithDuration:0.25\n                         animations:fadeInBlock\n                         completion:NULL];\n    }\n    else {\n        fadeInBlock();\n    }\n}\n\n\n#pragma mark - Getters\n\n- (UIView *)contentView\n{\n    if (!_contentView)\n    {\n        _contentView = [UIView new];\n        _contentView.translatesAutoresizingMaskIntoConstraints = NO;\n        _contentView.backgroundColor = [UIColor clearColor];\n        _contentView.userInteractionEnabled = YES;\n        _contentView.alpha = 0;\n    }\n    return _contentView;\n}\n\n- (UIImageView *)imageView\n{\n    if (!_imageView)\n    {\n        _imageView = [UIImageView new];\n        _imageView.translatesAutoresizingMaskIntoConstraints = NO;\n        _imageView.backgroundColor = [UIColor clearColor];\n        _imageView.contentMode = UIViewContentModeScaleAspectFit;\n        _imageView.userInteractionEnabled = NO;\n        _imageView.accessibilityIdentifier = @\"empty set background image\";\n        \n        [_contentView addSubview:_imageView];\n    }\n    return _imageView;\n}\n\n- (UILabel *)titleLabel\n{\n    if (!_titleLabel)\n    {\n        _titleLabel = [UILabel new];\n        _titleLabel.translatesAutoresizingMaskIntoConstraints = NO;\n        _titleLabel.backgroundColor = [UIColor clearColor];\n        \n        _titleLabel.font = [UIFont systemFontOfSize:27.0];\n        _titleLabel.textColor = [UIColor colorWithWhite:0.6 alpha:1.0];\n        _titleLabel.textAlignment = NSTextAlignmentCenter;\n        _titleLabel.lineBreakMode = NSLineBreakByWordWrapping;\n        _titleLabel.numberOfLines = 0;\n        _titleLabel.accessibilityIdentifier = @\"empty set title\";\n        \n        [_contentView addSubview:_titleLabel];\n    }\n    return _titleLabel;\n}\n\n- (UILabel *)detailLabel\n{\n    if (!_detailLabel)\n    {\n        _detailLabel = [UILabel new];\n        _detailLabel.translatesAutoresizingMaskIntoConstraints = NO;\n        _detailLabel.backgroundColor = [UIColor clearColor];\n        \n        _detailLabel.font = [UIFont systemFontOfSize:17.0];\n        _detailLabel.textColor = [UIColor colorWithWhite:0.6 alpha:1.0];\n        _detailLabel.textAlignment = NSTextAlignmentCenter;\n        _detailLabel.lineBreakMode = NSLineBreakByWordWrapping;\n        _detailLabel.numberOfLines = 0;\n        _detailLabel.accessibilityIdentifier = @\"empty set detail label\";\n        \n        [_contentView addSubview:_detailLabel];\n    }\n    return _detailLabel;\n}\n\n- (UIButton *)button\n{\n    if (!_button)\n    {\n        _button = [UIButton buttonWithType:UIButtonTypeCustom];\n        _button.translatesAutoresizingMaskIntoConstraints = NO;\n        _button.backgroundColor = [UIColor clearColor];\n        _button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;\n        _button.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;\n        _button.accessibilityIdentifier = @\"empty set button\";\n        \n        [_button addTarget:self action:@selector(didTapButton:) forControlEvents:UIControlEventTouchUpInside];\n        \n        [_contentView addSubview:_button];\n    }\n    return _button;\n}\n\n- (BOOL)canShowImage\n{\n    return (_imageView.image && _imageView.superview);\n}\n\n- (BOOL)canShowTitle\n{\n    return (_titleLabel.attributedText.string.length > 0 && _titleLabel.superview);\n}\n\n- (BOOL)canShowDetail\n{\n    return (_detailLabel.attributedText.string.length > 0 && _detailLabel.superview);\n}\n\n- (BOOL)canShowButton\n{\n    if ([_button attributedTitleForState:UIControlStateNormal].string.length > 0 || [_button imageForState:UIControlStateNormal]) {\n        return (_button.superview != nil);\n    }\n    return NO;\n}\n\n\n#pragma mark - Setters\n\n- (void)setCustomView:(UIView *)view\n{\n    if (!view) {\n        return;\n    }\n    \n    if (_customView) {\n        [_customView removeFromSuperview];\n        _customView = nil;\n    }\n    \n    _customView = view;\n    _customView.translatesAutoresizingMaskIntoConstraints = NO;\n    [self.contentView addSubview:_customView];\n}\n\n\n#pragma mark - Action Methods\n\n- (void)didTapButton:(id)sender\n{\n    SEL selector = NSSelectorFromString(@\"dzn_didTapDataButton:\");\n    \n    if ([self.superview respondsToSelector:selector]) {\n        [self.superview performSelector:selector withObject:sender afterDelay:0.0f];\n    }\n}\n\n- (void)removeAllConstraints\n{\n    [self removeConstraints:self.constraints];\n    [_contentView removeConstraints:_contentView.constraints];\n}\n\n- (void)prepareForReuse\n{\n    [self.contentView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];\n    \n    _titleLabel = nil;\n    _detailLabel = nil;\n    _imageView = nil;\n    _button = nil;\n    _customView = nil;\n    \n    [self removeAllConstraints];\n}\n\n\n#pragma mark - Auto-Layout Configuration\n\n- (void)setupConstraints\n{\n    // First, configure the content view constaints\n    // The content view must alway be centered to its superview\n    NSLayoutConstraint *centerXConstraint = [self equallyRelatedConstraintWithView:self.contentView attribute:NSLayoutAttributeCenterX];\n    NSLayoutConstraint *centerYConstraint = [self equallyRelatedConstraintWithView:self.contentView attribute:NSLayoutAttributeCenterY];\n    \n    [self addConstraint:centerXConstraint];\n    [self addConstraint:centerYConstraint];\n    [self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|[contentView]|\" options:0 metrics:nil views:@{@\"contentView\": self.contentView}]];\n    \n    // When a custom offset is available, we adjust the vertical constraints' constants\n    if (self.verticalOffset != 0 && self.constraints.count > 0) {\n        centerYConstraint.constant = self.verticalOffset;\n    }\n    \n    // If applicable, set the custom view's constraints\n    if (_customView) {\n        [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|[customView]|\" options:0 metrics:nil views:@{@\"customView\":_customView}]];\n        [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"V:|[customView]|\" options:0 metrics:nil views:@{@\"customView\":_customView}]];\n    }\n    else {\n        CGFloat width = CGRectGetWidth(self.frame) ? : CGRectGetWidth([UIScreen mainScreen].bounds);\n        CGFloat padding = roundf(width/16.0);\n        CGFloat verticalSpace = self.verticalSpace ? : 11.0; // Default is 11 pts\n        \n        NSMutableArray *subviewStrings = [NSMutableArray array];\n        NSMutableDictionary *views = [NSMutableDictionary dictionary];\n        NSDictionary *metrics = @{@\"padding\": @(padding)};\n        \n        // Assign the image view's horizontal constraints\n        if (_imageView.superview) {\n            \n            [subviewStrings addObject:@\"imageView\"];\n            views[[subviewStrings lastObject]] = _imageView;\n            \n            [self.contentView addConstraint:[self.contentView equallyRelatedConstraintWithView:_imageView attribute:NSLayoutAttributeCenterX]];\n        }\n        \n        // Assign the title label's horizontal constraints\n        if ([self canShowTitle]) {\n            \n            [subviewStrings addObject:@\"titleLabel\"];\n            views[[subviewStrings lastObject]] = _titleLabel;\n            \n            [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|-(padding@750)-[titleLabel(>=0)]-(padding@750)-|\"\n                                                                                     options:0 metrics:metrics views:views]];\n        }\n        // or removes from its superview\n        else {\n            [_titleLabel removeFromSuperview];\n            _titleLabel = nil;\n        }\n        \n        // Assign the detail label's horizontal constraints\n        if ([self canShowDetail]) {\n            \n            [subviewStrings addObject:@\"detailLabel\"];\n            views[[subviewStrings lastObject]] = _detailLabel;\n            \n            [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|-(padding@750)-[detailLabel(>=0)]-(padding@750)-|\"\n                                                                                     options:0 metrics:metrics views:views]];\n        }\n        // or removes from its superview\n        else {\n            [_detailLabel removeFromSuperview];\n            _detailLabel = nil;\n        }\n        \n        // Assign the button's horizontal constraints\n        if ([self canShowButton]) {\n            \n            [subviewStrings addObject:@\"button\"];\n            views[[subviewStrings lastObject]] = _button;\n            \n            [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@\"H:|-(padding@750)-[button(>=0)]-(padding@750)-|\"\n                                                                                     options:0 metrics:metrics views:views]];\n        }\n        // or removes from its superview\n        else {\n            [_button removeFromSuperview];\n            _button = nil;\n        }\n        \n        \n        NSMutableString *verticalFormat = [NSMutableString new];\n        \n        // Build a dynamic string format for the vertical constraints, adding a margin between each element. Default is 11 pts.\n        for (int i = 0; i < subviewStrings.count; i++) {\n            \n            NSString *string = subviewStrings[i];\n            [verticalFormat appendFormat:@\"[%@]\", string];\n            \n            if (i < subviewStrings.count-1) {\n                [verticalFormat appendFormat:@\"-(%.f@750)-\", verticalSpace];\n            }\n        }\n        \n        // Assign the vertical constraints to the content view\n        if (verticalFormat.length > 0) {\n            [self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:[NSString stringWithFormat:@\"V:|%@|\", verticalFormat]\n                                                                                     options:0 metrics:metrics views:views]];\n        }\n    }\n}\n\n- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event\n{\n    UIView *hitView = [super hitTest:point withEvent:event];\n    \n    // Return any UIControl instance such as buttons, segmented controls, switches, etc.\n    if ([hitView isKindOfClass:[UIControl class]]) {\n        return hitView;\n    }\n    \n    // Return either the contentView or customView\n    if ([hitView isEqual:_contentView] || [hitView isEqual:_customView]) {\n        return hitView;\n    }\n    \n    return nil;\n}\n\n@end\n\n\n#pragma mark - UIView+DZNConstraintBasedLayoutExtensions\n\n@implementation UIView (DZNConstraintBasedLayoutExtensions)\n\n- (NSLayoutConstraint *)equallyRelatedConstraintWithView:(UIView *)view attribute:(NSLayoutAttribute)attribute\n{\n    return [NSLayoutConstraint constraintWithItem:view\n                                        attribute:attribute\n                                        relatedBy:NSLayoutRelationEqual\n                                           toItem:self\n                                        attribute:attribute\n                                       multiplier:1.0\n                                         constant:0.0];\n}\n\n@end\n\n#pragma mark - DZNWeakObjectContainer\n\n@implementation DZNWeakObjectContainer\n\n- (instancetype)initWithWeakObject:(id)object\n{\n    self = [super init];\n    if (self) {\n        _weakObject = object;\n    }\n    return self;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/.gitignore",
    "content": ".DS_Store\nxcuserdata/\nbuild/\n.idea\nDerivedData/\nNimble.framework.zip\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\n# Packages/\n.build/\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      sudo: required\n      env: TYPE=podspec\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 TYPE=ios\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=9.0 TYPE=tvos\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 TYPE=osx\n    - os: osx\n      env: TYPE=swiftpm\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=10.0 TYPE=ios\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=10.0 TYPE=tvos\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.12 TYPE=osx\n      osx_image: xcode8\n    - os: linux\n      dist: trusty\n      sudo: required\n      env: TYPE=swiftpm\ninstall:\n  - if [[ \"$TYPE\" == \"swiftpm\" ]]; then eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"; fi\n  - if [[ \"$TYPE\" == \"podspec\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - ./test $TYPE\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Welcome to Nimble!](#welcome-to-nimble!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Nimble!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nNimble should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n**tl;dr:** If you've added a file to the project, make sure it's\nincluded in both the OS X and iOS targets.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Nimble (eg - v2.0.0 or git sha `20a3f3b4e63cc8d97c92c4164bf36f2a2c9a6e1b`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- Use `Nimble.xcodeproj` to work on Nimble.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of Nimble\n  before submitting your pull request. You can run all the OS X & iOS unit\n  tests using `./test`.\n- If you've added a file to the project, make sure it's included in both\n  the OS X and iOS targets.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\n### Code of Conduct\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n### Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Nimble/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Update [Quick](https://github.com/Quick/Quick)\n  - Update Quick's submodule reference to the newly released Nimble version\n  - Update Nimble version in `README.md` and Documentation in [Quick](https://github.com/Quick/Quick) if it's not a patch version update.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Gemfile",
    "content": "# A sample Gemfile\nsource \"https://rubygems.org\"\n\ngem 'cocoapods'\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/LICENSE.md",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014 Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Nimble\"\n  s.version      = \"4.1.0\"\n  s.summary      = \"A Matcher Framework for Swift and Objective-C\"\n  s.description  = <<-DESC\n                   Use Nimble to express the expected outcomes of Swift or Objective-C expressions. Inspired by Cedar.\n                   DESC\n  s.homepage     = \"https://github.com/Quick/Nimble\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE.md\" }\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = \"9.0\"\n  s.source       = { :git => \"https://github.com/Quick/Nimble.git\", :tag => \"v#{s.version}\" }\n\n  s.source_files = \"Sources/Nimble/**/*.{swift,h,m}\"\n  s.private_header_files = \"Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h\"\n  s.exclude_files = \"Sources/Nimble/Adapters/NonObjectiveC/*.swift\"\n  s.weak_framework = \"XCTest\"\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO', 'OTHER_LDFLAGS' => '-weak-lswiftXCTest', 'FRAMEWORK_SEARCH_PATHS' => '$(inherited) \"$(PLATFORM_DIR)/Developer/Library/Frameworks\"' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F1A74291940169200FFFC47 /* Nimble.framework */; };\n\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */; };\n\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F925EAD195C0D6300ED456B /* Nimble.framework */; };\n\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = \"-fobjc-arc\"; }; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t1F1A74361940169200FFFC47 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F5DF1541BDCA0CE00C3A531;\n\t\t\tremoteInfo = \"Nimble-tvOS\";\n\t\t};\n\t\t1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectWithLazyProperty.swift; sourceTree = \"<group>\"; };\n\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SynchronousTests.swift; sourceTree = \"<group>\"; };\n\t\t1F14FB63194180C5009F2A08 /* utils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = utils.swift; sourceTree = \"<group>\"; };\n\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DSL.h; sourceTree = \"<group>\"; };\n\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DSL.m; sourceTree = \"<group>\"; };\n\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBExceptionCapture.h; sourceTree = \"<group>\"; };\n\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBExceptionCapture.m; sourceTree = \"<group>\"; };\n\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBStringify.h; sourceTree = \"<group>\"; };\n\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBStringify.m; sourceTree = \"<group>\"; };\n\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBExpectation.swift; sourceTree = \"<group>\"; };\n\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBObjCMatcher.swift; sourceTree = \"<group>\"; };\n\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExceptionCapture.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsyncMatcherWrapper.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherFunc.swift; sourceTree = \"<group>\"; };\n\t\t1F1A74291940169200FFFC47 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A742D1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1A742E1940169200FFFC47 /* Nimble.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Nimble.h; sourceTree = \"<group>\"; };\n\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A743A1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAKindOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F2752D119445B8400052A26 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; lineEnding = 0; path = README.md; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.markdown; };\n\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmptyTest.swift; sourceTree = \"<group>\"; };\n\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAsyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NimbleSpecHelper.h; sourceTree = \"<group>\"; };\n\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeAnInstanceOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeKindOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeCloseToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeginWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeIdenticalToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTruthyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalsyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTrueTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalseTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeNilTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCContainTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEndWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEqualTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCMatchTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCRaiseExceptionTest.m; sourceTree = \"<group>\"; };\n\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoidTest.swift; sourceTree = \"<group>\"; };\n\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoid.swift; sourceTree = \"<group>\"; };\n\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsynchronousTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RaisesExceptionTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLogicalTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeNilTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeginWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F01195C189500ED456B /* ContainTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContainTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F04195C18B700ED456B /* EqualTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EqualTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeEmptyTest.m; sourceTree = \"<group>\"; };\n\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToTest.swift; sourceTree = \"<group>\"; };\n\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleEnvironment.swift; sourceTree = \"<group>\"; };\n\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotificationTest.swift; sourceTree = \"<group>\"; };\n\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotification.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionRecorder.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AdapterProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleXCTestHandler.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD081968AB07008ED995 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expectation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expression.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FailureMessage.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOf.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeAKindOf.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseTo.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmpty.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeginWith.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThanOrEqualTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeIdenticalTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThanOrEqual.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLogical.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeNil.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Contain.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWith.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Equal.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = RaisesException.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD251968AB07008ED995 /* Functional.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Functional.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD261968AB07008ED995 /* Async.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Async.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SourceLocation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Stringers.swift; sourceTree = \"<group>\"; };\n\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionDispatcher.swift; sourceTree = \"<group>\"; };\n\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowErrorTest.swift; sourceTree = \"<group>\"; };\n\t\t29EA59651B551EE6002D767E /* ThrowError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowError.swift; sourceTree = \"<group>\"; };\n\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCount.swift; sourceTree = \"<group>\"; };\n\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCountTest.swift; sourceTree = \"<group>\"; };\n\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCHaveCount.m; sourceTree = \"<group>\"; };\n\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOfTest.swift; sourceTree = \"<group>\"; };\n\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOf.swift; sourceTree = \"<group>\"; };\n\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSatisfyAnyOfTest.m; sourceTree = \"<group>\"; };\n\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjcStringersTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCUserDescriptionTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserDescriptionTest.swift; sourceTree = \"<group>\"; };\n\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchError.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchErrorTest.swift; sourceTree = \"<group>\"; };\n\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"DSL+Wait.swift\"; sourceTree = \"<group>\"; };\n\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPassTest.swift; sourceTree = \"<group>\"; };\n\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToObjectTest.swift; sourceTree = \"<group>\"; };\n\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPass.swift; sourceTree = \"<group>\"; };\n\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Match.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchTest.swift; sourceTree = \"<group>\"; };\n\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAllPassTest.m; sourceTree = \"<group>\"; };\n\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+Register.m\"; sourceTree = \"<group>\"; };\n\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CurrentTestCaseTracker.h; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F1A74251940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74311940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA9195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB4195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F14FB61194180A7009F2A08 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F14FB63194180C5009F2A08 /* utils.swift */,\n\t\t\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */,\n\t\t\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */,\n\t\t\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */,\n\t\t\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */,\n\t\t\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */,\n\t\t\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */,\n\t\t\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */,\n\t\t\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */,\n\t\t\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */,\n\t\t\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */,\n\t\t\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */,\n\t\t\t);\n\t\t\tpath = ObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */,\n\t\t\t);\n\t\t\tpath = NonObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A741F1940169200FFFC47 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F2752D119445B8400052A26 /* README.md */,\n\t\t\t\t1F1A742B1940169200FFFC47 /* Nimble */,\n\t\t\t\t1F1A74381940169200FFFC47 /* NimbleTests */,\n\t\t\t\t1F1A742A1940169200FFFC47 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742A1940169200FFFC47 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A74291940169200FFFC47 /* Nimble.framework */,\n\t\t\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */,\n\t\t\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */,\n\t\t\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */,\n\t\t\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */,\n\t\t\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742B1940169200FFFC47 /* Nimble */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD041968AB07008ED995 /* Adapters */,\n\t\t\t\t1FD8CD081968AB07008ED995 /* DSL.swift */,\n\t\t\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */,\n\t\t\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */,\n\t\t\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */,\n\t\t\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */,\n\t\t\t\t1F1A742D1940169200FFFC47 /* Info.plist */,\n\t\t\t\t1FD8CD0C1968AB07008ED995 /* Matchers */,\n\t\t\t\t1F1A742E1940169200FFFC47 /* Nimble.h */,\n\t\t\t\t1FD8CD241968AB07008ED995 /* Utils */,\n\t\t\t);\n\t\t\tname = Nimble;\n\t\t\tpath = Sources/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74381940169200FFFC47 /* NimbleTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */,\n\t\t\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */,\n\t\t\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */,\n\t\t\t\t1FFD729A1963FC8200CD29A2 /* objc */,\n\t\t\t\t1F14FB61194180A7009F2A08 /* Helpers */,\n\t\t\t\t1F925EE3195C11B000ED456B /* Matchers */,\n\t\t\t\t1F1A74391940169200FFFC47 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = NimbleTests;\n\t\t\tpath = Tests/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74391940169200FFFC47 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A743A1940169200FFFC47 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F925EE3195C11B000ED456B /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */,\n\t\t\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */,\n\t\t\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */,\n\t\t\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */,\n\t\t\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */,\n\t\t\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */,\n\t\t\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */,\n\t\t\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */,\n\t\t\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */,\n\t\t\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */,\n\t\t\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */,\n\t\t\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */,\n\t\t\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */,\n\t\t\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */,\n\t\t\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */,\n\t\t\t\t1F925F01195C189500ED456B /* ContainTest.swift */,\n\t\t\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */,\n\t\t\t\t1F925F04195C18B700ED456B /* EqualTest.swift */,\n\t\t\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */,\n\t\t\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */,\n\t\t\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */,\n\t\t\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */,\n\t\t\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */,\n\t\t\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */,\n\t\t\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD041968AB07008ED995 /* Adapters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */,\n\t\t\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */,\n\t\t\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */,\n\t\t\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */,\n\t\t\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */,\n\t\t\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */,\n\t\t\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */,\n\t\t\t);\n\t\t\tpath = Adapters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD0C1968AB07008ED995 /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */,\n\t\t\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */,\n\t\t\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */,\n\t\t\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */,\n\t\t\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */,\n\t\t\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */,\n\t\t\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */,\n\t\t\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */,\n\t\t\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */,\n\t\t\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */,\n\t\t\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */,\n\t\t\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */,\n\t\t\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */,\n\t\t\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */,\n\t\t\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */,\n\t\t\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */,\n\t\t\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */,\n\t\t\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */,\n\t\t\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */,\n\t\t\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */,\n\t\t\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */,\n\t\t\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */,\n\t\t\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */,\n\t\t\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */,\n\t\t\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */,\n\t\t\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */,\n\t\t\t\t29EA59651B551EE6002D767E /* ThrowError.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD241968AB07008ED995 /* Utils */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD251968AB07008ED995 /* Functional.swift */,\n\t\t\t\t1FD8CD261968AB07008ED995 /* Async.swift */,\n\t\t\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */,\n\t\t\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */,\n\t\t\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */,\n\t\t\t);\n\t\t\tpath = Utils;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FFD729A1963FC8200CD29A2 /* objc */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */,\n\t\t\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */,\n\t\t\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */,\n\t\t\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */,\n\t\t\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */,\n\t\t\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */,\n\t\t\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */,\n\t\t\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */,\n\t\t\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */,\n\t\t\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */,\n\t\t\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */,\n\t\t\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */,\n\t\t\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */,\n\t\t\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */,\n\t\t\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */,\n\t\t\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */,\n\t\t\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */,\n\t\t\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */,\n\t\t\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */,\n\t\t\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */,\n\t\t\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */,\n\t\t\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */,\n\t\t\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */,\n\t\t\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */,\n\t\t\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */,\n\t\t\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */,\n\t\t\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */,\n\t\t\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */,\n\t\t\t);\n\t\t\tpath = objc;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F1A74261940169200FFFC47 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAA195C0D6300ED456B /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74241940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74251940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74261940169200FFFC47 /* Headers */,\n\t\t\t\t1F1A74271940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-iOS\";\n\t\t\tproductName = \"Nimble-iOS\";\n\t\t\tproductReference = 1F1A74291940169200FFFC47 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74301940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74311940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74321940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */,\n\t\t\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-iOSTests\";\n\t\t\tproductName = \"Nimble-iOSTests\";\n\t\t\tproductReference = 1F1A74341940169200FFFC47 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */,\n\t\t\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-tvOS\";\n\t\t\tproductName = \"Nimble-tvOS\";\n\t\t\tproductReference = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-tvOSTests\";\n\t\t\tproductName = \"Nimble-tvOSTests\";\n\t\t\tproductReference = 1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EA8195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EA9195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EAA195C0D6300ED456B /* Headers */,\n\t\t\t\t1F925EAB195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-OSX\";\n\t\t\tproductName = \"Nimble-OSX\";\n\t\t\tproductReference = 1F925EAD195C0D6300ED456B /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EB3195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EB4195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EB5195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */,\n\t\t\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-OSXTests\";\n\t\t\tproductName = \"Nimble-OSXTests\";\n\t\t\tproductReference = 1F925EB7195C0D6300ED456B /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t1F1A74201940169200FFFC47 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0730;\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = \"Jeff Hui\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F1A74281940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t};\n\t\t\t\t\t1F1A74331940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tTestTargetID = 1F1A74281940169200FFFC47;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF1541BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF15D1BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EAC195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EB6195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tTestTargetID = 1F925EAC195C0D6300ED456B;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 1F1A741F1940169200FFFC47;\n\t\t\tproductRefGroup = 1F1A742A1940169200FFFC47 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */,\n\t\t\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */,\n\t\t\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */,\n\t\t\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */,\n\t\t\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */,\n\t\t\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F1A74271940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74321940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAB195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB5195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F1A74241940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74301940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */,\n\t\t\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */,\n\t\t\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */,\n\t\t\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */,\n\t\t\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */,\n\t\t\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */,\n\t\t\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */,\n\t\t\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */,\n\t\t\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */,\n\t\t\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */,\n\t\t\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */,\n\t\t\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */,\n\t\t\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */,\n\t\t\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */,\n\t\t\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */,\n\t\t\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */,\n\t\t\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */,\n\t\t\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */,\n\t\t\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */,\n\t\t\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */,\n\t\t\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */,\n\t\t\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */,\n\t\t\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */,\n\t\t\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */,\n\t\t\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */,\n\t\t\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */,\n\t\t\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */,\n\t\t\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */,\n\t\t\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */,\n\t\t\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA8195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */,\n\t\t\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB3195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F1A74361940169200FFFC47 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */;\n\t\t\ttargetProxy = 1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F1A743D1940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = NO;\n\t\t\t\tCLANG_LINK_OBJC_RUNTIME = NO;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2,3\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A743E1940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = NO;\n\t\t\t\tCLANG_LINK_OBJC_RUNTIME = NO;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2,3\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74401940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74411940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74431940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74441940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1671BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1691BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC1195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC2195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC4195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC5195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A743D1940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A743E1940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74401940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74411940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74431940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74441940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1671BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1691BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC1195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC2195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC4195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC5195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 1F1A74201940169200FFFC47 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Nimble.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-OSX\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EB6195C0D6300ED456B\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-OSXTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-OSX\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-iOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74331940169200FFFC47\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-iOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-iOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-tvOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF15D1BDCA0CE00C3A531\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-tvOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Nimble\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/README.md",
    "content": "# Nimble\n\nUse Nimble to express the expected outcomes of Swift\nor Objective-C expressions. Inspired by\n[Cedar](https://github.com/pivotal/cedar).\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n\n# How to Use Nimble\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [Some Background: Expressing Outcomes Using Assertions in XCTest](#some-background-expressing-outcomes-using-assertions-in-xctest)\n- [Nimble: Expectations Using `expect(...).to`](#nimble-expectations-using-expectto)\n  - [Custom Failure Messages](#custom-failure-messages)\n  - [Type Checking](#type-checking)\n  - [Operator Overloads](#operator-overloads)\n  - [Lazily Computed Values](#lazily-computed-values)\n  - [C Primitives](#c-primitives)\n  - [Asynchronous Expectations](#asynchronous-expectations)\n  - [Objective-C Support](#objective-c-support)\n  - [Disabling Objective-C Shorthand](#disabling-objective-c-shorthand)\n- [Built-in Matcher Functions](#built-in-matcher-functions)\n  - [Equivalence](#equivalence)\n  - [Identity](#identity)\n  - [Comparisons](#comparisons)\n  - [Types/Classes](#typesclasses)\n  - [Truthiness](#truthiness)\n  - [Swift Error Handling](#swift-error-handling)\n  - [Exceptions](#exceptions)\n  - [Collection Membership](#collection-membership)\n  - [Strings](#strings)\n  - [Checking if all elements of a collection pass a condition](#checking-if-all-elements-of-a-collection-pass-a-condition)\n  - [Verify collection count](#verify-collection-count)\n  - [Matching a value to any of a group of matchers](#matching-a-value-to-any-of-a-group-of-matchers)\n- [Writing Your Own Matchers](#writing-your-own-matchers)\n  - [Lazy Evaluation](#lazy-evaluation)\n  - [Type Checking via Swift Generics](#type-checking-via-swift-generics)\n  - [Customizing Failure Messages](#customizing-failure-messages)\n  - [Supporting Objective-C](#supporting-objective-c)\n    - [Properly Handling `nil` in Objective-C Matchers](#properly-handling-nil-in-objective-c-matchers)\n- [Installing Nimble](#installing-nimble)\n  - [Installing Nimble as a Submodule](#installing-nimble-as-a-submodule)\n  - [Installing Nimble via CocoaPods](#installing-nimble-via-cocoapods)\n  - [Using Nimble without XCTest](#using-nimble-without-xctest)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Some Background: Expressing Outcomes Using Assertions in XCTest\n\nApple's Xcode includes the XCTest framework, which provides\nassertion macros to test whether code behaves properly.\nFor example, to assert that `1 + 1 = 2`, XCTest has you write:\n\n```swift\n// Swift\n\nXCTAssertEqual(1 + 1, 2, \"expected one plus one to equal two\")\n```\n\nOr, in Objective-C:\n\n```objc\n// Objective-C\n\nXCTAssertEqual(1 + 1, 2, @\"expected one plus one to equal two\");\n```\n\nXCTest assertions have a couple of drawbacks:\n\n1. **Not enough macros.** There's no easy way to assert that a string\n   contains a particular substring, or that a number is less than or\n   equal to another.\n2. **It's hard to write asynchronous tests.** XCTest forces you to write\n   a lot of boilerplate code.\n\nNimble addresses these concerns.\n\n# Nimble: Expectations Using `expect(...).to`\n\nNimble allows you to express expectations using a natural,\neasily understood language:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).to(equal(\"Squee!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).to(equal(@\"Squee!\"));\n```\n\n> The `expect` function autocompletes to include `file:` and `line:`,\n  but these parameters are optional. Use the default values to have\n  Xcode highlight the correct line when an expectation is not met.\n\nTo perform the opposite expectation--to assert something is *not*\nequal--use `toNot` or `notTo`:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).toNot(equal(\"Oh, hello there!\"))\nexpect(seagull.squawk).notTo(equal(\"Oh, hello there!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).toNot(equal(@\"Oh, hello there!\"));\nexpect(seagull.squawk).notTo(equal(@\"Oh, hello there!\"));\n```\n\n## Custom Failure Messages\n\nWould you like to add more information to the test's failure messages? Use the `description` optional argument to add your own text:\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(3))\n// failed - expected to equal <3>, got <2>\n\nexpect(1 + 1).to(equal(3), description: \"Make sure libKindergartenMath is loaded\")\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3>, got <2>\n```\n\nOr the *WithDescription version in Objective-C:\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(@(1+1)).to(equal(@3));\n// failed - expected to equal <3.0000>, got <2.0000>\n\nexpect(@(1+1)).toWithDescription(equal(@3), @\"Make sure libKindergartenMath is loaded\");\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3.0000>, got <2.0000>\n```\n\n## Type Checking\n\nNimble makes sure you don't compare two types that don't match:\n\n```swift\n// Swift\n\n// Does not compile:\nexpect(1 + 1).to(equal(\"Squee!\"))\n```\n\n> Nimble uses generics--only available in Swift--to ensure\n  type correctness. That means type checking is\n  not available when using Nimble in Objective-C. :sob:\n\n## Operator Overloads\n\nTired of so much typing? With Nimble, you can use overloaded operators\nlike `==` for equivalence, or `>` for comparisons:\n\n```swift\n// Swift\n\n// Passes if squawk does not equal \"Hi!\":\nexpect(seagull.squawk) != \"Hi!\"\n\n// Passes if 10 is greater than 2:\nexpect(10) > 2\n```\n\n> Operator overloads are only available in Swift, so you won't be able\n  to use this syntax in Objective-C. :broken_heart:\n\n## Lazily Computed Values\n\nThe `expect` function doesn't evaluate the value it's given until it's\ntime to match. So Nimble can test whether an expression raises an\nexception once evaluated:\n\n```swift\n// Swift\n\n// Note: Swift currently doesn't have exceptions.\n//       Only Objective-C code can raise exceptions\n//       that Nimble will catch.\n//       (see https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)\nlet exception = NSException(\n  name: NSInternalInconsistencyException,\n  reason: \"Not enough fish in the sea.\",\n  userInfo: [\"something\": \"is fishy\"])\nexpect { exception.raise() }.to(raiseException())\n\n// Also, you can customize raiseException to be more specific\nexpect { exception.raise() }.to(raiseException(named: NSInternalInconsistencyException))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\"))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\",\n    userInfo: [\"something\": \"is fishy\"]))\n```\n\nObjective-C works the same way, but you must use the `expectAction`\nmacro when making an expectation on an expression that has no return\nvalue:\n\n```objc\n// Objective-C\n\nNSException *exception = [NSException exceptionWithName:NSInternalInconsistencyException\n                                                 reason:@\"Not enough fish in the sea.\"\n                                               userInfo:nil];\nexpectAction(^{ [exception raise]; }).to(raiseException());\n\n// Use the property-block syntax to be more specific.\nexpectAction(^{ [exception raise]; }).to(raiseException().named(NSInternalInconsistencyException));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\"));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\").\n    userInfo(@{@\"something\": @\"is fishy\"}));\n\n// You can also pass a block for custom matching of the raised exception\nexpectAction(exception.raise()).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(NSInternalInconsistencyException));\n}));\n```\n\n## C Primitives\n\nSome testing frameworks make it hard to test primitive C values.\nIn Nimble, it just works:\n\n```swift\n// Swift\n\nlet actual: CInt = 1\nlet expectedValue: CInt = 1\nexpect(actual).to(equal(expectedValue))\n```\n\nIn fact, Nimble uses type inference, so you can write the above\nwithout explicitly specifying both types:\n\n```swift\n// Swift\n\nexpect(1 as CInt).to(equal(1))\n```\n\n> In Objective-C, Nimble only supports Objective-C objects. To\n  make expectations on primitive C values, wrap then in an object\n  literal:\n\n  ```objc\n  expect(@(1 + 1)).to(equal(@2));\n  ```\n\n## Asynchronous Expectations\n\nIn Nimble, it's easy to make expectations on values that are updated\nasynchronously. Just use `toEventually` or `toEventuallyNot`:\n\n```swift\n// Swift\n\ndispatch_async(dispatch_get_main_queue()) {\n  ocean.add(\"dolphins\")\n  ocean.add(\"whales\")\n}\nexpect(ocean).toEventually(contain(\"dolphins\", \"whales\"))\n```\n\n\n```objc\n// Objective-C\ndispatch_async(dispatch_get_main_queue(), ^{\n  [ocean add:@\"dolphins\"];\n  [ocean add:@\"whales\"];\n});\nexpect(ocean).toEventually(contain(@\"dolphins\", @\"whales\"));\n```\n\nNote: toEventually triggers its polls on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop. This can cause test pollution\nfor whatever incomplete code that was running on the main thread.  Blocking the\nmain thread can be caused by blocking IO, calls to sleep(), deadlocks, and\nsynchronous IPC.\n\nIn the above example, `ocean` is constantly re-evaluated. If it ever\ncontains dolphins and whales, the expectation passes. If `ocean` still\ndoesn't contain them, even after being continuously re-evaluated for one\nwhole second, the expectation fails.\n\nSometimes it takes more than a second for a value to update. In those\ncases, use the `timeout` parameter:\n\n```swift\n// Swift\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).toEventually(contain(\"starfish\"), timeout: 3)\n```\n\n```objc\n// Objective-C\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).withTimeout(3).toEventually(contain(@\"starfish\"));\n```\n\nYou can also provide a callback by using the `waitUntil` function:\n\n```swift\n// Swift\n\nwaitUntil { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(0.5)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntil(^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:0.5];\n  done();\n});\n```\n\n`waitUntil` also optionally takes a timeout parameter:\n\n```swift\n// Swift\n\nwaitUntil(timeout: 10) { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(1)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntilTimeout(10, ^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:1];\n  done();\n});\n```\n\nNote: waitUntil triggers its timeout code on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop to continue. This can cause test\npollution for whatever incomplete code that was running on the main thread.\nBlocking the main thread can be caused by blocking IO, calls to sleep(),\ndeadlocks, and synchronous IPC.\n\nIn some cases (e.g. when running on slower machines) it can be useful to modify\nthe default timeout and poll interval values. This can be done as follows:\n\n```swift\n// Swift\n\n// Increase the global timeout to 5 seconds:\nNimble.AsyncDefaults.Timeout = 5\n\n// Slow the polling interval to 0.1 seconds:\nNimble.AsyncDefaults.PollInterval = 0.1\n```\n\n## Objective-C Support\n\nNimble has full support for Objective-C. However, there are two things\nto keep in mind when using Nimble in Objective-C:\n\n1. All parameters passed to the `expect` function, as well as matcher\n   functions like `equal`, must be Objective-C objects:\n\n   ```objc\n   // Objective-C\n\n   @import Nimble;\n\n   expect(@(1 + 1)).to(equal(@2));\n   expect(@\"Hello world\").to(contain(@\"world\"));\n   ```\n\n2. To make an expectation on an expression that does not return a value,\n   such as `-[NSException raise]`, use `expectAction` instead of\n   `expect`:\n\n   ```objc\n   // Objective-C\n\n   expectAction(^{ [exception raise]; }).to(raiseException());\n   ```\n\n## Disabling Objective-C Shorthand\n\nNimble provides a shorthand for expressing expectations using the\n`expect` function. To disable this shorthand in Objective-C, define the\n`NIMBLE_DISABLE_SHORT_SYNTAX` macro somewhere in your code before\nimporting Nimble:\n\n```objc\n#define NIMBLE_DISABLE_SHORT_SYNTAX 1\n\n@import Nimble;\n\nNMB_expect(^{ return seagull.squawk; }, __FILE__, __LINE__).to(NMB_equal(@\"Squee!\"));\n```\n\n> Disabling the shorthand is useful if you're testing functions with\n  names that conflict with Nimble functions, such as `expect` or\n  `equal`. If that's not the case, there's no point in disabling the\n  shorthand.\n\n# Built-in Matcher Functions\n\nNimble includes a wide variety of matcher functions.\n\n## Equivalence\n\n```swift\n// Swift\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\nexpect(actual) == expected\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\nexpect(actual) != expected\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\n```\n\nValues must be `Equatable`, `Comparable`, or subclasses of `NSObject`.\n`equal` will always fail when used to compare one or more `nil` values.\n\n## Identity\n\n```swift\n// Swift\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected))\nexpect(actual) === expected\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected))\nexpect(actual) !== expected\n```\n\nIts important to remember that `beIdenticalTo` only makes sense when comparing types with reference semantics, which have a notion of identity. In Swift, that means a `class`. This matcher will not work with types with value semantics such as `struct` or `enum`. If you need to compare two value types, you can either compare individual properties or if it makes sense to do so, make your type implement `Equatable` and use Nimble's equivalence matchers instead.\n\n\n```objc\n// Objective-C\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected));\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected));\n```\n\n## Comparisons\n\n```swift\n// Swift\n\nexpect(actual).to(beLessThan(expected))\nexpect(actual) < expected\n\nexpect(actual).to(beLessThanOrEqualTo(expected))\nexpect(actual) <= expected\n\nexpect(actual).to(beGreaterThan(expected))\nexpect(actual) > expected\n\nexpect(actual).to(beGreaterThanOrEqualTo(expected))\nexpect(actual) >= expected\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beLessThan(expected));\nexpect(actual).to(beLessThanOrEqualTo(expected));\nexpect(actual).to(beGreaterThan(expected));\nexpect(actual).to(beGreaterThanOrEqualTo(expected));\n```\n\n> Values given to the comparison matchers above must implement\n  `Comparable`.\n\nBecause of how computers represent floating point numbers, assertions\nthat two floating point numbers be equal will sometimes fail. To express\nthat two numbers should be close to one another within a certain margin\nof error, use `beCloseTo`:\n\n```swift\n// Swift\n\nexpect(actual).to(beCloseTo(expected, within: delta))\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beCloseTo(expected).within(delta));\n```\n\nFor example, to assert that `10.01` is close to `10`, you can write:\n\n```swift\n// Swift\n\nexpect(10.01).to(beCloseTo(10, within: 0.1))\n```\n\n```objc\n// Objective-C\n\nexpect(@(10.01)).to(beCloseTo(@10).within(0.1));\n```\n\nThere is also an operator shortcut available in Swift:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected\nexpect(actual) ≈ (expected, delta)\n\n```\n(Type Option-x to get ≈ on a U.S. keyboard)\n\nThe former version uses the default delta of 0.0001. Here is yet another way to do this:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected ± delta\nexpect(actual) == expected ± delta\n\n```\n(Type Option-Shift-= to get ± on a U.S. keyboard)\n\nIf you are comparing arrays of floating point numbers, you'll find the following useful:\n\n```swift\n// Swift\n\nexpect([0.0, 2.0]) ≈ [0.0001, 2.0001]\nexpect([0.0, 2.0]).to(beCloseTo([0.1, 2.1], within: 0.1))\n\n```\n\n> Values given to the `beCloseTo` matcher must be coercable into a\n  `Double`.\n\n## Types/Classes\n\n```swift\n// Swift\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass))\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass))\n```\n\n```objc\n// Objective-C\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass));\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass));\n```\n\n> Instances must be Objective-C objects: subclasses of `NSObject`,\n  or Swift objects bridged to Objective-C with the `@objc` prefix.\n\nFor example, to assert that `dolphin` is a kind of `Mammal`:\n\n```swift\n// Swift\n\nexpect(dolphin).to(beAKindOf(Mammal))\n```\n\n```objc\n// Objective-C\n\nexpect(dolphin).to(beAKindOf([Mammal class]));\n```\n\n> `beAnInstanceOf` uses the `-[NSObject isMemberOfClass:]` method to\n  test membership. `beAKindOf` uses `-[NSObject isKindOfClass:]`.\n\n## Truthiness\n\n```swift\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy())\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue())\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy())\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse())\n\n// Passes if actual is nil:\nexpect(actual).to(beNil())\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy());\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue());\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy());\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse());\n\n// Passes if actual is nil:\nexpect(actual).to(beNil());\n```\n\n## Swift Error Handling\n\nIf you're using Swift 2.0+, you can use the `throwError` matcher to check if an error is thrown.\n\n```swift\n// Swift\n\n// Passes if somethingThatThrows() throws an ErrorType:\nexpect{ try somethingThatThrows() }.to(throwError())\n\n// Passes if somethingThatThrows() throws an error with a given domain:\nexpect{ try somethingThatThrows() }.to(throwError { (error: ErrorType) in\n    expect(error._domain).to(equal(NSCocoaErrorDomain))\n})\n\n// Passes if somethingThatThrows() throws an error with a given case:\nexpect{ try somethingThatThrows() }.to(throwError(NSCocoaError.PropertyListReadCorruptError))\n\n// Passes if somethingThatThrows() throws an error with a given type:\nexpect{ try somethingThatThrows() }.to(throwError(errorType: MyError.self))\n```\n\nIf you are working directly with `ErrorType` values, as is sometimes the case when using `Result` or `Promise` types, you can use the `matchError` matcher to check if the error is the same error is is supposed to be, without requiring explicit casting.\n\n```swift\n// Swift\n\nlet actual: ErrorType = …\n\n// Passes if actual contains any error value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum))\n\n// Passes if actual contains the Timeout value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum.Timeout))\n\n// Passes if actual contains an NSError equal to the given one:\nexpect(actual).to(matchError(NSError(domain: \"err\", code: 123, userInfo: nil)))\n```\n\nNote: This feature is only available in Swift.\n\n## Exceptions\n\n```swift\n// Swift\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name:\nexpect(actual).to(raiseException(named: name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException(named: name, reason: reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect { exception.raise() }.to(raiseException { (exception: NSException) in\n    expect(exception.name).to(beginWith(\"a r\"))\n})\n```\n\n```objc\n// Objective-C\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name\nexpect(actual).to(raiseException().named(name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException().named(name).reason(reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect(actual).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(@\"a r\"));\n}));\n```\n\nNote: Swift currently doesn't have exceptions (see [#220](https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)). Only Objective-C code can raise\nexceptions that Nimble will catch.\n\n## Collection Membership\n\n```swift\n// Swift\n\n// Passes if all of the expected values are members of actual:\nexpect(actual).to(contain(expected...))\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty())\n```\n\n```objc\n// Objective-C\n\n// Passes if expected is a member of actual:\nexpect(actual).to(contain(expected));\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty());\n```\n\n> In Swift `contain` takes any number of arguments. The expectation\n  passes if all of them are members of the collection. In Objective-C,\n  `contain` only takes one argument [for now](https://github.com/Quick/Nimble/issues/27).\n\nFor example, to assert that a list of sea creature names contains\n\"dolphin\" and \"starfish\":\n\n```swift\n// Swift\n\nexpect([\"whale\", \"dolphin\", \"starfish\"]).to(contain(\"dolphin\", \"starfish\"))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"dolphin\"));\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"starfish\"));\n```\n\n> `contain` and `beEmpty` expect collections to be instances of\n  `NSArray`, `NSSet`, or a Swift collection composed of `Equatable` elements.\n\nTo test whether a set of elements is present at the beginning or end of\nan ordered collection, use `beginWith` and `endWith`:\n\n```swift\n// Swift\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected...))\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected...))\n```\n\n```objc\n// Objective-C\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected));\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected));\n```\n\n> `beginWith` and `endWith` expect collections to be instances of\n  `NSArray`, or ordered Swift collections composed of `Equatable`\n  elements.\n\n  Like `contain`, in Objective-C `beginWith` and `endWith` only support\n  a single argument [for now](https://github.com/Quick/Nimble/issues/27).\n\n## Strings\n\n```swift\n// Swift\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected))\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected))\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected))\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty())\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n```objc\n// Objective-C\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected));\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected));\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected));\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty());\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n## Checking if all elements of a collection pass a condition\n\n```swift\n// Swift\n\n// with a custom function:\nexpect([1,2,3,4]).to(allPass({$0 < 5}))\n\n// with another matcher:\nexpect([1,2,3,4]).to(allPass(beLessThan(5)))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n```\n\nFor Swift the actual value has to be a SequenceType, e.g. an array, a set or a custom seqence type.\n\nFor Objective-C the actual value has to be a NSFastEnumeration, e.g. NSArray and NSSet, of NSObjects and only the variant which\nuses another matcher is available here.\n\n## Verify collection count\n\n```swift\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\n```objc\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\nFor Swift the actual value must be a `CollectionType` such as array, dictionary or set.\n\nFor Objective-C the actual value has to be one of the following classes `NSArray`, `NSDictionary`, `NSSet`, `NSHashTable` or one of their subclasses.\n\n## Matching a value to any of a group of matchers\n\n```swift\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(10), beGreaterThan(20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(6).to(satisfyAnyOf(equal(2), equal(3), equal(4), equal(5), equal(6), equal(7)))\n\n// in Swift you also have the option to use the || operator to achieve a similar function\nexpect(82).to(beLessThan(50) || beGreaterThan(80))\n```\n\n```objc\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(@10), beGreaterThan(@20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(@6).to(satisfyAnyOf(equal(@2), equal(@3), equal(@4), equal(@5), equal(@6), equal(@7)))\n```\n\nNote: This matcher allows you to chain any number of matchers together. This provides flexibility, \n      but if you find yourself chaining many matchers together in one test, consider whether you  \n      could instead refactor that single test into multiple, more precisely focused tests for \n      better coverage. \n\n# Writing Your Own Matchers\n\nIn Nimble, matchers are Swift functions that take an expected\nvalue and return a `MatcherFunc` closure. Take `equal`, for example:\n\n```swift\n// Swift\n\npublic func equal<T: Equatable>(expectedValue: T?) -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"equal <\\(expectedValue)>\"\n    return actualExpression.evaluate() == expectedValue\n  }\n}\n```\n\nThe return value of a `MatcherFunc` closure is a `Bool` that indicates\nwhether the actual value matches the expectation: `true` if it does, or\n`false` if it doesn't.\n\n> The actual `equal` matcher function does not match when either\n  `actual` or `expected` are nil; the example above has been edited for\n  brevity.\n\nSince matchers are just Swift functions, you can define them anywhere:\nat the top of your test file, in a file shared by all of your tests, or\nin an Xcode project you distribute to others.\n\n> If you write a matcher you think everyone can use, consider adding it\n  to Nimble's built-in set of matchers by sending a pull request! Or\n  distribute it yourself via GitHub.\n\nFor examples of how to write your own matchers, just check out the\n[`Matchers` directory](https://github.com/Quick/Nimble/tree/master/Sources/Nimble/Matchers)\nto see how Nimble's built-in set of matchers are implemented. You can\nalso check out the tips below.\n\n## Lazy Evaluation\n\n`actualExpression` is a lazy, memoized closure around the value provided to the\n`expect` function. The expression can either be a closure or a value directly\npassed to `expect(...)`. In order to determine whether that value matches,\ncustom matchers should call `actualExpression.evaluate()`:\n\n```swift\n// Swift\n\npublic func beNil<T>() -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"be nil\"\n    return actualExpression.evaluate() == nil\n  }\n}\n```\n\nIn the above example, `actualExpression` is not `nil`--it is a closure\nthat returns a value. The value it returns, which is accessed via the\n`evaluate()` method, may be `nil`. If that value is `nil`, the `beNil`\nmatcher function returns `true`, indicating that the expectation passed.\n\nUse `expression.isClosure` to determine if the expression will be invoking\na closure to produce its value.\n\n## Type Checking via Swift Generics\n\nUsing Swift's generics, matchers can constrain the type of the actual value\npassed to the `expect` function by modifying the return type.\n\nFor example, the following matcher, `haveDescription`, only accepts actual\nvalues that implement the `Printable` protocol. It checks their `description`\nagainst the one provided to the matcher function, and passes if they are the same:\n\n```swift\n// Swift\n\npublic func haveDescription(description: String) -> MatcherFunc<Printable?> {\n  return MatcherFunc { actual, failureMessage in\n    return actual.evaluate().description == description\n  }\n}\n```\n\n## Customizing Failure Messages\n\nBy default, Nimble outputs the following failure message when an\nexpectation fails:\n\n```\nexpected to match, got <\\(actual)>\n```\n\nYou can customize this message by modifying the `failureMessage` struct\nfrom within your `MatcherFunc` closure. To change the verb \"match\" to\nsomething else, update the `postfixMessage` property:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea, got <\\(actual)>\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\nYou can change how the `actual` value is displayed by updating\n`failureMessage.actualValue`. Or, to remove it altogether, set it to\n`nil`:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea\nfailureMessage.actualValue = nil\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\n## Supporting Objective-C\n\nTo use a custom matcher written in Swift from Objective-C, you'll have\nto extend the `NMBObjCMatcher` class, adding a new class method for your\ncustom matcher. The example below defines the class method\n`+[NMBObjCMatcher beNilMatcher]`:\n\n```swift\n// Swift\n\nextension NMBObjCMatcher {\n  public class func beNilMatcher() -> NMBObjCMatcher {\n    return NMBObjCMatcher { actualBlock, failureMessage, location in\n      let block = ({ actualBlock() as NSObject? })\n      let expr = Expression(expression: block, location: location)\n      return beNil().matches(expr, failureMessage: failureMessage)\n    }\n  }\n}\n```\n\nThe above allows you to use the matcher from Objective-C:\n\n```objc\n// Objective-C\n\nexpect(actual).to([NMBObjCMatcher beNilMatcher]());\n```\n\nTo make the syntax easier to use, define a C function that calls the\nclass method:\n\n```objc\n// Objective-C\n\nFOUNDATION_EXPORT id<NMBMatcher> beNil() {\n  return [NMBObjCMatcher beNilMatcher];\n}\n```\n\n### Properly Handling `nil` in Objective-C Matchers\n\nWhen supporting Objective-C, make sure you handle `nil` appropriately.\nLike [Cedar](https://github.com/pivotal/cedar/issues/100),\n**most matchers do not match with nil**. This is to bring prevent test\nwriters from being surprised by `nil` values where they did not expect\nthem.\n\nNimble provides the `beNil` matcher function for test writer that want\nto make expectations on `nil` objects:\n\n```objc\n// Objective-C\n\nexpect(nil).to(equal(nil)); // fails\nexpect(nil).to(beNil());    // passes\n```\n\nIf your matcher does not want to match with nil, you use `NonNilMatcherFunc`\nand the `canMatchNil` constructor on `NMBObjCMatcher`. Using both types will\nautomatically generate expected value failure messages when they're nil.\n\n```swift\n\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.evaluate()\n            let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n            return beginWith(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n```\n\n# Installing Nimble\n\n> Nimble can be used on its own, or in conjunction with its sister\n  project, [Quick](https://github.com/Quick/Quick). To install both\n  Quick and Nimble, follow [the installation instructions in the Quick\n  README](https://github.com/Quick/Quick#how-to-install-quick).\n\nNimble can currently be installed in one of two ways: using CocoaPods, or with\ngit submodules.\n\n## Installing Nimble as a Submodule\n\nTo use Nimble as a submodule to test your iOS or OS X applications, follow these\n4 easy steps:\n\n1. Clone the Nimble repository\n2. Add Nimble.xcodeproj to the Xcode workspace for your project\n3. Link Nimble.framework to your test target\n4. Start writing expectations!\n\nFor more detailed instructions on each of these steps,\nread [How to Install Quick](https://github.com/Quick/Quick#how-to-install-quick).\nIgnore the steps involving adding Quick to your project in order to\ninstall just Nimble.\n\n## Installing Nimble via CocoaPods\n\nTo use Nimble in CocoaPods to test your iOS or OS X applications, add Nimble to\nyour podfile and add the ```use_frameworks!``` line to enable Swift support for\nCocoaPods.\n\n```ruby\nplatform :ios, '8.0'\n\nsource 'https://github.com/CocoaPods/Specs.git'\n\n# Whatever pods you need for your app go here\n\ntarget 'YOUR_APP_NAME_HERE_Tests', :exclusive => true do\n  use_frameworks!\n  pod 'Nimble', '~> 4.0.0'\nend\n```\n\nFinally run `pod install`.\n\n## Using Nimble without XCTest\n\nNimble is integrated with XCTest to allow it work well when used in Xcode test\nbundles, however it can also be used in a standalone app. After installing\nNimble using one of the above methods, there are two additional steps required\nto make this work.\n\n1. Create a custom assertion handler and assign an instance of it to the\n   global `NimbleAssertionHandler` variable. For example:\n\n```swift\nclass MyAssertionHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if (!assertion) {\n            print(\"Expectation failed: \\(message.stringValue)\")\n        }\n    }\n}\n```\n```swift\n// Somewhere before you use any assertions\nNimbleAssertionHandler = MyAssertionHandler()\n```\n\n2. Add a post-build action to fix an issue with the Swift XCTest support\n   library being unnecessarily copied into your app\n  * Edit your scheme in Xcode, and navigate to Build -> Post-actions\n  * Click the \"+\" icon and select \"New Run Script Action\"\n  * Open the \"Provide build settings from\" dropdown and select your target\n  * Enter the following script contents:\n```\nrm \"${SWIFT_STDLIB_TOOL_DESTINATION_DIR}/libswiftXCTest.dylib\"\n```\n\nYou can now use Nimble assertions in your code and handle failures as you see\nfit.\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AdapterProtocols.swift",
    "content": "import Foundation\n\n/// Protocol for the assertion handler that Nimble uses for all expectations.\npublic protocol AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation)\n}\n\n/// Global backing interface for assertions that Nimble creates.\n/// Defaults to a private test handler that passes through to XCTest.\n///\n/// If XCTest is not available, you must assign your own assertion handler\n/// before using any matchers, otherwise Nimble will abort the program.\n///\n/// @see AssertionHandler\npublic var NimbleAssertionHandler: AssertionHandler = { () -> AssertionHandler in\n    return isXCTestAvailable() ? NimbleXCTestHandler() : NimbleXCTestUnavailableHandler()\n}()\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AssertionDispatcher.swift",
    "content": "\n/// AssertionDispatcher allows multiple AssertionHandlers to receive\n/// assertion messages.\n///\n/// @warning Does not fully dispatch if one of the handlers raises an exception.\n///          This is possible with XCTest-based assertion handlers.\n///\npublic class AssertionDispatcher: AssertionHandler {\n    let handlers: [AssertionHandler]\n\n    public init(handlers: [AssertionHandler]) {\n        self.handlers = handlers\n    }\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        for handler in handlers {\n            handler.assert(assertion, message: message, location: location)\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift",
    "content": "import Foundation\n\n/// A data structure that stores information about an assertion when\n/// AssertionRecorder is set as the Nimble assertion handler.\n///\n/// @see AssertionRecorder\n/// @see AssertionHandler\npublic struct AssertionRecord: CustomStringConvertible {\n    /// Whether the assertion succeeded or failed\n    public let success: Bool\n    /// The failure message the assertion would display on failure.\n    public let message: FailureMessage\n    /// The source location the expectation occurred on.\n    public let location: SourceLocation\n\n    public var description: String {\n        return \"AssertionRecord { success=\\(success), message='\\(message.stringValue)', location=\\(location) }\"\n    }\n}\n\n/// An AssertionHandler that silently records assertions that Nimble makes.\n/// This is useful for testing failure messages for matchers.\n///\n/// @see AssertionHandler\npublic class AssertionRecorder : AssertionHandler {\n    /// All the assertions that were captured by this recorder\n    public var assertions = [AssertionRecord]()\n\n    public init() {}\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        assertions.append(\n            AssertionRecord(\n                success: assertion,\n                message: message,\n                location: location))\n    }\n}\n\n/// Allows you to temporarily replace the current Nimble assertion handler with\n/// the one provided for the scope of the closure.\n///\n/// Once the closure finishes, then the original Nimble assertion handler is restored.\n///\n/// @see AssertionHandler\npublic func withAssertionHandler(tempAssertionHandler: AssertionHandler, closure: () throws -> Void) {\n    let environment = NimbleEnvironment.activeInstance\n    let oldRecorder = environment.assertionHandler\n    let capturer = NMBExceptionCapture(handler: nil, finally: ({\n        environment.assertionHandler = oldRecorder\n    }))\n    environment.assertionHandler = tempAssertionHandler\n    capturer.tryBlock {\n        try! closure()\n    }\n}\n\n/// Captures expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about expectations\n/// that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble \n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherFailingExpectations\npublic func gatherExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let previousRecorder = NimbleEnvironment.activeInstance.assertionHandler\n    let recorder = AssertionRecorder()\n    let handlers: [AssertionHandler]\n\n    if silently {\n        handlers = [recorder]\n    } else {\n        handlers = [recorder, previousRecorder]\n    }\n\n    let dispatcher = AssertionDispatcher(handlers: handlers)\n    withAssertionHandler(dispatcher, closure: closure)\n    return recorder.assertions\n}\n\n/// Captures failed expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about failed\n/// expectations that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble\n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherExpectations\n/// @see raiseException source for an example use case.\npublic func gatherFailingExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let assertions = gatherExpectations(silently: silently, closure: closure)\n    return assertions.filter { assertion in\n        !assertion.success\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift",
    "content": "import Foundation\n\n/// \"Global\" state of Nimble is stored here. Only DSL functions should access / be aware of this\n/// class' existance\ninternal class NimbleEnvironment {\n    static var activeInstance: NimbleEnvironment {\n        get {\n            let env = NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"]\n            if let env = env as? NimbleEnvironment {\n                return env\n            } else {\n                let newEnv = NimbleEnvironment()\n                self.activeInstance = newEnv\n                return newEnv\n            }\n        }\n        set {\n            NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"] = newValue\n        }\n    }\n\n    // TODO: eventually migrate the global to this environment value\n    var assertionHandler: AssertionHandler {\n        get { return NimbleAssertionHandler }\n        set { NimbleAssertionHandler = newValue }\n    }\n\n#if _runtime(_ObjC)\n    var awaiter: Awaiter\n\n    init() {\n        awaiter = Awaiter(\n            waitLock: AssertionWaitLock(),\n            asyncQueue: dispatch_get_main_queue(),\n            timeoutQueue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0))\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift",
    "content": "import Foundation\nimport XCTest\n\n/// Default handler for Nimble. This assertion handler passes failures along to\n/// XCTest.\npublic class NimbleXCTestHandler : AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            recordFailure(\"\\(message.stringValue)\\n\", location: location)\n        }\n    }\n}\n\n/// Alternative handler for Nimble. This assertion handler passes failures along\n/// to XCTest by attempting to reduce the failure message size.\npublic class NimbleShortXCTestHandler: AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            let msg: String\n            if let actual = message.actualValue {\n                msg = \"got: \\(actual) \\(message.postfixActual)\"\n            } else {\n                msg = \"expected \\(message.to) \\(message.postfixMessage)\"\n            }\n            recordFailure(\"\\(msg)\\n\", location: location)\n        }\n    }\n}\n\n/// Fallback handler in case XCTest is unavailable. This assertion handler will abort\n/// the program if it is invoked.\nclass NimbleXCTestUnavailableHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        fatalError(\"XCTest is not available and no custom assertion handler was configured. Aborting.\")\n    }\n}\n\n#if _runtime(_ObjC)\n    /// Helper class providing access to the currently executing XCTestCase instance, if any\n@objc final internal class CurrentTestCaseTracker: NSObject, XCTestObservation {\n    @objc static let sharedInstance = CurrentTestCaseTracker()\n\n    private(set) var currentTestCase: XCTestCase?\n\n    @objc func testCaseWillStart(testCase: XCTestCase) {\n        currentTestCase = testCase\n    }\n\n    @objc func testCaseDidFinish(testCase: XCTestCase) {\n        currentTestCase = nil\n    }\n}\n#endif\n\n\nfunc isXCTestAvailable() -> Bool {\n#if _runtime(_ObjC)\n    // XCTest is weakly linked and so may not be present\n    return NSClassFromString(\"XCTestCase\") != nil\n#else\n    return true\n#endif\n}\n\nprivate func recordFailure(message: String, location: SourceLocation) {\n#if _runtime(_ObjC)\n    if let testCase = CurrentTestCaseTracker.sharedInstance.currentTestCase {\n        testCase.recordFailureWithDescription(message, inFile: location.file, atLine: location.line, expected: true)\n    } else {\n        let msg = \"Attempted to report a test failure to XCTest while no test case was running. \" +\n        \"The failure was:\\n\\\"\\(message)\\\"\\nIt occurred at: \\(location.file):\\(location.line)\"\n        NSException(name: NSInternalInconsistencyException, reason: msg, userInfo: nil).raise()\n    }\n#else\n    XCTFail(\"\\(message)\\n\", file: location.file, line: location.line)\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NonObjectiveC/ExceptionCapture.swift",
    "content": "import Foundation\n\n#if !_runtime(_ObjC)\n// swift-corelibs-foundation doesn't provide NSException at all, so provide a dummy\nclass NSException {}\n#endif\n\n// NOTE: This file is not intended to be included in the Xcode project. It\n//       is picked up by the Swift Package Manager during its build process.\n\n/// A dummy reimplementation of the `NMBExceptionCapture` class to serve\n/// as a stand-in for build and runtime environments that don't support\n/// Objective C.\ninternal class ExceptionCapture {\n    let finally: (() -> Void)?\n\n    init(handler: ((NSException!) -> Void)?, finally: (() -> Void)?) {\n        self.finally = finally\n    }\n\n    func tryBlock(unsafeBlock: (() -> Void)) {\n        // We have no way of handling Objective C exceptions in Swift,\n        // so we just go ahead and run the unsafeBlock as-is\n        unsafeBlock()\n\n        finally?()\n    }\n}\n\n/// Compatibility with the actual Objective-C implementation\ntypealias NMBExceptionCapture = ExceptionCapture\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble22CurrentTestCaseTracker\")\n@interface CurrentTestCaseTracker : NSObject <XCTestObservation>\n+ (CurrentTestCaseTracker *)sharedInstance;\n@end\n\n@interface CurrentTestCaseTracker (Register) @end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class NMBExpectation;\n@class NMBObjCBeCloseToMatcher;\n@class NMBObjCRaiseExceptionMatcher;\n@protocol NMBMatcher;\n\n\n#define NIMBLE_EXPORT FOUNDATION_EXPORT\n\n#ifdef NIMBLE_DISABLE_SHORT_SYNTAX\n#define NIMBLE_SHORT(PROTO, ORIGINAL)\n#else\n#define NIMBLE_SHORT(PROTO, ORIGINAL) FOUNDATION_STATIC_INLINE PROTO { return (ORIGINAL); }\n#endif\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> equal(id expectedValue),\n             NMB_equal(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> haveCount(id expectedValue),\n             NMB_haveCount(expectedValue));\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue);\nNIMBLE_SHORT(NMBObjCBeCloseToMatcher *beCloseTo(id expectedValue),\n             NMB_beCloseTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAnInstanceOf(Class expectedClass),\n             NMB_beAnInstanceOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAKindOf(Class expectedClass),\n             NMB_beAKindOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> beginWith(id itemElementOrSubstring),\n             NMB_beginWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThan(NSNumber *expectedValue),\n             NMB_beGreaterThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beGreaterThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> beIdenticalTo(id expectedInstance),\n             NMB_beIdenticalTo(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> be(id expectedInstance),\n             NMB_be(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThan(NSNumber *expectedValue),\n             NMB_beLessThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beLessThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy(void);\nNIMBLE_SHORT(id<NMBMatcher> beTruthy(void),\n             NMB_beTruthy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalsy(void),\n             NMB_beFalsy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue(void);\nNIMBLE_SHORT(id<NMBMatcher> beTrue(void),\n             NMB_beTrue());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalse(void),\n             NMB_beFalse());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil(void);\nNIMBLE_SHORT(id<NMBMatcher> beNil(void),\n             NMB_beNil());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty(void);\nNIMBLE_SHORT(id<NMBMatcher> beEmpty(void),\n             NMB_beEmpty());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) NS_REQUIRES_NIL_TERMINATION;\n#define NMB_contain(...) NMB_containWithNilTermination(__VA_ARGS__, nil)\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define contain(...) NMB_contain(__VA_ARGS__)\n#endif\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> endWith(id itemElementOrSubstring),\n             NMB_endWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException(void);\nNIMBLE_SHORT(NMBObjCRaiseExceptionMatcher *raiseException(void),\n             NMB_raiseException());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> match(id expectedValue),\n             NMB_match(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id matcher);\nNIMBLE_SHORT(id<NMBMatcher> allPass(id matcher),\n             NMB_allPass(matcher));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers);\n#define NMB_satisfyAnyOf(...) NMB_satisfyAnyOfWithMatchers(@[__VA_ARGS__])\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define satisfyAnyOf(...) NMB_satisfyAnyOf(__VA_ARGS__)\n#endif\n\n// In order to preserve breakpoint behavior despite using macros to fill in __FILE__ and __LINE__,\n// define a builder that populates __FILE__ and __LINE__, and returns a block that takes timeout\n// and action arguments. See https://github.com/Quick/Quick/pull/185 for details.\ntypedef void (^NMBWaitUntilTimeoutBlock)(NSTimeInterval timeout, void (^action)(void (^)(void)));\ntypedef void (^NMBWaitUntilBlock)(void (^action)(void (^)(void)));\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\n#define NMB_waitUntilTimeout NMB_waitUntilTimeoutBuilder(@(__FILE__), __LINE__)\n#define NMB_waitUntil NMB_waitUntilBuilder(@(__FILE__), __LINE__)\n\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define expect(...) NMB_expect(^id{ return (__VA_ARGS__); }, @(__FILE__), __LINE__)\n#define expectAction(BLOCK) NMB_expectAction((BLOCK), @(__FILE__), __LINE__)\n#define failWithMessage(msg) NMB_failWithMessage(msg, @(__FILE__), __LINE__)\n#define fail() failWithMessage(@\"fail() always fails\")\n\n\n#define waitUntilTimeout NMB_waitUntilTimeout\n#define waitUntil NMB_waitUntil\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.m",
    "content": "#import <Nimble/DSL.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble7NMBWait\")\n@interface NMBWait : NSObject\n\n+ (void)untilTimeout:(NSTimeInterval)timeout file:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n+ (void)untilFile:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n\n@end\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line) {\n    return [[NMBExpectation alloc] initWithActualBlock:actualBlock\n                                              negative:NO\n                                                  file:file\n                                                  line:line];\n}\n\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line) {\n    return NMB_expect(^id{\n        actualBlock();\n        return nil;\n    }, file, line);\n}\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line) {\n    return [NMBExpectation failWithMessage:msg file:file line:line];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass) {\n    return [NMBObjCMatcher beAnInstanceOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass) {\n    return [NMBObjCMatcher beAKindOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beCloseToMatcher:expectedValue within:0.001];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher beginWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy() {\n    return [NMBObjCMatcher beTruthyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy() {\n    return [NMBObjCMatcher beFalsyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue() {\n    return [NMBObjCMatcher beTrueMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse() {\n    return [NMBObjCMatcher beFalseMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil() {\n    return [NMBObjCMatcher beNilMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty() {\n    return [NMBObjCMatcher beEmptyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) {\n    NSMutableArray *itemOrSubstringArray = [NSMutableArray array];\n\n    if (itemOrSubstring) {\n        [itemOrSubstringArray addObject:itemOrSubstring];\n\n        va_list args;\n        va_start(args, itemOrSubstring);\n        id next;\n        while ((next = va_arg(args, id))) {\n            [itemOrSubstringArray addObject:next];\n        }\n        va_end(args);\n    }\n\n    return [NMBObjCMatcher containMatcher:itemOrSubstringArray];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher endWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue) {\n    return [NMBObjCMatcher equalMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue) {\n    return [NMBObjCMatcher haveCountMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue) {\n    return [NMBObjCMatcher matchMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id expectedValue) {\n    return [NMBObjCMatcher allPassMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers) {\n    return [NMBObjCMatcher satisfyAnyOfMatcher:matchers];\n}\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException() {\n    return [NMBObjCMatcher raiseExceptionMatcher];\n}\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line) {\n    return ^(NSTimeInterval timeout, void (^action)(void (^)(void))) {\n        [NMBWait untilTimeout:timeout file:file line:line action:action];\n    };\n}\n\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line) {\n  return ^(void (^action)(void (^)(void))) {\n    [NMBWait untilFile:file line:line action:action];\n  };\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.h",
    "content": "#import <Foundation/Foundation.h>\n#import <dispatch/dispatch.h>\n\n@interface NMBExceptionCapture : NSObject\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally;\n- (void)tryBlock:(void(^)())unsafeBlock;\n\n@end\n\ntypedef void(^NMBSourceCallbackBlock)(BOOL successful);\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.m",
    "content": "#import \"NMBExceptionCapture.h\"\n\n@interface NMBExceptionCapture ()\n@property (nonatomic, copy) void(^handler)(NSException *exception);\n@property (nonatomic, copy) void(^finally)();\n@end\n\n@implementation NMBExceptionCapture\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally {\n    self = [super init];\n    if (self) {\n        self.handler = handler;\n        self.finally = finally;\n    }\n    return self;\n}\n\n- (void)tryBlock:(void(^)())unsafeBlock {\n    @try {\n        unsafeBlock();\n    }\n    @catch (NSException *exception) {\n        if (self.handler) {\n            self.handler(exception);\n        }\n    }\n    @finally {\n        if (self.finally) {\n            self.finally();\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExpectation.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\ninternal struct ObjCMatcherWrapper : Matcher {\n    let matcher: NMBMatcher\n\n    func matches(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.matches(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n\n    func doesNotMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.doesNotMatch(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n}\n\n// Equivalent to Expectation, but for Nimble's Objective-C interface\npublic class NMBExpectation : NSObject {\n    internal let _actualBlock: () -> NSObject!\n    internal var _negative: Bool\n    internal let _file: FileString\n    internal let _line: UInt\n    internal var _timeout: NSTimeInterval = 1.0\n\n    public init(actualBlock: () -> NSObject!, negative: Bool, file: FileString, line: UInt) {\n        self._actualBlock = actualBlock\n        self._negative = negative\n        self._file = file\n        self._line = line\n    }\n\n    private var expectValue: Expectation<NSObject> {\n        return expect(_file, line: _line){\n            self._actualBlock() as NSObject?\n        }\n    }\n\n    public var withTimeout: (NSTimeInterval) -> NMBExpectation {\n        return ({ timeout in self._timeout = timeout\n            return self\n        })\n    }\n\n    public var to: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher))\n        })\n    }\n\n    public var toWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher), description: description)\n        })\n    }\n\n    public var toNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher)\n            )\n        })\n    }\n\n    public var toNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher), description: description\n            )\n        })\n    }\n\n    public var notTo: (NMBMatcher) -> Void { return toNot }\n\n    public var notToWithDescription: (NMBMatcher, String) -> Void { return toNotWithDescription }\n\n    public var toEventually: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toEventuallyNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toNotEventually: (NMBMatcher) -> Void { return toEventuallyNot }\n\n    public var toNotEventuallyWithDescription: (NMBMatcher, String) -> Void { return toEventuallyNotWithDescription }\n\n    public class func failWithMessage(message: String, file: FileString, line: UInt) {\n        fail(message, location: SourceLocation(file: file, line: line))\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBObjCMatcher.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic typealias MatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool\npublic typealias FullMatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage, shouldNotMatch: Bool) -> Bool\n\npublic class NMBObjCMatcher : NSObject, NMBMatcher {\n    let _match: MatcherBlock\n    let _doesNotMatch: MatcherBlock\n    let canMatchNil: Bool\n\n    public init(canMatchNil: Bool, matcher: MatcherBlock, notMatcher: MatcherBlock) {\n        self.canMatchNil = canMatchNil\n        self._match = matcher\n        self._doesNotMatch = notMatcher\n    }\n\n    public convenience init(matcher: MatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: MatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: matcher, notMatcher: ({ actualExpression, failureMessage in\n            return !matcher(actualExpression: actualExpression, failureMessage: failureMessage)\n        }))\n    }\n\n    public convenience init(matcher: FullMatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: FullMatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: false)\n        }), notMatcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: true)\n        }))\n    }\n\n    private func canMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        do {\n            if !canMatchNil {\n                if try actualExpression.evaluate() == nil {\n                    failureMessage.postfixActual = \" (use beNil() to match nils)\"\n                    return false\n                }\n            }\n        } catch let error {\n            failureMessage.actualValue = \"an unexpected error thrown: \\(error)\"\n            return false\n        }\n        return true\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _match(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _doesNotMatch(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.h",
    "content": "@class NSString;\n\n/**\n * Returns a string appropriate for displaying in test output\n * from the provided value.\n *\n * @param value A value that will show up in a test's output.\n *\n * @return The string that is returned can be\n *     customized per type by conforming a type to the `TestOutputStringConvertible`\n *     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n *     function will return the value's debug description and then its\n *     normal description if available and in that order. Otherwise it\n *     will return the result of constructing a string from the value.\n *\n * @see `TestOutputStringConvertible`\n */\nextern NSString *_Nonnull NMBStringify(id _Nullable anyObject) __attribute__((warn_unused_result));\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.m",
    "content": "#import \"NMBStringify.h\"\n#import <Nimble/Nimble-Swift.h>\n\nNSString *_Nonnull NMBStringify(id _Nullable anyObject) {\n    return [NMBStringer stringify:anyObject];\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/XCTestObservationCenter+Register.m",
    "content": "#import \"CurrentTestCaseTracker.h\"\n#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n\n#pragma mark - Method Swizzling\n\n/// Swaps the implementations between two instance methods.\n///\n/// @param class               The class containing `originalSelector`.\n/// @param originalSelector    Original method to replace.\n/// @param replacementSelector Replacement method.\nvoid swizzleSelectors(Class class, SEL originalSelector, SEL replacementSelector) {\n    Method originalMethod = class_getInstanceMethod(class, originalSelector);\n    Method replacementMethod = class_getInstanceMethod(class, replacementSelector);\n\n    BOOL didAddMethod =\n    class_addMethod(class,\n                    originalSelector,\n                    method_getImplementation(replacementMethod),\n                    method_getTypeEncoding(replacementMethod));\n\n    if (didAddMethod) {\n        class_replaceMethod(class,\n                            replacementSelector,\n                            method_getImplementation(originalMethod),\n                            method_getTypeEncoding(originalMethod));\n    } else {\n        method_exchangeImplementations(originalMethod, replacementMethod);\n    }\n}\n\n#pragma mark - Private\n\n@interface XCTestObservationCenter (Private)\n- (void)_addLegacyTestObserver:(id)observer;\n@end\n\n@implementation XCTestObservationCenter (Register)\n\n/// Uses objc method swizzling to register `CurrentTestCaseTracker` as a test observer. This is necessary\n/// because Xcode 7.3 introduced timing issues where if a custom `XCTestObservation` is registered too early\n/// it suppresses all console output (generated by `XCTestLog`), breaking any tools that depend on this output.\n/// This approach waits to register our custom test observer until XCTest adds its first \"legacy\" observer,\n/// falling back to registering after the first normal observer if this private method ever changes.\n+ (void)load {\n    if (class_getInstanceMethod([self class], @selector(_addLegacyTestObserver:))) {\n        // Swizzle -_addLegacyTestObserver:\n        swizzleSelectors([self class], @selector(_addLegacyTestObserver:), @selector(NMB_original__addLegacyTestObserver:));\n    } else {\n        // Swizzle -addTestObserver:, only if -_addLegacyTestObserver: is not implemented\n        swizzleSelectors([self class], @selector(addTestObserver:), @selector(NMB_original_addTestObserver:));\n    }\n}\n\n#pragma mark - Replacement Methods\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n- (void)NMB_original__addLegacyTestObserver:(id)observer {\n    [self NMB_original__addLegacyTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n/// This method is only used if `-_addLegacyTestObserver:` is not impelemented. (added in Xcode 7.3)\n- (void)NMB_original_addTestObserver:(id<XCTestObservation>)observer {\n    [self NMB_original_addTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self NMB_original_addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/DSL+Wait.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nprivate enum ErrorResult {\n    case Exception(NSException)\n    case Error(ErrorType)\n    case None\n}\n\n/// Only classes, protocols, methods, properties, and subscript declarations can be\n/// bridges to Objective-C via the @objc keyword. This class encapsulates callback-style\n/// asynchronous waiting logic so that it may be called from Objective-C and Swift.\ninternal class NMBWait: NSObject {\n    internal class func until(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) -> Void) -> Void {\n            return throwableUntil(timeout: timeout, file: file, line: line) { (done: () -> Void) throws -> Void in\n                action() { done() }\n            }\n    }\n\n    // Using a throwable closure makes this method not objc compatible.\n    internal class func throwableUntil(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) throws -> Void) -> Void {\n            let awaiter = NimbleEnvironment.activeInstance.awaiter\n            let leeway = timeout / 2.0\n            let result = awaiter.performBlock { (done: (ErrorResult) -> Void) throws -> Void in\n                dispatch_async(dispatch_get_main_queue()) {\n                    let capture = NMBExceptionCapture(\n                        handler: ({ exception in\n                            done(.Exception(exception))\n                        }),\n                        finally: ({ })\n                    )\n                    capture.tryBlock {\n                        do {\n                            try action() {\n                                done(.None)\n                            }\n                        } catch let e {\n                            done(.Error(e))\n                        }\n                    }\n                }\n            }.timeout(timeout, forcefullyAbortTimeout: leeway).wait(\"waitUntil(...)\", file: file, line: line)\n\n            switch result {\n            case .Incomplete: internalError(\"Reached .Incomplete state for waitUntil(...).\")\n            case .BlockedRunLoop:\n                fail(blockedRunLoopErrorMessageFor(\"-waitUntil()\", leeway: leeway),\n                    file: file, line: line)\n            case .TimedOut:\n                let pluralize = (timeout == 1 ? \"\" : \"s\")\n                fail(\"Waited more than \\(timeout) second\\(pluralize)\", file: file, line: line)\n            case let .RaisedException(exception):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case let .ErrorThrown(error):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.Exception(let exception)):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case .Completed(.Error(let error)):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.None): // success\n                break\n            }\n    }\n\n    @objc(untilFile:line:action:)\n    internal class func until(file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n        until(timeout: 1, file: file, line: line, action: action)\n    }\n}\n\ninternal func blockedRunLoopErrorMessageFor(fnName: String, leeway: NSTimeInterval) -> String {\n    return \"\\(fnName) timed out but was unable to run the timeout handler because the main thread is unresponsive (\\(leeway) seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n}\n\n/// Wait asynchronously until the done closure is called or the timeout has been reached.\n///\n/// @discussion\n/// Call the done() closure to indicate the waiting has completed.\n/// \n/// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n/// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\npublic func waitUntil(timeout timeout: NSTimeInterval = 1, file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n    NMBWait.until(timeout: timeout, file: file, line: line, action: action)\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/DSL.swift",
    "content": "import Foundation\n\n/// Make an expectation on a given actual value. The value given is lazily evaluated.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(@autoclosure(escaping) expression: () throws -> T?, file: FileString = #file, line: UInt = #line) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Make an expectation on a given actual value. The closure is lazily invoked.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(file: FileString = #file, line: UInt = #line, expression: () throws -> T?) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Always fails the test with a message and a specified location.\npublic func fail(message: String, location: SourceLocation) {\n    let handler = NimbleEnvironment.activeInstance.assertionHandler\n    handler.assert(false, message: FailureMessage(stringValue: message), location: location)\n}\n\n/// Always fails the test with a message.\npublic func fail(message: String, file: FileString = #file, line: UInt = #line) {\n    fail(message, location: SourceLocation(file: file, line: line))\n}\n\n/// Always fails the test.\npublic func fail(file: FileString = #file, line: UInt = #line) {\n    fail(\"fail() always fails\", file: file, line: line)\n}\n\n/// Like Swift's precondition(), but raises NSExceptions instead of sigaborts\ninternal func nimblePrecondition(\n    @autoclosure expr: () -> Bool,\n    @autoclosure _ name: () -> String,\n    @autoclosure _ message: () -> String,\n    file: StaticString = #file,\n    line: UInt = #line) -> Bool {\n        let result = expr()\n        if !result {\n#if _runtime(_ObjC)\n            let e = NSException(\n                name: name(),\n                reason: message(),\n                userInfo: nil)\n            e.raise()\n#else\n            preconditionFailure(\"\\(name()) - \\(message())\", file: file, line: line)\n#endif\n        }\n        return result\n}\n\n@noreturn\ninternal func internalError(msg: String, file: FileString = #file, line: UInt = #line) {\n    fatalError(\n        \"Nimble Bug Found: \\(msg) at \\(file):\\(line).\\n\" +\n        \"Please file a bug to Nimble: https://github.com/Quick/Nimble/issues with the \" +\n        \"code snippet that caused this error.\"\n    )\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Expectation.swift",
    "content": "import Foundation\n\ninternal func expressionMatches<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, to: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = to\n    do {\n        let pass = try matcher.matches(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\ninternal func expressionDoesNotMatch<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, toNot: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = toNot\n    do {\n        let pass = try matcher.doesNotMatch(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\npublic struct Expectation<T> {\n\n    public let expression: Expression<T>\n\n    public func verify(pass: Bool, _ message: FailureMessage) {\n        let handler = NimbleEnvironment.activeInstance.assertionHandler\n        handler.assert(pass, message: message, location: expression.location)\n    }\n\n    /// Tests the actual value using a matcher to match.\n    public func to<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionMatches(expression, matcher: matcher, to: \"to\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    public func toNot<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionDoesNotMatch(expression, matcher: matcher, toNot: \"to not\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    ///\n    /// Alias to toNot().\n    public func notTo<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        toNot(matcher, description: description)\n    }\n\n    // see:\n    // - AsyncMatcherWrapper for extension\n    // - NMBExpectation for Objective-C interface\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Expression.swift",
    "content": "import Foundation\n\n// Memoizes the given closure, only calling the passed\n// closure once; even if repeat calls to the returned closure\ninternal func memoizedClosure<T>(closure: () throws -> T) -> (Bool) throws -> T {\n    var cache: T?\n    return ({ withoutCaching in\n        if (withoutCaching || cache == nil) {\n            cache = try closure()\n        }\n        return cache!\n    })\n}\n\n/// Expression represents the closure of the value inside expect(...).\n/// Expressions are memoized by default. This makes them safe to call\n/// evaluate() multiple times without causing a re-evaluation of the underlying\n/// closure.\n///\n/// @warning Since the closure can be any code, Objective-C code may choose\n///          to raise an exception. Currently, Expression does not memoize\n///          exception raising.\n///\n/// This provides a common consumable API for matchers to utilize to allow\n/// Nimble to change internals to how the captured closure is managed.\npublic struct Expression<T> {\n    internal let _expression: (Bool) throws -> T?\n    internal let _withoutCaching: Bool\n    public let location: SourceLocation\n    public let isClosure: Bool\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process. The expression is memoized.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(expression: () throws -> T?, location: SourceLocation, isClosure: Bool = true) {\n        self._expression = memoizedClosure(expression)\n        self.location = location\n        self._withoutCaching = false\n        self.isClosure = isClosure\n    }\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param withoutCaching Indicates if the struct should memoize the given\n    ///                       closure's result. Subsequent evaluate() calls will\n    ///                       not call the given closure if this is true.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(memoizedExpression: (Bool) throws -> T?, location: SourceLocation, withoutCaching: Bool, isClosure: Bool = true) {\n        self._expression = memoizedExpression\n        self.location = location\n        self._withoutCaching = withoutCaching\n        self.isClosure = isClosure\n    }\n\n    /// Returns a new Expression from the given expression. Identical to a map()\n    /// on this type. This should be used only to typecast the Expression's\n    /// closure value.\n    ///\n    /// The returned expression will preserve location and isClosure.\n    ///\n    /// @param block The block that can cast the current Expression value to a\n    ///              new type.\n    public func cast<U>(block: (T?) throws -> U?) -> Expression<U> {\n        return Expression<U>(expression: ({ try block(self.evaluate()) }), location: self.location, isClosure: self.isClosure)\n    }\n\n    public func evaluate() throws -> T? {\n        return try self._expression(_withoutCaching)\n    }\n\n    public func withoutCaching() -> Expression<T> {\n        return Expression(memoizedExpression: self._expression, location: location, withoutCaching: true, isClosure: isClosure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/FailureMessage.swift",
    "content": "import Foundation\n\n/// Encapsulates the failure message that matchers can report to the end user.\n///\n/// This is shared state between Nimble and matchers that mutate this value.\npublic class FailureMessage: NSObject {\n    public var expected: String = \"expected\"\n    public var actualValue: String? = \"\" // empty string -> use default; nil -> exclude\n    public var to: String = \"to\"\n    public var postfixMessage: String = \"match\"\n    public var postfixActual: String = \"\"\n    public var userDescription: String? = nil\n\n    public var stringValue: String {\n        get {\n            if let value = _stringValueOverride {\n                return value\n            } else {\n                return computeStringValue()\n            }\n        }\n        set {\n            _stringValueOverride = newValue\n        }\n    }\n\n    internal var _stringValueOverride: String?\n\n    public override init() {\n    }\n\n    public init(stringValue: String) {\n        _stringValueOverride = stringValue\n    }\n\n    internal func stripNewlines(str: String) -> String {\n        var lines: [String] = NSString(string: str).componentsSeparatedByString(\"\\n\") as [String]\n        let whitespace = NSCharacterSet.whitespaceAndNewlineCharacterSet()\n        lines = lines.map { line in NSString(string: line).stringByTrimmingCharactersInSet(whitespace) }\n        return lines.joinWithSeparator(\"\")\n    }\n\n    internal func computeStringValue() -> String {\n        var value = \"\\(expected) \\(to) \\(postfixMessage)\"\n        if let actualValue = actualValue {\n            value = \"\\(expected) \\(to) \\(postfixMessage), got \\(actualValue)\\(postfixActual)\"\n        }\n        value = stripNewlines(value)\n        \n        if let userDescription = userDescription {\n            return \"\\(userDescription)\\n\\(value)\"\n        }\n        \n        return value\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 Jeff Hui. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/AllPass.swift",
    "content": "import Foundation\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return allPass(\"pass a condition\", passFunc)\n}\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passName: String, _ passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            expression, failureMessage in\n            failureMessage.postfixMessage = passName\n            return passFunc(try expression.evaluate())\n        }\n}\n\npublic func allPass<U,V where U: SequenceType, V: Matcher, U.Generator.Element == V.ValueType>\n    (matcher: V) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            try matcher.matches($0, failureMessage: $1)\n        }\n}\n\nprivate func createAllPassMatcher<T,U where U: SequenceType, U.Generator.Element == T>\n    (elementEvaluator:(Expression<T>, FailureMessage) throws -> Bool) -> NonNilMatcherFunc<U> {\n        return NonNilMatcherFunc { actualExpression, failureMessage in\n            failureMessage.actualValue = nil\n            if let actualValue = try actualExpression.evaluate() {\n                for currentElement in actualValue {\n                    let exp = Expression(\n                        expression: {currentElement}, location: actualExpression.location)\n                    if try !elementEvaluator(exp, failureMessage) {\n                        failureMessage.postfixMessage =\n                            \"all \\(failureMessage.postfixMessage),\"\n                            + \" but failed first at element <\\(stringify(currentElement))>\"\n                            + \" in <\\(stringify(actualValue))>\"\n                        return false\n                    }\n                }\n                failureMessage.postfixMessage = \"all \\(failureMessage.postfixMessage)\"\n            } else {\n                failureMessage.postfixMessage = \"all pass (use beNil() to match nils)\"\n                return false\n            }\n            \n            return true\n        }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func allPassMatcher(matcher: NMBObjCMatcher) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            var nsObjects = [NSObject]()\n            \n            var collectionIsUsable = true\n            if let value = actualValue as? NSFastEnumeration {\n                let generator = NSFastGenerator(value)\n                while let obj:AnyObject = generator.next() {\n                    if let nsObject = obj as? NSObject {\n                        nsObjects.append(nsObject)\n                    } else {\n                        collectionIsUsable = false\n                        break\n                    }\n                }\n            } else {\n                collectionIsUsable = false\n            }\n            \n            if !collectionIsUsable {\n                failureMessage.postfixMessage =\n                  \"allPass only works with NSFastEnumeration (NSArray, NSSet, ...) of NSObjects\"\n                failureMessage.expected = \"\"\n                failureMessage.to = \"\"\n                return false\n            }\n            \n            let expr = Expression(expression: ({ nsObjects }), location: location)\n            let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                expression, failureMessage in\n                return matcher.matches(\n                    {try! expression.evaluate()}, failureMessage: failureMessage, location: expr.location)\n            }\n            return try! createAllPassMatcher(elementEvaluator).matches(\n                expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic struct AsyncDefaults {\n    public static var Timeout: NSTimeInterval = 1\n    public static var PollInterval: NSTimeInterval = 0.01\n}\n\ninternal struct AsyncMatcherWrapper<T, U where U: Matcher, U.ValueType == T>: Matcher {\n    let fullMatcher: U\n    let timeoutInterval: NSTimeInterval\n    let pollInterval: NSTimeInterval\n\n    init(fullMatcher: U, timeoutInterval: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval) {\n      self.fullMatcher = fullMatcher\n      self.timeoutInterval = timeoutInterval\n      self.pollInterval = pollInterval\n    }\n\n    func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let fnName = \"expect(...).toEventually(...)\"\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: fnName) {\n                try self.fullMatcher.matches(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventually(...).\")\n        }\n    }\n\n    func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool  {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: \"expect(...).toEventuallyNot(...)\") {\n                try self.fullMatcher.doesNotMatch(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventuallyNot(...).\")\n        }\n    }\n}\n\nprivate let toEventuallyRequiresClosureError = FailureMessage(stringValue: \"expect(...).toEventually(...) requires an explicit closure (eg - expect { ... }.toEventually(...) )\\nSwift 1.2 @autoclosure behavior has changed in an incompatible way for Nimble to function\")\n\n\nextension Expectation {\n    /// Tests the actual value using a matcher to match by checking continuously\n    /// at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionMatches(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                to: \"to eventually\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventuallyNot<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionDoesNotMatch(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                toNot: \"to eventually not\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// Alias of toEventuallyNot()\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toNotEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        return toEventuallyNot(matcher, timeout: timeout, pollInterval: pollInterval, description: description)\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n// A Nimble matcher that catches attempts to use beAKindOf with non Objective-C types\npublic func beAKindOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAKindOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAnInstanceOf if you want to match against the exact class\npublic func beAKindOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be a kind of \\(classAsString(expectedClass))\"\n        return instance != nil && instance!.isKindOfClass(expectedClass)\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beAKindOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAKindOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift",
    "content": "import Foundation\n\n// A Nimble matcher that catches attempts to use beAnInstanceOf with non Objective-C types\npublic func beAnInstanceOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAnInstanceOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAKindOf if you want to match against subclasses\npublic func beAnInstanceOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be an instance of \\(classAsString(expectedClass))\"\n#if _runtime(_ObjC)\n        return instance != nil && instance!.isMemberOfClass(expectedClass)\n#else\n        return instance != nil && instance!.dynamicType == expectedClass\n#endif\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beAnInstanceOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAnInstanceOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift",
    "content": "#if os(Linux)\nimport Glibc\n#endif\nimport Foundation\n\ninternal let DefaultDelta = 0.0001\n\ninternal func isCloseTo(actualValue: NMBDoubleConvertible?, expectedValue: NMBDoubleConvertible, delta: Double, failureMessage: FailureMessage) -> Bool {\n    failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValue))> (within \\(stringify(delta)))\"\n    failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n    return actualValue != nil && abs(actualValue!.doubleValue - expectedValue.doubleValue) < delta\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: Double, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<Double> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: NMBDoubleConvertible, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<NMBDoubleConvertible> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n#if _runtime(_ObjC)\npublic class NMBObjCBeCloseToMatcher : NSObject, NMBMatcher {\n    var _expected: NSNumber\n    var _delta: CDouble\n    init(expected: NSNumber, within: CDouble) {\n        _expected = expected\n        _delta = within\n    }\n\n    public func matches(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.doesNotMatch(expr, failureMessage: failureMessage)\n    }\n\n    public var within: (CDouble) -> NMBObjCBeCloseToMatcher {\n        return ({ delta in\n            return NMBObjCBeCloseToMatcher(expected: self._expected, within: delta)\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beCloseToMatcher(expected: NSNumber, within: CDouble) -> NMBObjCBeCloseToMatcher {\n        return NMBObjCBeCloseToMatcher(expected: expected, within: within)\n    }\n}\n#endif\n\npublic func beCloseTo(expectedValues: [Double], within delta: Double = DefaultDelta) -> NonNilMatcherFunc <[Double]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValues))> (each within \\(stringify(delta)))\"\n        if let actual = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"<\\(stringify(actual))>\"\n\n            if actual.count != expectedValues.count {\n                return false\n            } else {\n                for (index, actualItem) in actual.enumerate() {\n                    if fabs(actualItem - expectedValues[index]) > delta {\n                        return false\n                    }\n                }\n                return true\n            }\n        }\n        return false\n    }\n}\n\n// MARK: - Operators\n\ninfix operator ≈ {\n    associativity none\n    precedence 130\n}\n\npublic func ≈(lhs: Expectation<[Double]>, rhs: [Double]) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: NMBDoubleConvertible) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\npublic func ==(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\n// make this higher precedence than exponents so the Doubles either end aren't pulled in\n// unexpectantly\ninfix operator ± { precedence 170 }\npublic func ±(lhs: NMBDoubleConvertible, rhs: Double) -> (expected: NMBDoubleConvertible, delta: Double) {\n    return (expected: lhs, delta: rhs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeEmpty.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty<S: SequenceType>() -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualSeq = try actualExpression.evaluate()\n        if actualSeq == nil {\n            return true\n        }\n        var generator = actualSeq!.generate()\n        return generator.next() == nil\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || NSString(string: actualString!).length  == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For NSString instances, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || actualString!.length == 0\n    }\n}\n\n// Without specific overrides, beEmpty() is ambiguous for NSDictionary, NSArray,\n// etc, since they conform to SequenceType as well as NMBCollection.\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSDictionary> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualDictionary = try actualExpression.evaluate()\n\t\treturn actualDictionary == nil || actualDictionary!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSArray> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualArray = try actualExpression.evaluate()\n\t\treturn actualArray == nil || actualArray!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NMBCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actual = try actualExpression.evaluate()\n        return actual == nil || actual!.count == 0\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beEmptyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            failureMessage.postfixMessage = \"be empty\"\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings)\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType)) type\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() > expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedDescending\n        return matches\n    }\n}\n\npublic func ><T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThan(rhs))\n}\n\npublic func >(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beGreaterThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue >= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func >=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\npublic func >=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\npublic func beIdenticalTo(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actual = try actualExpression.evaluate()\n        failureMessage.actualValue = \"\\(identityAsString(actual))\"\n        failureMessage.postfixMessage = \"be identical to \\(identityAsString(expected))\"\n        return actual === expected && actual !== nil\n    }\n}\n\npublic func ===(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.to(beIdenticalTo(rhs))\n}\npublic func !==(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.toNot(beIdenticalTo(rhs))\n}\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\n///\n/// Alias for \"beIdenticalTo\".\npublic func be(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return beIdenticalTo(expected)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beIdenticalToMatcher(expected: NSObject?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let aExpr = actualExpression.cast { $0 as AnyObject? }\n            return try! beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLessThan.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() < expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func <<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThan(rhs))\n}\n\npublic func <(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beLessThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as! NMBComparable? }\n            return try! beLessThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() <= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedDescending\n    }\n}\n\npublic func <=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\npublic func <=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil:false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLogical.swift",
    "content": "import Foundation\n\ninternal func matcherWithFailureMessage<T>(matcher: NonNilMatcherFunc<T>, postprocessor: (FailureMessage) -> Void) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        defer { postprocessor(failureMessage) }\n        return try matcher.matcher(actualExpression, failureMessage)\n    }\n}\n\n// MARK: beTrue() / beFalse()\n\n/// A Nimble matcher that succeeds when the actual value is exactly true.\n/// This matcher will not match against nils.\npublic func beTrue() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(true)) { failureMessage in\n        failureMessage.postfixMessage = \"be true\"\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is exactly false.\n/// This matcher will not match against nils.\npublic func beFalse() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(false)) { failureMessage in\n        failureMessage.postfixMessage = \"be false\"\n    }\n}\n\n// MARK: beTruthy() / beFalsy()\n\n/// A Nimble matcher that succeeds when the actual value is not logically false.\npublic func beTruthy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be truthy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue == true\n            }\n        }\n        return actualValue != nil\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is logically false.\n/// This matcher will match against nils.\npublic func beFalsy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be falsy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue != true\n            }\n        }\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beTruthyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beTruthy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalsyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beFalsy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beTrueMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beTrue().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalseMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beFalse().matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeNil.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is nil.\npublic func beNil<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be nil\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beNilMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            return try! beNil().matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeVoid.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is Void.\npublic func beVoid() -> MatcherFunc<()> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be void\"\n        let actualValue: ()? = try actualExpression.evaluate()\n        return actualValue != nil\n    }\n}\n\npublic func ==(lhs: Expectation<()>, rhs: ()) {\n    lhs.to(beVoid())\n}\n\npublic func !=(lhs: Expectation<()>, rhs: ()) {\n    lhs.toNot(beVoid())\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeginWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's first element\n/// is equal to the expected value.\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's first element\n/// is equal to the expected object.\npublic func beginWith(startingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(startingElement) == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains expected substring\n/// where the expected substring's location is zero.\npublic func beginWith(startingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingSubstring)>\"\n        if let actual = try actualExpression.evaluate() {\n            let range = actual.rangeOfString(startingSubstring)\n            return range != nil && range!.startIndex == actual.startIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! beginWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! beginWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Contain.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual sequence contains the expected value.\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: T...) -> NonNilMatcherFunc<S> {\n    return contain(items)\n}\n\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: [T]) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        if let actual = try actualExpression.evaluate() {\n            return items.all {\n                return actual.contains($0)\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: String...) -> NonNilMatcherFunc<String> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [String]) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all {\n                let range = actual.rangeOfString($0)\n                return range != nil && !range!.isEmpty\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: NSString...) -> NonNilMatcherFunc<NSString> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [NSString]) -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all { actual.rangeOfString($0.description).length != 0 }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection contains the expected object.\npublic func contain(items: AnyObject?...) -> NonNilMatcherFunc<NMBContainer> {\n    return contain(items)\n}\n\npublic func contain(items: [AnyObject?]) -> NonNilMatcherFunc<NMBContainer> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        guard let actual = try actualExpression.evaluate() else { return false }\n        return items.all { item in\n            return item != nil && actual.containsObject(item!)\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func containMatcher(expected: [NSObject]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBContainer {\n                let expr = Expression(expression: ({ value as NMBContainer }), location: location)\n\n                // A straightforward cast on the array causes this to crash, so we have to cast the individual items\n                let expectedOptionals: [AnyObject?] = expected.map({ $0 as AnyObject? })\n                return try! contain(expectedOptionals).matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! contain(expected as! [String]).matches(expr, failureMessage: failureMessage)\n            } else if actualValue != nil {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))> (only works for NSArrays, NSSets, NSHashTables, and NSStrings)\"\n            } else {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))>\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/EndWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's last element\n/// is equal to the expected value.\npublic func endWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(endingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            var lastItem: T?\n            var item: T?\n            repeat {\n                lastItem = item\n                item = actualGenerator.next()\n            } while(item != nil)\n            \n            return lastItem == endingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's last element\n/// is equal to the expected object.\npublic func endWith(endingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(endingElement) == collection!.count - 1\n    }\n}\n\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring\n/// where the expected substring's location is the actual string's length minus the\n/// expected substring's length.\npublic func endWith(endingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingSubstring)>\"\n        if let collection = try actualExpression.evaluate() {\n            let range = collection.rangeOfString(endingSubstring)\n            return range != nil && range!.endIndex == collection.endIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func endWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! endWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! endWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Equal.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue == expectedValue && expectedValue != nil\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return matches\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable, C: Equatable>(expectedValue: [T: C]?) -> NonNilMatcherFunc<[T: C]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection is equal to the expected collection.\n/// Items must implement the Equatable protocol.\npublic func equal<T: Equatable>(expectedValue: [T]?) -> NonNilMatcherFunc<[T]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher allowing comparison of collection with optional type\npublic func equal<T: Equatable>(expectedValue: [T?]) -> NonNilMatcherFunc<[T?]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        if let actualValue = try actualExpression.evaluate() {\n            if expectedValue.count != actualValue.count {\n                return false\n            }\n            \n            for (index, item) in actualValue.enumerate() {\n                let otherItem = expectedValue[index]\n                if item == nil && otherItem == nil {\n                    continue\n                } else if item == nil && otherItem != nil {\n                    return false\n                } else if item != nil && otherItem == nil {\n                    return false\n                } else if item! != otherItem! {\n                    return false\n                }\n            }\n            \n            return true\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n        \n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: stringify)\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T: Comparable>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: {\n        if let set = $0 {\n            return stringify(Array(set).sort { $0 < $1 })\n        } else {\n            return \"nil\"\n        }\n    })\n}\n\nprivate func equal<T>(expectedValue: Set<T>?, stringify: Set<T>? -> String) -> NonNilMatcherFunc<Set<T>> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n\n        if let expectedValue = expectedValue {\n            if let actualValue = try actualExpression.evaluate() {\n                failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n\n                if expectedValue == actualValue {\n                    return true\n                }\n\n                let missing = expectedValue.subtract(actualValue)\n                if missing.count > 0 {\n                    failureMessage.postfixActual += \", missing <\\(stringify(missing))>\"\n                }\n\n                let extra = actualValue.subtract(expectedValue)\n                if extra.count > 0 {\n                    failureMessage.postfixActual += \", extra <\\(stringify(extra))>\"\n                }\n            }\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n\n        return false\n    }\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.toNot(equal(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func equalMatcher(expected: NSObject) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! equal(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/HaveCount.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual CollectionType's count equals\n/// the expected value\npublic func haveCount<T: CollectionType>(expectedValue: T.Index.Distance) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(stringify(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's count equals\n/// the expected value\npublic func haveCount(expectedValue: Int) -> MatcherFunc<NMBCollection> {\n    return MatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(stringify(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func haveCountMatcher(expected: NSNumber) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection}), location: location)\n                return try! haveCount(expected.integerValue).matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"get type of NSArray, NSSet, NSDictionary, or NSHashTable\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType))\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Match.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n/// A Nimble matcher that succeeds when the actual string satisfies the regular expression\n/// described by the expected string.\npublic func match(expectedValue: String?) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"match <\\(stringify(expectedValue))>\"\n        \n        if let actual = try actualExpression.evaluate() {\n            if let regexp = expectedValue {\n                return actual.rangeOfString(regexp, options: .RegularExpressionSearch) != nil\n            }\n        }\n\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func matchMatcher(expected: NSString) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.cast { $0 as? String }\n            return try! match(expected.description).matches(actual, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatchError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\npublic func matchError<T: ErrorType>(error: T) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, error: error)\n        return errorMatchesNonNilFieldsOrClosure(actualError, error: error)\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error of the specified type\npublic func matchError<T: ErrorType>(errorType: T.Type) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, errorType: errorType)\n        return errorMatchesNonNilFieldsOrClosure(actualError, errorType: errorType)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatcherFunc.swift",
    "content": "/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// @see NonNilMatcherFunc if you prefer to have this matcher fail when nil\n///                        values are recieved in an expectation.\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct MatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try matcher(actualExpression, failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try !matcher(actualExpression, failureMessage)\n    }\n}\n\n/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// Unlike MatcherFunc, this will always fail if an expectation contains nil.\n/// This applies regardless of using to() or toNot().\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct NonNilMatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try !matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    internal func attachNilErrorIfNeeded(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        if try actualExpression.evaluate() == nil {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            return true\n        }\n        return false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift",
    "content": "import Foundation\n\n/// Implement this protocol to implement a custom matcher for Swift\u0013\npublic protocol Matcher {\n    associatedtype ValueType\n    func matches(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n    func doesNotMatch(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n}\n\n#if _runtime(_ObjC)\n/// Objective-C interface to the Swift variant of Matcher.\n@objc public protocol NMBMatcher {\n    func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n    func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n}\n#endif\n\n#if _runtime(_ObjC)\n/// Protocol for types that support contain() matcher.\n@objc public protocol NMBContainer {\n    func containsObject(object: AnyObject!) -> Bool\n}\n\nextension NSHashTable : NMBContainer {} // Corelibs Foundation does not include this class yet\n#else\npublic protocol NMBContainer {\n    func containsObject(object: AnyObject) -> Bool\n}\n#endif\n\nextension NSArray : NMBContainer {}\nextension NSSet : NMBContainer {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support only beEmpty(), haveCount() matchers\n@objc public protocol NMBCollection {\n    var count: Int { get }\n}\n\nextension NSHashTable : NMBCollection {} // Corelibs Foundation does not include these classes yet\nextension NSMapTable : NMBCollection {}\n#else\npublic protocol NMBCollection {\n    var count: Int { get }\n}\n#endif\n\nextension NSSet : NMBCollection {}\nextension NSIndexSet : NMBCollection {}\nextension NSDictionary : NMBCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support beginWith(), endWith(), beEmpty() matchers\n@objc public protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject!) -> Int\n}\n#else\npublic protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject) -> Int\n}\n#endif\n\nextension NSArray : NMBOrderedCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types to support beCloseTo() matcher\n@objc public protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n#else\npublic protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n\nextension Double : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self\n        }\n    }\n}\n\nextension Float : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return CDouble(self)\n        }\n    }\n}\n#endif\n\nextension NSNumber : NMBDoubleConvertible {\n}\n\nprivate let dateFormatter: NSDateFormatter = {\n    let formatter = NSDateFormatter()\n    formatter.dateFormat = \"yyyy-MM-dd HH:mm:ss.SSSS\"\n    formatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n\n    return formatter\n}()\n\n#if _runtime(_ObjC)\nextension NSDate: NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self.timeIntervalSinceReferenceDate\n        }\n    }\n}\n#endif\n\nextension NSDate: TestOutputStringConvertible {\n    public var testDescription: String {\n        return dateFormatter.stringFromDate(self)\n    }\n}\n\n/// Protocol for types to support beLessThan(), beLessThanOrEqualTo(),\n///  beGreaterThan(), beGreaterThanOrEqualTo(), and equal() matchers.\n///\n/// Types that conform to Swift's Comparable protocol will work implicitly too\n#if _runtime(_ObjC)\n@objc public protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#else\n// This should become obsolete once Corelibs Foundation adds Comparable conformance to NSNumber\npublic protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#endif\n\nextension NSNumber : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! NSNumber)\n    }\n}\nextension NSString : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! String)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/PostNotification.swift",
    "content": "import Foundation\n\ninternal class NotificationCollector {\n    private(set) var observedNotifications: [NSNotification]\n    private let notificationCenter: NSNotificationCenter\n    #if _runtime(_ObjC)\n    private var token: AnyObject?\n    #else\n    private var token: NSObjectProtocol?\n    #endif\n\n    required init(notificationCenter: NSNotificationCenter) {\n        self.notificationCenter = notificationCenter\n        self.observedNotifications = []\n    }\n\n    func startObserving() {\n        self.token = self.notificationCenter.addObserverForName(nil, object: nil, queue: nil) {\n            // linux-swift gets confused by .append(n)\n            [weak self] n in self?.observedNotifications += [n]\n        }\n    }\n\n    deinit {\n        #if _runtime(_ObjC)\n            if let token = self.token {\n                self.notificationCenter.removeObserver(token)\n            }\n        #else\n            if let token = self.token as? AnyObject {\n                self.notificationCenter.removeObserver(token)\n            }\n        #endif\n    }\n}\n\nprivate let mainThread = pthread_self()\n\npublic func postNotifications<T where T: Matcher, T.ValueType == [NSNotification]>(\n    notificationsMatcher: T,\n    fromNotificationCenter center: NSNotificationCenter = NSNotificationCenter.defaultCenter())\n    -> MatcherFunc<Any> {\n        let _ = mainThread // Force lazy-loading of this value\n        let collector = NotificationCollector(notificationCenter: center)\n        collector.startObserving()\n        var once: Bool = false\n        return MatcherFunc { actualExpression, failureMessage in\n            let collectorNotificationsExpression = Expression(memoizedExpression: { _ in\n                return collector.observedNotifications\n                }, location: actualExpression.location, withoutCaching: true)\n\n            assert(pthread_equal(mainThread, pthread_self()) != 0, \"Only expecting closure to be evaluated on main thread.\")\n            if !once {\n                once = true\n                try actualExpression.evaluate()\n            }\n\n            let match = try notificationsMatcher.matches(collectorNotificationsExpression, failureMessage: failureMessage)\n            if collector.observedNotifications.isEmpty {\n                failureMessage.actualValue = \"no notifications\"\n            } else {\n                failureMessage.actualValue = \"<\\(stringify(collector.observedNotifications))>\"\n            }\n            return match\n        }\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/RaisesException.swift",
    "content": "import Foundation\n\n// This matcher requires the Objective-C, and being built by Xcode rather than the Swift Package Manager \n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\n/// A Nimble matcher that succeeds when the actual expression raises an\n/// exception with the specified name, reason, and/or\u0013 userInfo.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the raised exception. The closure only gets called when an exception\n/// is raised.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func raiseException(\n    named named: String? = nil,\n    reason: String? = nil,\n    userInfo: NSDictionary? = nil,\n    closure: ((NSException) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var exception: NSException?\n            let capture = NMBExceptionCapture(handler: ({ e in\n                exception = e\n            }), finally: nil)\n\n            capture.tryBlock {\n                try! actualExpression.evaluate()\n                return\n            }\n\n            setFailureMessageForException(failureMessage, exception: exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n            return exceptionMatchesNonNilFieldsOrClosure(exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n        }\n}\n\ninternal func setFailureMessageForException(\n    failureMessage: FailureMessage,\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) {\n        failureMessage.postfixMessage = \"raise exception\"\n\n        if let named = named {\n            failureMessage.postfixMessage += \" with name <\\(named)>\"\n        }\n        if let reason = reason {\n            failureMessage.postfixMessage += \" with reason <\\(reason)>\"\n        }\n        if let userInfo = userInfo {\n            failureMessage.postfixMessage += \" with userInfo <\\(userInfo)>\"\n        }\n        if let _ = closure {\n            failureMessage.postfixMessage += \" that satisfies block\"\n        }\n        if named == nil && reason == nil && userInfo == nil && closure == nil {\n            failureMessage.postfixMessage = \"raise any exception\"\n        }\n\n        if let exception = exception {\n            failureMessage.actualValue = \"\\(classAsString(exception.dynamicType)) { name=\\(exception.name), reason='\\(stringify(exception.reason))', userInfo=\\(stringify(exception.userInfo)) }\"\n        } else {\n            failureMessage.actualValue = \"no exception\"\n        }\n}\n\ninternal func exceptionMatchesNonNilFieldsOrClosure(\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) -> Bool {\n        var matches = false\n\n        if let exception = exception {\n            matches = true\n\n            if named != nil && exception.name != named {\n                matches = false\n            }\n            if reason != nil && exception.reason != reason {\n                matches = false\n            }\n            if userInfo != nil && exception.userInfo != userInfo {\n                matches = false\n            }\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(exception)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        }\n        \n        return matches\n}\n\npublic class NMBObjCRaiseExceptionMatcher : NSObject, NMBMatcher {\n    internal var _name: String?\n    internal var _reason: String?\n    internal var _userInfo: NSDictionary?\n    internal var _block: ((NSException) -> Void)?\n\n    internal init(name: String?, reason: String?, userInfo: NSDictionary?, block: ((NSException) -> Void)?) {\n        _name = name\n        _reason = reason\n        _userInfo = userInfo\n        _block = block\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let block: () -> Any? = ({ actualBlock(); return nil })\n        let expr = Expression(expression: block, location: location)\n\n        return try! raiseException(\n            named: _name,\n            reason: _reason,\n            userInfo: _userInfo,\n            closure: _block\n        ).matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        return !matches(actualBlock, failureMessage: failureMessage, location: location)\n    }\n\n    public var named: (name: String) -> NMBObjCRaiseExceptionMatcher {\n        return ({ name in\n            return NMBObjCRaiseExceptionMatcher(\n                name: name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var reason: (reason: String?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ reason in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var userInfo: (userInfo: NSDictionary?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ userInfo in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var satisfyingBlock: (block: ((NSException) -> Void)?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ block in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: block\n            )\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func raiseExceptionMatcher() -> NMBObjCRaiseExceptionMatcher {\n        return NMBObjCRaiseExceptionMatcher(name: nil, reason: nil, userInfo: nil, block: nil)\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value matches with any of the matchers\n/// provided in the variable list of matchers. \npublic func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: U...) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(matchers)\n}\n\ninternal func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: [U]) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc<T> { actualExpression, failureMessage in\n        let postfixMessages = NSMutableArray()\n        var matches = false\n        for matcher in matchers {\n            if try matcher.matches(actualExpression, failureMessage: failureMessage) {\n                matches = true\n            }\n            postfixMessages.addObject(NSString(string: \"{\\(failureMessage.postfixMessage)}\"))\n        }\n\n        failureMessage.postfixMessage = \"match one of: \" + postfixMessages.componentsJoinedByString(\", or \")\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"\\(actualValue)\"\n        }\n\n        return matches\n    }\n}\n\npublic func ||<T>(left: NonNilMatcherFunc<T>, right: NonNilMatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\npublic func ||<T>(left: MatcherFunc<T>, right: MatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func satisfyAnyOfMatcher(matchers: [NMBObjCMatcher]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            if matchers.isEmpty {\n                failureMessage.stringValue = \"satisfyAnyOf must be called with at least one matcher\"\n                return false\n            }\n            \n            var elementEvaluators = [NonNilMatcherFunc<NSObject>]()\n            for matcher in matchers {\n                let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                    expression, failureMessage in\n                    return matcher.matches(\n                        {try! expression.evaluate()}, failureMessage: failureMessage, location: actualExpression.location)\n                }\n                \n                elementEvaluators.append(NonNilMatcherFunc(elementEvaluator))\n            }\n            \n            return try! satisfyAnyOf(elementEvaluators).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/ThrowError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression throws an\n/// error of the specified type or from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the thrown error. The closure only gets called when an error was thrown.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func throwError<T: ErrorType>(\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n\n            setFailureMessageForError(failureMessage, actualError: actualError, error: error, errorType: errorType, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, error: error, errorType: errorType, closure: closure)\n        }\n}\n\n/// A Nimble matcher that succeeds when the actual expression throws any\n/// error or when the passed closures' arbitrary custom matching succeeds.\n///\n/// This duplication to it's generic adequate is required to allow to receive\n/// values of the existential type ErrorType in the closure.\n///\n/// The closure only gets called when an error was thrown.\npublic func throwError(\n    closure closure: ((ErrorType) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n            \n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n            \n            setFailureMessageForError(failureMessage, actualError: actualError, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, closure: closure)\n        }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Nimble.h",
    "content": "#import <Foundation/Foundation.h>\n#import \"NMBExceptionCapture.h\"\n#import \"NMBStringify.h\"\n#import \"DSL.h\"\n\nFOUNDATION_EXPORT double NimbleVersionNumber;\nFOUNDATION_EXPORT const unsigned char NimbleVersionString[];\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Async.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nimport Dispatch\n\nprivate let timeoutLeeway: UInt64 = NSEC_PER_MSEC\nprivate let pollLeeway: UInt64 = NSEC_PER_MSEC\n\n/// Stores debugging information about callers\ninternal struct WaitingInfo: CustomStringConvertible {\n    let name: String\n    let file: FileString\n    let lineNumber: UInt\n\n    var description: String {\n        return \"\\(name) at \\(file):\\(lineNumber)\"\n    }\n}\n\ninternal protocol WaitLock {\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt)\n    func releaseWaitingLock()\n    func isWaitingLocked() -> Bool\n}\n\ninternal class AssertionWaitLock: WaitLock {\n    private var currentWaiter: WaitingInfo? = nil\n    init() { }\n\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt) {\n        let info = WaitingInfo(name: fnName, file: file, lineNumber: line)\n        nimblePrecondition(\n            NSThread.isMainThread(),\n            \"InvalidNimbleAPIUsage\",\n            \"\\(fnName) can only run on the main thread.\"\n        )\n        nimblePrecondition(\n            currentWaiter == nil,\n            \"InvalidNimbleAPIUsage\",\n            \"Nested async expectations are not allowed to avoid creating flaky tests.\\n\\n\" +\n            \"The call to\\n\\t\\(info)\\n\" +\n            \"triggered this exception because\\n\\t\\(currentWaiter!)\\n\" +\n            \"is currently managing the main run loop.\"\n        )\n        currentWaiter = info\n    }\n\n    func isWaitingLocked() -> Bool {\n        return currentWaiter != nil\n    }\n\n    func releaseWaitingLock() {\n        currentWaiter = nil\n    }\n}\n\ninternal enum AwaitResult<T> {\n    /// Incomplete indicates None (aka - this value hasn't been fulfilled yet)\n    case Incomplete\n    /// TimedOut indicates the result reached its defined timeout limit before returning\n    case TimedOut\n    /// BlockedRunLoop indicates the main runloop is too busy processing other blocks to trigger\n    /// the timeout code.\n    ///\n    /// This may also mean the async code waiting upon may have never actually ran within the\n    /// required time because other timers & sources are running on the main run loop.\n    case BlockedRunLoop\n    /// The async block successfully executed and returned a given result\n    case Completed(T)\n    /// When a Swift Error is thrown\n    case ErrorThrown(ErrorType)\n    /// When an Objective-C Exception is raised\n    case RaisedException(NSException)\n\n    func isIncomplete() -> Bool {\n        switch self {\n        case .Incomplete: return true\n        default: return false\n        }\n    }\n\n    func isCompleted() -> Bool {\n        switch self {\n        case .Completed(_): return true\n        default: return false\n        }\n    }\n}\n\n/// Holds the resulting value from an asynchronous expectation.\n/// This class is thread-safe at receiving an \"response\" to this promise.\ninternal class AwaitPromise<T> {\n    private(set) internal var asyncResult: AwaitResult<T> = .Incomplete\n    private var signal: dispatch_semaphore_t\n\n    init() {\n        signal = dispatch_semaphore_create(1)\n    }\n\n    /// Resolves the promise with the given result if it has not been resolved. Repeated calls to\n    /// this method will resolve in a no-op.\n    ///\n    /// @returns a Bool that indicates if the async result was accepted or rejected because another\n    ///          value was recieved first.\n    func resolveResult(result: AwaitResult<T>) -> Bool {\n        if dispatch_semaphore_wait(signal, DISPATCH_TIME_NOW) == 0 {\n            self.asyncResult = result\n            return true\n        } else {\n            return false\n        }\n    }\n}\n\ninternal struct AwaitTrigger {\n    let timeoutSource: dispatch_source_t\n    let actionSource: dispatch_source_t?\n    let start: () throws -> Void\n}\n\n/// Factory for building fully configured AwaitPromises and waiting for their results.\n///\n/// This factory stores all the state for an async expectation so that Await doesn't\n/// doesn't have to manage it.\ninternal class AwaitPromiseBuilder<T> {\n    let awaiter: Awaiter\n    let waitLock: WaitLock\n    let trigger: AwaitTrigger\n    let promise: AwaitPromise<T>\n\n    internal init(\n        awaiter: Awaiter,\n        waitLock: WaitLock,\n        promise: AwaitPromise<T>,\n        trigger: AwaitTrigger) {\n            self.awaiter = awaiter\n            self.waitLock = waitLock\n            self.promise = promise\n            self.trigger = trigger\n    }\n\n    func timeout(timeoutInterval: NSTimeInterval, forcefullyAbortTimeout: NSTimeInterval) -> Self {\n        // = Discussion =\n        //\n        // There's a lot of technical decisions here that is useful to elaborate on. This is\n        // definitely more lower-level than the previous NSRunLoop based implementation.\n        //\n        //\n        // Why Dispatch Source?\n        //\n        //\n        // We're using a dispatch source to have better control of the run loop behavior.\n        // A timer source gives us deferred-timing control without having to rely as much on\n        // a run loop's traditional dispatching machinery (eg - NSTimers, DefaultRunLoopMode, etc.)\n        // which is ripe for getting corrupted by application code.\n        //\n        // And unlike dispatch_async(), we can control how likely our code gets prioritized to\n        // executed (see leeway parameter) + DISPATCH_TIMER_STRICT.\n        //\n        // This timer is assumed to run on the HIGH priority queue to ensure it maintains the\n        // highest priority over normal application / test code when possible.\n        //\n        //\n        // Run Loop Management\n        //\n        // In order to properly interrupt the waiting behavior performed by this factory class,\n        // this timer stops the main run loop to tell the waiter code that the result should be\n        // checked.\n        //\n        // In addition, stopping the run loop is used to halt code executed on the main run loop.\n        dispatch_source_set_timer(\n            trigger.timeoutSource,\n            dispatch_time(DISPATCH_TIME_NOW, Int64(timeoutInterval * Double(NSEC_PER_SEC))),\n            DISPATCH_TIME_FOREVER,\n            timeoutLeeway\n        )\n        dispatch_source_set_event_handler(trigger.timeoutSource) {\n            guard self.promise.asyncResult.isIncomplete() else { return }\n            let timedOutSem = dispatch_semaphore_create(0)\n            let semTimedOutOrBlocked = dispatch_semaphore_create(0)\n            dispatch_semaphore_signal(semTimedOutOrBlocked)\n            let runLoop = CFRunLoopGetMain()\n            CFRunLoopPerformBlock(runLoop, kCFRunLoopDefaultMode) {\n                if dispatch_semaphore_wait(semTimedOutOrBlocked, DISPATCH_TIME_NOW) == 0 {\n                    dispatch_semaphore_signal(timedOutSem)\n                    dispatch_semaphore_signal(semTimedOutOrBlocked)\n                    if self.promise.resolveResult(.TimedOut) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n            // potentially interrupt blocking code on run loop to let timeout code run\n            CFRunLoopStop(runLoop)\n            let now = dispatch_time(DISPATCH_TIME_NOW, Int64(forcefullyAbortTimeout * Double(NSEC_PER_SEC)))\n            let didNotTimeOut = dispatch_semaphore_wait(timedOutSem, now) != 0\n            let timeoutWasNotTriggered = dispatch_semaphore_wait(semTimedOutOrBlocked, 0) == 0\n            if didNotTimeOut && timeoutWasNotTriggered {\n                if self.promise.resolveResult(.BlockedRunLoop) {\n                    CFRunLoopStop(CFRunLoopGetMain())\n                }\n            }\n        }\n        return self\n    }\n\n    /// Blocks for an asynchronous result.\n    ///\n    /// @discussion\n    /// This function must be executed on the main thread and cannot be nested. This is because\n    /// this function (and it's related methods) coordinate through the main run loop. Tampering\n    /// with the run loop can cause undesireable behavior.\n    ///\n    /// This method will return an AwaitResult in the following cases:\n    ///\n    /// - The main run loop is blocked by other operations and the async expectation cannot be\n    ///   be stopped.\n    /// - The async expectation timed out\n    /// - The async expectation succeeded\n    /// - The async expectation raised an unexpected exception (objc)\n    /// - The async expectation raised an unexpected error (swift)\n    ///\n    /// The returned AwaitResult will NEVER be .Incomplete.\n    func wait(fnName: String = #function, file: FileString = #file, line: UInt = #line) -> AwaitResult<T> {\n        waitLock.acquireWaitingLock(\n            fnName,\n            file: file,\n            line: line)\n\n        let capture = NMBExceptionCapture(handler: ({ exception in\n            self.promise.resolveResult(.RaisedException(exception))\n        }), finally: ({\n            self.waitLock.releaseWaitingLock()\n        }))\n        capture.tryBlock {\n            do {\n                try self.trigger.start()\n            } catch let error {\n                self.promise.resolveResult(.ErrorThrown(error))\n            }\n            dispatch_resume(self.trigger.timeoutSource)\n            while self.promise.asyncResult.isIncomplete() {\n                // Stopping the run loop does not work unless we run only 1 mode\n                NSRunLoop.currentRunLoop().runMode(NSDefaultRunLoopMode, beforeDate: NSDate.distantFuture())\n            }\n            dispatch_suspend(self.trigger.timeoutSource)\n            dispatch_source_cancel(self.trigger.timeoutSource)\n            if let asyncSource = self.trigger.actionSource {\n                dispatch_source_cancel(asyncSource)\n            }\n        }\n\n        return promise.asyncResult\n    }\n}\n\ninternal class Awaiter {\n    let waitLock: WaitLock\n    let timeoutQueue: dispatch_queue_t\n    let asyncQueue: dispatch_queue_t\n\n    internal init(\n        waitLock: WaitLock,\n        asyncQueue: dispatch_queue_t,\n        timeoutQueue: dispatch_queue_t) {\n            self.waitLock = waitLock\n            self.asyncQueue = asyncQueue\n            self.timeoutQueue = timeoutQueue\n    }\n\n    private func createTimerSource(queue: dispatch_queue_t) -> dispatch_source_t {\n        return dispatch_source_create(\n            DISPATCH_SOURCE_TYPE_TIMER,\n            0,\n            DISPATCH_TIMER_STRICT,\n            queue\n        )\n    }\n\n    func performBlock<T>(\n        closure: ((T) -> Void) throws -> Void) -> AwaitPromiseBuilder<T> {\n            let promise = AwaitPromise<T>()\n            let timeoutSource = createTimerSource(timeoutQueue)\n            var completionCount = 0\n            let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: nil) {\n                try closure() {\n                    completionCount += 1\n                    nimblePrecondition(\n                        completionCount < 2,\n                        \"InvalidNimbleAPIUsage\",\n                        \"Done closure's was called multiple times. waitUntil(..) expects its \" +\n                        \"completion closure to only be called once.\")\n                    if promise.resolveResult(.Completed($0)) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n\n            return AwaitPromiseBuilder(\n                awaiter: self,\n                waitLock: waitLock,\n                promise: promise,\n                trigger: trigger)\n    }\n\n    func poll<T>(pollInterval: NSTimeInterval, closure: () throws -> T?) -> AwaitPromiseBuilder<T> {\n        let promise = AwaitPromise<T>()\n        let timeoutSource = createTimerSource(timeoutQueue)\n        let asyncSource = createTimerSource(asyncQueue)\n        let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: asyncSource) {\n            let interval = UInt64(pollInterval * Double(NSEC_PER_SEC))\n            dispatch_source_set_timer(asyncSource, DISPATCH_TIME_NOW, interval, pollLeeway)\n            dispatch_source_set_event_handler(asyncSource) {\n                do {\n                    if let result = try closure() {\n                        if promise.resolveResult(.Completed(result)) {\n                            CFRunLoopStop(CFRunLoopGetCurrent())\n                        }\n                    }\n                } catch let error {\n                    if promise.resolveResult(.ErrorThrown(error)) {\n                        CFRunLoopStop(CFRunLoopGetCurrent())\n                    }\n                }\n            }\n            dispatch_resume(asyncSource)\n        }\n\n        return AwaitPromiseBuilder(\n            awaiter: self,\n            waitLock: waitLock,\n            promise: promise,\n            trigger: trigger)\n    }\n}\n\ninternal func pollBlock(\n    pollInterval pollInterval: NSTimeInterval,\n    timeoutInterval: NSTimeInterval,\n    file: FileString,\n    line: UInt,\n    fnName: String = #function,\n    expression: () throws -> Bool) -> AwaitResult<Bool> {\n        let awaiter = NimbleEnvironment.activeInstance.awaiter\n        let result = awaiter.poll(pollInterval) { () throws -> Bool? in\n            do {\n                if try expression() {\n                    return true\n                }\n                return nil\n            } catch let error {\n                throw error\n            }\n        }.timeout(timeoutInterval, forcefullyAbortTimeout: timeoutInterval / 2.0).wait(fnName, file: file, line: line)\n\n        return result\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Errors.swift",
    "content": "import Foundation\n\n// Generic\n\ninternal func setFailureMessageForError<T: ErrorType>(\n    failureMessage: FailureMessage,\n    postfixMessageVerb: String = \"throw\",\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) {\n    failureMessage.postfixMessage = \"\\(postfixMessageVerb) error\"\n\n    if let error = error {\n        if let error = error as? CustomDebugStringConvertible {\n            failureMessage.postfixMessage += \" <\\(error.debugDescription)>\"\n        } else {\n            failureMessage.postfixMessage += \" <\\(error)>\"\n        }\n    } else if errorType != nil || closure != nil {\n        failureMessage.postfixMessage += \" from type <\\(T.self)>\"\n    }\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    }\n    if error == nil && errorType == nil && closure == nil {\n        failureMessage.postfixMessage = \"\\(postfixMessageVerb) any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    return actualError._domain == expectedError._domain\n        && actualError._code   == expectedError._code\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType where T: Equatable>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    if let actualError = actualError as? T {\n        return actualError == expectedError\n    }\n    return false\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure<T: ErrorType>(\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let error = error {\n            if !errorMatchesExpectedError(actualError, expectedError: error) {\n                matches = false\n            }\n        }\n        if let actualError = actualError as? T {\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(actualError as T)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        } else if errorType != nil && closure != nil {\n            // The closure expects another ErrorType as argument, so this\n            // is _supposed_ to fail, so that it becomes more obvious.\n            let assertions = gatherExpectations {\n                expect(actualError is T).to(equal(true))\n            }\n            precondition(assertions.map { $0.message }.count > 0)\n            matches = false\n        }\n    }\n\n    return matches\n}\n\n// Non-generic\n\ninternal func setFailureMessageForError(\n    failureMessage: FailureMessage,\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) {\n    failureMessage.postfixMessage = \"throw error\"\n\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    } else {\n        failureMessage.postfixMessage = \"throw any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure(\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let closure = closure {\n            let assertions = gatherFailingExpectations {\n                closure(actualError)\n            }\n            let messages = assertions.map { $0.message }\n            if messages.count > 0 {\n                matches = false\n            }\n        }\n    }\n\n    return matches\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Functional.swift",
    "content": "import Foundation\n\nextension SequenceType {\n    internal func all(fn: Generator.Element -> Bool) -> Bool {\n        for item in self {\n            if !fn(item) {\n                return false\n            }\n        }\n        return true\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Utils/SourceLocation.swift",
    "content": "import Foundation\n\n// Ideally we would always use `StaticString` as the type for tracking the file name\n// that expectations originate from, for consistency with `assert` etc. from the\n// stdlib, and because recent versions of the XCTest overlay require `StaticString`\n// when calling `XCTFail`. Under the Objective-C runtime (i.e. building on Mac), we\n// have to use `String` instead because StaticString can't be generated from Objective-C\n#if _runtime(_ObjC)\npublic typealias FileString = String\n#else\npublic typealias FileString = StaticString\n#endif\n\npublic final class SourceLocation : NSObject {\n    public let file: FileString\n    public let line: UInt\n\n    override init() {\n        file = \"Unknown File\"\n        line = 0\n    }\n\n    init(file: FileString, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n\n    override public var description: String {\n        return \"\\(file):\\(line)\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Stringers.swift",
    "content": "import Foundation\n\n\ninternal func identityAsString(value: AnyObject?) -> String {\n    if let value = value {\n        return NSString(format: \"<%p>\", unsafeBitCast(value, Int.self)).description\n    } else {\n        return \"nil\"\n    }\n}\n\ninternal func classAsString(cls: AnyClass) -> String {\n#if _runtime(_ObjC)\n    return NSStringFromClass(cls)\n#else\n    return String(cls)\n#endif\n}\n\ninternal func arrayAsString<T>(items: [T], joiner: String = \", \") -> String {\n    return items.reduce(\"\") { accum, item in\n        let prefix = (accum.isEmpty ? \"\" : joiner)\n        return accum + prefix + \"\\(stringify(item))\"\n    }\n}\n\n/// A type with a customized test output text representation.\n///\n/// This textual representation is produced when values will be\n/// printed in test runs, and may be useful when producing\n/// error messages in custom matchers.\n///\n/// - SeeAlso: `CustomDebugStringConvertible`\npublic protocol TestOutputStringConvertible {\n    var testDescription: String { get }\n}\n\nextension Double: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(double: self).testDescription\n    }\n}\n\nextension Float: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(float: self).testDescription\n    }\n}\n\nextension NSNumber: TestOutputStringConvertible {\n    // This is using `NSString(format:)` instead of\n    // `String(format:)` because the latter somehow breaks\n    // the travis CI build on linux.\n    public var testDescription: String {\n        let description = self.description\n        \n        if description.containsString(\".\") {\n            // Travis linux swiftpm build doesn't like casting String to NSString,\n            // which is why this annoying nested initializer thing is here.\n            // Maybe this will change in a future snapshot.\n            let decimalPlaces = NSString(string: NSString(string: description)\n                .componentsSeparatedByString(\".\")[1])\n            \n            if decimalPlaces.length > 4 {\n                return NSString(format: \"%0.4f\", self.doubleValue).description\n            }\n        }\n        return self.description\n    }\n}\n\nextension Array: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = self.map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension AnySequence: TestOutputStringConvertible {\n    public var testDescription: String {\n        let generator = self.generate()\n        var strings = [String]()\n        var value: AnySequence.Generator.Element?\n        \n        repeat {\n            value = generator.next()\n            if let value = value {\n                strings.append(stringify(value))\n            }\n        } while value != nil\n        \n        let list = strings.joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension NSArray: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension NSIndexSet: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension String: TestOutputStringConvertible {\n    public var testDescription: String {\n        return self\n    }\n}\n\nextension NSData: TestOutputStringConvertible {\n    public var testDescription: String {\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11-16)\n            return \"NSData<length=\\(self.length)>\"\n        #else\n            return \"NSData<hash=\\(self.hash),length=\\(self.length)>\"\n        #endif\n    }\n}\n\n///\n/// Returns a string appropriate for displaying in test output\n/// from the provided value.\n///\n/// - parameter value: A value that will show up in a test's output.\n///\n/// - returns: The string that is returned can be\n///     customized per type by conforming a type to the `TestOutputStringConvertible`\n///     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n///     function will return the value's debug description and then its\n///     normal description if available and in that order. Otherwise it\n///     will return the result of constructing a string from the value.\n///\n/// - SeeAlso: `TestOutputStringConvertible`\n@warn_unused_result\npublic func stringify<T>(value: T) -> String {\n    if let value = value as? TestOutputStringConvertible {\n        return value.testDescription\n    }\n    \n    if let value = value as? CustomDebugStringConvertible {\n        return value.debugDescription\n    }\n    \n    return String(value)\n}\n\n/// -SeeAlso: `stringify<T>(value: T)`\n@warn_unused_result\npublic func stringify<T>(value: T?) -> String {\n    if let unboxed = value {\n        return stringify(unboxed)\n    }\n    return \"nil\"\n}\n\n#if _runtime(_ObjC)\n@objc public class NMBStringer: NSObject {\n    @warn_unused_result\n    @objc public class func stringify(obj: AnyObject?) -> String {\n        return Nimble.stringify(obj)\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/LinuxMain.swift",
    "content": "import XCTest\n@testable import Nimbletest\n\n// This is the entry point for NimbleTests on Linux\n\nXCTMain([\n    // AsynchronousTests(),\n    SynchronousTest(),\n    UserDescriptionTest(),\n\n    // Matchers\n    AllPassTest(),\n    // BeAKindOfTest(),\n    BeAnInstanceOfTest(),\n    BeCloseToTest(),\n    BeginWithTest(),\n    BeGreaterThanOrEqualToTest(),\n    BeGreaterThanTest(),\n    BeIdenticalToObjectTest(),\n    BeIdenticalToTest(),\n    BeLessThanOrEqualToTest(),\n    BeLessThanTest(),\n    BeTruthyTest(),\n    BeTrueTest(),\n    BeFalsyTest(),\n    BeFalseTest(),\n    BeNilTest(),\n    ContainTest(),\n    EndWithTest(),\n    EqualTest(),\n    HaveCountTest(),\n    // MatchTest(),\n    // RaisesExceptionTest(),\n    ThrowErrorTest(),\n    SatisfyAnyOfTest(),\n    PostNotificationTest(),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/AsynchronousTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\n// These tests require the ObjC runtimes do not currently have the GCD and run loop facilities\n// required for working with Nimble's async matchers\n#if _runtime(_ObjC)\n\nclass AsyncTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToEventuallyPositiveMatches\", testToEventuallyPositiveMatches),\n            (\"testToEventuallyNegativeMatches\", testToEventuallyNegativeMatches),\n            (\"testWaitUntilPositiveMatches\", testWaitUntilPositiveMatches),\n            (\"testToEventuallyWithCustomDefaultTimeout\", testToEventuallyWithCustomDefaultTimeout),\n            (\"testWaitUntilTimesOutIfNotCalled\", testWaitUntilTimesOutIfNotCalled),\n            (\"testWaitUntilTimesOutWhenExceedingItsTime\", testWaitUntilTimesOutWhenExceedingItsTime),\n            (\"testWaitUntilNegativeMatches\", testWaitUntilNegativeMatches),\n            (\"testWaitUntilDetectsStalledMainThreadActivity\", testWaitUntilDetectsStalledMainThreadActivity),\n            (\"testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed\", testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed),\n            (\"testWaitUntilErrorsIfDoneIsCalledMultipleTimes\", testWaitUntilErrorsIfDoneIsCalledMultipleTimes),\n            (\"testWaitUntilMustBeInMainThread\", testWaitUntilMustBeInMainThread),\n            (\"testToEventuallyMustBeInMainThread\", testToEventuallyMustBeInMainThread),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSInternalInconsistencyException, code: 42, userInfo: nil)\n\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testToEventuallyPositiveMatches() {\n        var value = 0\n        deferToMainQueue { value = 1 }\n        expect { value }.toEventually(equal(1))\n\n        deferToMainQueue { value = 0 }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testToEventuallyNegativeMatches() {\n        let value = 0\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got <0>\") {\n            expect { value }.toEventuallyNot(equal(0))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got <0>\") {\n            expect { value }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventuallyNot(equal(0))\n        }\n    }\n\n    func testToEventuallyWithCustomDefaultTimeout() {\n        AsyncDefaults.Timeout = 2\n        defer {\n            AsyncDefaults.Timeout = 1\n        }\n\n        var value = 0\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 1\n        }\n        expect { value }.toEventually(equal(1))\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 0\n        }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testWaitUntilPositiveMatches() {\n        waitUntil { done in\n            done()\n        }\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilTimesOutIfNotCalled() {\n        failsWithErrorMessage(\"Waited more than 1.0 second\") {\n            waitUntil(timeout: 1) { done in return }\n        }\n    }\n\n    func testWaitUntilTimesOutWhenExceedingItsTime() {\n        var waiting = true\n        failsWithErrorMessage(\"Waited more than 0.01 seconds\") {\n            waitUntil(timeout: 0.01) { done in\n                dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n                    NSThread.sleepForTimeInterval(0.1)\n                    done()\n                    waiting = false\n                }\n            }\n        }\n\n        // \"clear\" runloop to ensure this test doesn't poison other tests\n        repeat {\n            NSRunLoop.mainRunLoop().runUntilDate(NSDate().dateByAddingTimeInterval(0.2))\n        } while(waiting)\n    }\n\n    func testWaitUntilNegativeMatches() {\n        failsWithErrorMessage(\"expected to equal <2>, got <1>\") {\n            waitUntil { done in\n                NSThread.sleepForTimeInterval(0.1)\n                expect(1).to(equal(2))\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilDetectsStalledMainThreadActivity() {\n        let msg = \"-waitUntil() timed out but was unable to run the timeout handler because the main thread is unresponsive (0.5 seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n        failsWithErrorMessage(msg) {\n            waitUntil(timeout: 1) { done in\n                NSThread.sleepForTimeInterval(5.0)\n                done()\n            }\n        }\n    }\n\n    func testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed() {\n        // Currently we are unable to catch Objective-C exceptions when built by the Swift Package Manager\n#if !SWIFT_PACKAGE\n        let referenceLine = #line + 9\n        var msg = \"Unexpected exception raised: Nested async expectations are not allowed \"\n        msg += \"to avoid creating flaky tests.\"\n        msg += \"\\n\\n\"\n        msg += \"The call to\\n\\t\"\n        msg += \"expect(...).toEventually(...) at \\(#file):\\(referenceLine + 7)\\n\"\n        msg += \"triggered this exception because\\n\\t\"\n        msg += \"waitUntil(...) at \\(#file):\\(referenceLine + 1)\\n\"\n        msg += \"is currently managing the main run loop.\"\n        failsWithErrorMessage(msg) { // reference line\n            waitUntil(timeout: 2.0) { done in\n                var protected: Int = 0\n                dispatch_async(dispatch_get_main_queue()) {\n                    protected = 1\n                }\n\n                expect(protected).toEventually(equal(1))\n                done()\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilErrorsIfDoneIsCalledMultipleTimes() {\n#if !SWIFT_PACKAGE\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n                expect {\n                    done()\n                }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                waitUntil { done in done() }\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n\n    func testToEventuallyMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                expect(1).toEventually(equal(2))\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n}\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/ObjectWithLazyProperty.swift",
    "content": "import Foundation\n\nclass ObjectWithLazyProperty {\n    init() {}\n    lazy var value: String = \"hello\"\n    lazy var anotherValue: String = { return \"world\" }()\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/utils.swift",
    "content": "import Foundation\n@testable import Nimble\nimport XCTest\n\nfunc failsWithErrorMessage(messages: [String], file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () throws -> Void) {\n    var filePath = file\n    var lineNumber = line\n\n    let recorder = AssertionRecorder()\n    withAssertionHandler(recorder, closure: closure)\n\n    for msg in messages {\n        var lastFailure: AssertionRecord?\n        var foundFailureMessage = false\n\n        for assertion in recorder.assertions {\n            lastFailure = assertion\n            if assertion.message.stringValue == msg {\n                foundFailureMessage = true\n                break\n            }\n        }\n\n        if foundFailureMessage {\n            continue\n        }\n\n        if preferOriginalSourceLocation {\n            if let failure = lastFailure {\n                filePath = failure.location.file\n                lineNumber = failure.location.line\n            }\n        }\n\n        let message: String\n        if let lastFailure = lastFailure {\n            message = \"Got failure message: \\\"\\(lastFailure.message.stringValue)\\\", but expected \\\"\\(msg)\\\"\"\n        } else {\n            message = \"expected failure message, but got none\"\n        }\n        NimbleAssertionHandler.assert(false,\n                                      message: FailureMessage(stringValue: message),\n                                      location: SourceLocation(file: filePath, line: lineNumber))\n    }\n}\n\nfunc failsWithErrorMessage(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    return failsWithErrorMessage(\n        [message],\n        file: file,\n        line: line,\n        preferOriginalSourceLocation: preferOriginalSourceLocation,\n        closure: closure\n    )\n}\n\nfunc failsWithErrorMessageForNil(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    failsWithErrorMessage(\"\\(message) (use beNil() to match nils)\", file: file, line: line, preferOriginalSourceLocation: preferOriginalSourceLocation, closure: closure)\n}\n\n#if _runtime(_ObjC)\n    func deferToMainQueue(action: () -> Void) {\n        dispatch_async(dispatch_get_main_queue()) {\n            NSThread.sleepForTimeInterval(0.01)\n            action()\n        }\n    }\n#endif\n\npublic class NimbleHelper : NSObject {\n    public class func expectFailureMessage(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessages(messages: [NSString], block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(messages.map({ String($0) }), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessageForNil(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessageForNil(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n}\n\nextension NSDate {\n    convenience init(dateTimeString:String) {\n        let dateFormatter = NSDateFormatter()\n        dateFormatter.dateFormat = \"yyyy-MM-dd HH:mm:ss\"\n        dateFormatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n        let date = dateFormatter.dateFromString(dateTimeString)!\n        self.init(timeInterval:0, sinceDate:date)\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/AllPassTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass AllPassTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllPassArray\", testAllPassArray),\n            (\"testAllPassMatcher\", testAllPassMatcher),\n            (\"testAllPassCollectionsWithOptionalsDontWork\", testAllPassCollectionsWithOptionalsDontWork),\n            (\"testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer\", testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer),\n            (\"testAllPassSet\", testAllPassSet),\n            (\"testAllPassWithNilAsExpectedValue\", testAllPassWithNilAsExpectedValue),\n        ]\n    }\n\n    func testAllPassArray() {\n        expect([1,2,3,4]).to(allPass({$0 < 5}))\n        expect([1,2,3,4]).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\n            \"expected to all pass a condition, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass({$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect([1,2,3,4]).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\n            \"expected to all be something, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(\"be something\", {$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect([1,2,3,4]).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassMatcher() {\n        expect([1,2,3,4]).to(allPass(beLessThan(5)))\n        expect([1,2,3,4]).toNot(allPass(beGreaterThan(5)))\n        \n        failsWithErrorMessage(\n            \"expected to all be less than <3>, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(beLessThan(3)))\n        }\n        failsWithErrorMessage(\"expected to not all be less than <5>\") {\n            expect([1,2,3,4]).toNot(allPass(beLessThan(5)))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsDontWork() {\n        failsWithErrorMessage(\"expected to all be nil, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass(beNil()))\n        }\n        failsWithErrorMessage(\"expected to all pass a condition, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass({$0 == nil}))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer() {\n        expect([nil, nil, nil] as [Int?]).to(allPass({$0! == nil}))\n        expect([nil, 1, nil] as [Int?]).toNot(allPass({$0! == nil}))\n        expect([1, 1, 1] as [Int?]).to(allPass({$0! == 1}))\n        expect([1, 1, nil] as [Int?]).toNot(allPass({$0! == 1}))\n        expect([1, 2, 3] as [Int?]).to(allPass({$0! < 4}))\n        expect([1, 2, 3] as [Int?]).toNot(allPass({$0! < 3}))\n        expect([1, 2, nil] as [Int?]).to(allPass({$0! < 3}))\n    }\n\n    func testAllPassSet() {\n        expect(Set([1,2,3,4])).to(allPass({$0 < 5}))\n        expect(Set([1,2,3,4])).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect(Set([1,2,3,4])).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect(Set([1,2,3,4])).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassWithNilAsExpectedValue() {\n        failsWithErrorMessageForNil(\"expected to all pass\") {\n            expect(nil as [Int]?).to(allPass(beLessThan(5)))\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeAKindOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass TestNull : NSNull {}\n\nclass BeAKindOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(TestNull()).to(beAKindOf(NSNull))\n        expect(NSObject()).to(beAKindOf(NSObject))\n        expect(NSNumber(integer:1)).toNot(beAKindOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be a kind of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAKindOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be a kind of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to be a kind of NSString, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be a kind of NSNumber, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAKindOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAKindOf(Int))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAKindOf(String))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAKindOf(TestEnum))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeAnInstanceOfTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeAnInstanceOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(NSNull()).to(beAnInstanceOf(NSNull))\n        expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be an instance of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAnInstanceOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be an instance of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAnInstanceOf(NSString))\n        }\n#if _runtime(_ObjC)\n        let numberTypeName = \"__NSCFNumber\"\n#else\n        let numberTypeName = \"NSNumber\"\n#endif\n        failsWithErrorMessage(\"expected to be an instance of NSString, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).to(beAnInstanceOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be an instance of NSNumber, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAnInstanceOf(Int))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAnInstanceOf(String))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAnInstanceOf(TestEnum))\n        }\n    }\n    \n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeCloseToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeCloseToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeCloseTo\", testBeCloseTo),\n            (\"testBeCloseToWithin\", testBeCloseToWithin),\n            (\"testBeCloseToWithNSNumber\", testBeCloseToWithNSNumber),\n            (\"testBeCloseToWithNSDate\", testBeCloseToWithNSDate),\n            (\"testBeCloseToOperator\", testBeCloseToOperator),\n            (\"testBeCloseToWithinOperator\", testBeCloseToWithinOperator),\n            (\"testPlusMinusOperator\", testPlusMinusOperator),\n            (\"testBeCloseToOperatorWithNSDate\", testBeCloseToOperatorWithNSDate),\n            (\"testBeCloseToWithinOperatorWithNSDate\", testBeCloseToWithinOperatorWithNSDate),\n            (\"testPlusMinusOperatorWithNSDate\", testPlusMinusOperatorWithNSDate),\n            (\"testBeCloseToArray\", testBeCloseToArray),\n        ]\n    }\n\n    func testBeCloseTo() {\n        expect(1.2).to(beCloseTo(1.2001))\n        expect(1.2 as CDouble).to(beCloseTo(1.2001))\n        expect(1.2 as Float).to(beCloseTo(1.2001))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 0.0001), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001))\n        }\n    }\n\n    func testBeCloseToWithin() {\n        expect(1.2).to(beCloseTo(9.300, within: 10))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n\n    func testBeCloseToWithNSNumber() {\n        expect(NSNumber(double:1.2)).to(beCloseTo(9.300, within: 10))\n        expect(NSNumber(double:1.2)).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        expect(1.2).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(NSNumber(double:1.2)).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n    \n    func testBeCloseToWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).to(beCloseTo(NSDate(dateTimeString: \"2015-08-26 11:43:05\"), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <2015-08-26 11:43:00.0050> (within 0.004), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).toNot(beCloseTo(expectedDate, within: 0.004))\n        }\n#endif\n    }\n    \n    func testBeCloseToOperator() {\n        expect(1.2) ≈ 1.2001\n        expect(1.2 as CDouble) ≈ 1.2001\n        \n        failsWithErrorMessage(\"expected to be close to <1.2002> (within 0.0001), got <1.2>\") {\n            expect(1.2) ≈ 1.2002\n        }\n    }\n\n    func testBeCloseToWithinOperator() {\n        expect(1.2) ≈ (9.300, 10)\n        expect(1.2) == (9.300, 10)\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ (1.0, 0.1)\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == (1.0, 0.1)\n        }\n    }\n    \n    func testPlusMinusOperator() {\n        expect(1.2) ≈ 9.300 ± 10\n        expect(1.2) == 9.300 ± 10\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ 1.0 ± 0.1\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == 1.0 ± 0.1\n        }\n    }\n\n    func testBeCloseToOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:00\")\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.0001), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate\n        }\n#endif\n    }\n\n    func testBeCloseToWithinOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (expectedDate, 0.006)\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (expectedDate, 0.006)\n        }\n#endif\n    }\n\n    func testPlusMinusOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate ± 0.006\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == expectedDate ± 0.006\n        }\n#endif\n    }\n\n    func testBeCloseToArray() {\n        expect([0.0, 1.1, 2.2]) ≈ [0.0001, 1.1001, 2.2001]\n        expect([0.0, 1.1, 2.2]).to(beCloseTo([0.1, 1.2, 2.3], within: 0.1))\n        \n        failsWithErrorMessage(\"expected to be close to <[0, 1]> (each within 0.0001), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]) ≈ [0.0, 1.0]\n        }\n        failsWithErrorMessage(\"expected to be close to <[0.2, 1.2]> (each within 0.1), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]).to(beCloseTo([0.2, 1.2], within: 0.1))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeEmptyTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeEmptyTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeEmptyPositive\", testBeEmptyPositive),\n            (\"testBeEmptyNegative\", testBeEmptyNegative),\n        ]\n    }\n\n    func testBeEmptyPositive() {\n        expect([] as [Int]).to(beEmpty())\n        expect([1]).toNot(beEmpty())\n\n        expect([] as [CInt]).to(beEmpty())\n        expect([1] as [CInt]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSDictionary() as? [Int:Int]).to(beEmpty())\n        expect(NSDictionary(object: 1, forKey: 1) as? [Int:Int]).toNot(beEmpty())\n#endif\n\n        expect(Dictionary<Int, Int>()).to(beEmpty())\n        expect([\"hi\": 1]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSArray() as? [Int]).to(beEmpty())\n        expect(NSArray(array: [1]) as? [Int]).toNot(beEmpty())\n#endif\n\n        expect(NSSet()).to(beEmpty())\n        expect(NSSet(array: [NSNumber(integer: 1)])).toNot(beEmpty())\n\n        expect(NSIndexSet()).to(beEmpty())\n        expect(NSIndexSet(index: 1)).toNot(beEmpty())\n\n        expect(NSString()).to(beEmpty())\n        expect(NSString(string: \"hello\")).toNot(beEmpty())\n\n        expect(\"\").to(beEmpty())\n        expect(\"foo\").toNot(beEmpty())\n    }\n\n    func testBeEmptyNegative() {\n        failsWithErrorMessageForNil(\"expected to be empty, got <nil>\") {\n            expect(nil as NSString?).to(beEmpty())\n        }\n        failsWithErrorMessageForNil(\"expected to not be empty, got <nil>\") {\n            expect(nil as [CInt]?).toNot(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSArray()).toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <[1]>\") {\n            expect([1]).to(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <{()}>\") {\n            expect(NSSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <{(1)}>\") {\n            expect(NSSet(object: NSNumber(int: 1))).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSIndexSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <(1)>\") {\n            expect(NSIndexSet(index: 1)).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <>\") {\n            expect(\"\").toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <foo>\") {\n            expect(\"foo\").to(beEmpty())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeGreaterThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThanOrEqualTo\", testGreaterThanOrEqualTo),\n            (\"testGreaterThanOrEqualToOperator\", testGreaterThanOrEqualToOperator),\n        ]\n    }\n\n    func testGreaterThanOrEqualTo() {\n        expect(10).to(beGreaterThanOrEqualTo(10))\n        expect(10).to(beGreaterThanOrEqualTo(2))\n        expect(1).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:1)).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:2)).to(beGreaterThanOrEqualTo(NSNumber(int:2)))\n#if _runtime(_ObjC)\n        expect(1).to(beGreaterThanOrEqualTo(NSNumber(int:0)))\n#endif\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <0>\") {\n            expect(0).to(beGreaterThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be greater than or equal to <1>, got <1>\") {\n            expect(1).toNot(beGreaterThanOrEqualTo(1))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThanOrEqualTo(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than or equal to <1>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThanOrEqualTo(1))\n        }\n    }\n\n    func testGreaterThanOrEqualToOperator() {\n        expect(0) >= 0\n        expect(1) >= 0\n        expect(NSNumber(int:1)) >= 1\n        expect(NSNumber(int:1)) >= NSNumber(int:1)\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <1>\") {\n            expect(1) >= 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeGreaterThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThan\", testGreaterThan),\n            (\"testGreaterThanOperator\", testGreaterThanOperator),\n        ]\n    }\n    \n    func testGreaterThan() {\n        expect(10).to(beGreaterThan(2))\n        expect(1).toNot(beGreaterThan(2))\n#if _runtime(_ObjC)\n        expect(NSNumber(int:3)).to(beGreaterThan(2))\n#endif\n        expect(NSNumber(int:1)).toNot(beGreaterThan(NSNumber(int:2)))\n\n        failsWithErrorMessage(\"expected to be greater than <2>, got <0>\") {\n            expect(0).to(beGreaterThan(2))\n        }\n        failsWithErrorMessage(\"expected to not be greater than <0>, got <1>\") {\n            expect(1).toNot(beGreaterThan(0))\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThan(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than <0>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThan(0))\n        }\n    }\n\n    func testGreaterThanOperator() {\n        expect(1) > 0\n        expect(NSNumber(int:1)) > NSNumber(int:0)\n#if _runtime(_ObjC)\n        expect(NSNumber(int:1)) > 0\n#endif\n        failsWithErrorMessage(\"expected to be greater than <2>, got <1>\") {\n            expect(1) > 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeIdenticalToObjectTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeIdenticalToObjectTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testFailsOnNils\", testFailsOnNils),\n            (\"testOperators\", testOperators),\n        ]\n    }\n\n    private class BeIdenticalToObjectTester {}\n    private let testObjectA = BeIdenticalToObjectTester()\n    private let testObjectB = BeIdenticalToObjectTester()\n\n    func testBeIdenticalToPositive() {\n        expect(self.testObjectA).to(beIdenticalTo(testObjectA))\n    }\n    \n    func testBeIdenticalToNegative() {\n        expect(self.testObjectA).toNot(beIdenticalTo(testObjectB))\n    }\n    \n    func testBeIdenticalToPositiveMessage() {\n        let message = String(NSString(format: \"expected to be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectB, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).to(beIdenticalTo(self.testObjectB))\n        }\n    }\n    \n    func testBeIdenticalToNegativeMessage() {\n        let message = String(NSString(format: \"expected to not be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectA, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n\n    func testFailsOnNils() {\n        let message1 = String(NSString(format: \"expected to be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message1) {\n            expect(nil as BeIdenticalToObjectTester?).to(beIdenticalTo(self.testObjectA))\n        }\n\n        let message2 = String(NSString(format: \"expected to not be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message2) {\n            expect(nil as BeIdenticalToObjectTester?).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n    \n    func testOperators() {\n        expect(self.testObjectA) === testObjectA\n        expect(self.testObjectA) !== testObjectB\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeIdenticalToTest.swift",
    "content": "import Foundation\nimport XCTest\n@testable import Nimble\n\nclass BeIdenticalToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testOperators\", testOperators),\n            (\"testBeAlias\", testBeAlias)\n        ]\n    }\n\n    func testBeIdenticalToPositive() {\n        let value = NSDate()\n        expect(value).to(beIdenticalTo(value))\n    }\n\n    func testBeIdenticalToNegative() {\n        expect(NSNumber(integer:1)).toNot(beIdenticalTo(NSString(string: \"yo\")))\n        expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n    }\n\n    func testBeIdenticalToPositiveMessage() {\n        let num1 = NSNumber(integer:1)\n        let num2 = NSNumber(integer:2)\n        let message = \"expected to be identical to \\(identityAsString(num2)), got \\(identityAsString(num1))\"\n        failsWithErrorMessage(message) {\n            expect(num1).to(beIdenticalTo(num2))\n        }\n    }\n\n    func testBeIdenticalToNegativeMessage() {\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(beIdenticalTo(value2))\n        }\n    }\n\n    func testOperators() {\n        let value = NSDate()\n        expect(value) === value\n        expect(NSNumber(integer:1)) !== NSNumber(integer:2)\n    }\n\n    func testBeAlias() {\n        let value = NSDate()\n        expect(value).to(be(value))\n        expect(NSNumber(integer:1)).toNot(be(NSString(stringLiteral: \"turtles\")))\n        #if _runtime(_ObjC)\n            expect([1]).toNot(be([1]))\n        #else\n            expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n        #endif\n\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(be(value2))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLessThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThanOrEqualTo\", testLessThanOrEqualTo),\n            (\"testLessThanOrEqualToOperator\", testLessThanOrEqualToOperator),\n        ]\n    }\n\n    func testLessThanOrEqualTo() {\n        expect(10).to(beLessThanOrEqualTo(10))\n        expect(2).to(beLessThanOrEqualTo(10))\n        expect(2).toNot(beLessThanOrEqualTo(1))\n\n        expect(NSNumber(int:2)).to(beLessThanOrEqualTo(10))\n        expect(NSNumber(int:2)).toNot(beLessThanOrEqualTo(1))\n#if _runtime(_ObjC)\n        expect(2).to(beLessThanOrEqualTo(NSNumber(int:10)))\n        expect(2).toNot(beLessThanOrEqualTo(NSNumber(int:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than or equal to <0>, got <2>\") {\n            expect(2).to(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be less than or equal to <0>, got <0>\") {\n            expect(0).toNot(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be less than or equal to <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThanOrEqualTo(-2))\n            return\n        }\n    }\n\n    func testLessThanOrEqualToOperator() {\n        expect(0) <= 1\n        expect(1) <= 1\n\n        failsWithErrorMessage(\"expected to be less than or equal to <1>, got <2>\") {\n            expect(2) <= 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLessThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThan\", testLessThan),\n            (\"testLessThanOperator\", testLessThanOperator),\n        ]\n    }\n\n    func testLessThan() {\n        expect(2).to(beLessThan(10))\n        expect(2).toNot(beLessThan(1))\n#if _runtime(_ObjC)\n        expect(NSNumber(integer:2)).to(beLessThan(10))\n        expect(NSNumber(integer:2)).toNot(beLessThan(1))\n\n        expect(2).to(beLessThan(NSNumber(integer:10)))\n        expect(2).toNot(beLessThan(NSNumber(integer:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than <0>, got <2>\") {\n            expect(2).to(beLessThan(0))\n        }\n        failsWithErrorMessage(\"expected to not be less than <1>, got <0>\") {\n            expect(0).toNot(beLessThan(1))\n        }\n\n        failsWithErrorMessageForNil(\"expected to be less than <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThan(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than <-1>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThan(-1))\n        }\n    }\n\n    func testLessThanOperator() {\n        expect(0) < 1\n#if _runtime(_ObjC)\n        expect(NSNumber(int:0)) < 1\n#endif\n        failsWithErrorMessage(\"expected to be less than <1>, got <2>\") {\n            expect(2) < 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLogicalTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum ConvertsToBool : BooleanType, CustomStringConvertible {\n    case TrueLike, FalseLike\n\n    var boolValue : Bool {\n        switch self {\n        case .TrueLike: return true\n        case .FalseLike: return false\n        }\n    }\n\n    var description : String {\n        switch self {\n        case .TrueLike: return \"TrueLike\"\n        case .FalseLike: return \"FalseLike\"\n        }\n    }\n}\n\nclass BeTruthyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNonNilTypes\", testShouldMatchNonNilTypes),\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchNilTypes\", testShouldNotMatchNilTypes),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n            (\"testShouldMatchBoolConvertibleTypesThatConvertToTrue\", testShouldMatchBoolConvertibleTypesThatConvertToTrue),\n            (\"testShouldNotMatchBoolConvertibleTypesThatConvertToFalse\", testShouldNotMatchBoolConvertibleTypesThatConvertToFalse),\n        ]\n    }\n\n    func testShouldMatchNonNilTypes() {\n        expect(true as Bool?).to(beTruthy())\n        expect(1 as Int?).to(beTruthy())\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <true>\") {\n            expect(true).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilTypes() {\n        expect(false as Bool?).toNot(beTruthy())\n        expect(nil as Bool?).toNot(beTruthy())\n        expect(nil as Int?).toNot(beTruthy())\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <false>\") {\n            expect(false).to(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        expect(nil as Bool?).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <nil>\") {\n            expect(nil as Bool?).to(beTruthy())\n        }\n    }\n\n    func testShouldMatchBoolConvertibleTypesThatConvertToTrue() {\n        expect(ConvertsToBool.TrueLike).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <TrueLike>\") {\n            expect(ConvertsToBool.TrueLike).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchBoolConvertibleTypesThatConvertToFalse() {\n        expect(ConvertsToBool.FalseLike).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <FalseLike>\") {\n            expect(ConvertsToBool.FalseLike).to(beTruthy())\n        }\n    }\n}\n\nclass BeTrueTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTrue())\n\n        failsWithErrorMessage(\"expected to not be true, got <true>\") {\n            expect(true).toNot(beTrue())\n        }\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTrue())\n\n        failsWithErrorMessage(\"expected to be true, got <false>\") {\n            expect(false).to(beTrue())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to not be true, got <nil>\") {\n            expect(nil as Bool?).toNot(beTrue())\n        }\n\n        failsWithErrorMessageForNil(\"expected to be true, got <nil>\") {\n            expect(nil as Bool?).to(beTrue())\n        }\n    }\n}\n\nclass BeFalsyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNilTypes\", testShouldMatchNilTypes),\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldNotMatchNonNilTypes\", testShouldNotMatchNonNilTypes),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldMatchNilBools\", testShouldMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchNilTypes() {\n        expect(false as Bool?).to(beFalsy())\n        expect(nil as Bool?).to(beFalsy())\n        expect(nil as Int?).to(beFalsy())\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalsy())\n\n        failsWithErrorMessage(\"expected to be falsy, got <true>\") {\n            expect(true).to(beFalsy())\n        }\n    }\n\n    func testShouldNotMatchNonNilTypes() {\n        expect(true as Bool?).toNot(beFalsy())\n        expect(1 as Int?).toNot(beFalsy())\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <false>\") {\n            expect(false).toNot(beFalsy())\n        }\n    }\n\n    func testShouldMatchNilBools() {\n        expect(nil as Bool?).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalsy())\n        }\n    }\n}\n\nclass BeFalseTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalse())\n\n        failsWithErrorMessage(\"expected to be false, got <true>\") {\n            expect(true).to(beFalse())\n        }\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalse())\n\n        failsWithErrorMessage(\"expected to not be false, got <false>\") {\n            expect(false).toNot(beFalse())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to be false, got <nil>\") {\n            expect(nil as Bool?).to(beFalse())\n        }\n\n        failsWithErrorMessageForNil(\"expected to not be false, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalse())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeNilTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeNilTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeNil\", testBeNil),\n        ]\n    }\n\n    func producesNil() -> Array<Int>? {\n        return nil\n    }\n\n    func testBeNil() {\n        expect(nil as Int?).to(beNil())\n        expect(1 as Int?).toNot(beNil())\n        expect(self.producesNil()).to(beNil())\n\n        failsWithErrorMessage(\"expected to not be nil, got <nil>\") {\n            expect(nil as Int?).toNot(beNil())\n        }\n\n        failsWithErrorMessage(\"expected to be nil, got <1>\") {\n            expect(1 as Int?).to(beNil())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeVoidTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeVoidTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeVoid\", testBeVoid),\n        ]\n    }\n\n    func testBeVoid() {\n        expect(()).to(beVoid())\n        expect(() as ()?).to(beVoid())\n        expect(nil as ()?).toNot(beVoid())\n\n        expect(()) == ()\n        expect(() as ()?) == ()\n        expect(nil as ()?) != ()\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(()).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(() as ()?).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to be void, got <nil>\") {\n            expect(nil as ()?).to(beVoid())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeginWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeginWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testNegativeMatches\", testNegativeMatches),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect([1, 2, 3]).to(beginWith(1))\n        expect([1, 2, 3]).toNot(beginWith(2))\n\n        expect(\"foobar\").to(beginWith(\"foo\"))\n        expect(\"foobar\").toNot(beginWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(beginWith(\"foo\"))\n        expect(NSString(string: \"foobar\").description).toNot(beginWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(beginWith(\"a\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(beginWith(\"b\"))\n#endif\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessageForNil(\"expected to begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).to(beginWith(NSString(string: \"b\")))\n        }\n        failsWithErrorMessageForNil(\"expected to not begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).toNot(beginWith(NSString(string: \"b\")))\n        }\n\n        failsWithErrorMessage(\"expected to begin with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(beginWith(2))\n        }\n        failsWithErrorMessage(\"expected to not begin with <1>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(beginWith(1))\n        }\n        failsWithErrorMessage(\"expected to begin with <atm>, got <batman>\") {\n            expect(\"batman\").to(beginWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not begin with <bat>, got <batman>\") {\n            expect(\"batman\").toNot(beginWith(\"bat\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/ContainTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass ContainTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testContain\", testContain),\n            (\"testContainSubstring\", testContainSubstring),\n            (\"testContainObjCSubstring\", testContainObjCSubstring),\n            (\"testVariadicArguments\", testVariadicArguments),\n            (\"testCollectionArguments\", testCollectionArguments),\n        ]\n    }\n\n    func testContain() {\n        expect([1, 2, 3]).to(contain(1))\n        expect([1, 2, 3] as [CInt]).to(contain(1 as CInt))\n        expect([1, 2, 3] as Array<CInt>).to(contain(1 as CInt))\n        expect([\"foo\", \"bar\", \"baz\"]).to(contain(\"baz\"))\n        expect([1, 2, 3]).toNot(contain(4))\n        expect([\"foo\", \"bar\", \"baz\"]).toNot(contain(\"ba\"))\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\"])).to(contain(NSString(string: \"a\")))\n        expect(NSArray(array: [\"a\"])).toNot(contain(NSString(string:\"b\")))\n        expect(NSArray(object: 1) as NSArray?).to(contain(1))\n#endif\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"b\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to contain <bar>, got <nil>\") {\n            expect(nil as [String]?).to(contain(\"bar\"))\n        }\n        failsWithErrorMessageForNil(\"expected to not contain <b>, got <nil>\") {\n            expect(nil as [String]?).toNot(contain(\"b\"))\n        }\n    }\n\n    func testContainSubstring() {\n        expect(\"foo\").to(contain(\"o\"))\n        expect(\"foo\").to(contain(\"oo\"))\n        expect(\"foo\").toNot(contain(\"z\"))\n        expect(\"foo\").toNot(contain(\"zz\"))\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <foo>\") {\n            expect(\"foo\").to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <oo>, got <foo>\") {\n            expect(\"foo\").toNot(contain(\"oo\"))\n        }\n    }\n\n    func testContainObjCSubstring() {\n        let str = NSString(string: \"foo\")\n        expect(str).to(contain(NSString(string: \"o\")))\n        expect(str).to(contain(NSString(string: \"oo\")))\n        expect(str).toNot(contain(NSString(string: \"z\")))\n        expect(str).toNot(contain(NSString(string: \"zz\")))\n    }\n\n    func testVariadicArguments() {\n        expect([1, 2, 3]).to(contain(1, 2))\n        expect([1, 2, 3]).toNot(contain(1, 4))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"a\", \"bar\"))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"bar\", \"b\"))\n        }\n    }\n\n    func testCollectionArguments() {\n        expect([1, 2, 3]).to(contain([1, 2]))\n        expect([1, 2, 3]).toNot(contain([1, 4]))\n\n        let collection = Array(1...10)\n        let slice = Array(collection[3...5])\n        expect(collection).to(contain(slice))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain([\"a\", \"bar\"]))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain([\"bar\", \"b\"]))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/EndWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EndWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEndWithPositives\", testEndWithPositives),\n            (\"testEndWithNegatives\", testEndWithNegatives),\n        ]\n    }\n\n    func testEndWithPositives() {\n        expect([1, 2, 3]).to(endWith(3))\n        expect([1, 2, 3]).toNot(endWith(2))\n\n        expect(\"foobar\").to(endWith(\"bar\"))\n        expect(\"foobar\").toNot(endWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(endWith(\"bar\"))\n        expect(NSString(string: \"foobar\").description).toNot(endWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(endWith(\"b\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(endWith(\"a\"))\n#endif\n    }\n\n    func testEndWithNegatives() {\n        failsWithErrorMessageForNil(\"expected to end with <2>, got <nil>\") {\n            expect(nil as [Int]?).to(endWith(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not end with <2>, got <nil>\") {\n            expect(nil as [Int]?).toNot(endWith(2))\n        }\n\n        failsWithErrorMessage(\"expected to end with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(endWith(2))\n        }\n        failsWithErrorMessage(\"expected to not end with <3>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(endWith(3))\n        }\n        failsWithErrorMessage(\"expected to end with <atm>, got <batman>\") {\n            expect(\"batman\").to(endWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not end with <man>, got <batman>\") {\n            expect(\"batman\").toNot(endWith(\"man\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/EqualTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EqualTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEquality\", testEquality),\n            (\"testArrayEquality\", testArrayEquality),\n            (\"testSetEquality\", testSetEquality),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n            (\"testDictionaryEquality\", testDictionaryEquality),\n            (\"testDataEquality\", testDataEquality),\n            (\"testNSObjectEquality\", testNSObjectEquality),\n            (\"testOperatorEquality\", testOperatorEquality),\n            (\"testOperatorEqualityWithArrays\", testOperatorEqualityWithArrays),\n            (\"testOperatorEqualityWithDictionaries\", testOperatorEqualityWithDictionaries),\n            (\"testOptionalEquality\", testOptionalEquality),\n            (\"testArrayOfOptionalsEquality\", testArrayOfOptionalsEquality),\n            (\"testDictionariesWithDifferentSequences\", testDictionariesWithDifferentSequences),\n        ]\n    }\n\n    func testEquality() {\n        expect(1 as CInt).to(equal(1 as CInt))\n        expect(1 as CInt).to(equal(1))\n        expect(1).to(equal(1))\n        expect(\"hello\").to(equal(\"hello\"))\n        expect(\"hello\").toNot(equal(\"world\"))\n\n        expect {\n            1\n        }.to(equal(1))\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\").to(equal(\"world\"))\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\").toNot(equal(\"hello\"))\n        }\n    }\n\n    func testArrayEquality() {\n        expect([1, 2, 3]).to(equal([1, 2, 3]))\n        expect([1, 2, 3]).toNot(equal([1, 2]))\n        expect([1, 2, 3]).toNot(equal([1, 2, 4]))\n\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        expect(array1).to(equal(array2))\n        expect(array1).to(equal([1, 2, 3]))\n        expect(array1).toNot(equal([1, 2] as Array<Int>))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [1, 2, 3])).to(equal(NSArray(array: [1, 2, 3])))\n#endif\n\n        failsWithErrorMessage(\"expected to equal <[1, 2]>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(equal([1, 2]))\n        }\n    }\n\n    func testSetEquality() {\n        expect(Set([1, 2])).to(equal(Set([1, 2])))\n        expect(Set<Int>()).to(equal(Set<Int>()))\n        expect(Set<Int>()) == Set<Int>()\n        expect(Set([1, 2])) != Set<Int>()\n\n        failsWithErrorMessageForNil(\"expected to equal <[1, 2]>, got <nil>\") {\n            expect(nil as Set<Int>?).to(equal(Set([1, 2])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3]>, missing <[1]>\") {\n            expect(Set([2, 3])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[1, 2, 3, 4]>, extra <[4]>\") {\n            expect(Set([1, 2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])) == Set([1, 2, 3])\n        }\n\n        failsWithErrorMessage(\"expected to not equal <[1, 2, 3]>, got <[1, 2, 3]>\") {\n            expect(Set([1, 2, 3])) != Set([1, 2, 3])\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as String?).to(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <foo>\") {\n            expect(\"foo\").toNot(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <bar>, got <nil>\") {\n            expect(nil as String?).toNot(equal(\"bar\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int]?).to(equal(nil as [Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1]>, got <nil>\") {\n            expect(nil as [Int]?).toNot(equal([1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1]>\") {\n            expect([1]).toNot(equal(nil as [Int]?))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int: Int]?).to(equal(nil as [Int: Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1: 1]>, got <nil>\") {\n            expect(nil as [Int: Int]?).toNot(equal([1: 1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1: 1]>\") {\n            expect([1: 1]).toNot(equal(nil as [Int: Int]?))\n        }\n    }\n\n    func testDictionaryEquality() {\n        expect([\"foo\": \"bar\"]).to(equal([\"foo\": \"bar\"]))\n        expect([\"foo\": \"bar\"]).toNot(equal([\"foo\": \"baz\"]))\n\n        let actual = [\"foo\": \"bar\"]\n        let expected = [\"foo\": \"bar\"]\n        let unexpected = [\"foo\": \"baz\"]\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n#if _runtime(_ObjC)\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal([\"foo\": \"bar\"]))\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal(expected))\n#endif\n    }\n\n    func testDataEquality() {\n        let actual = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let expected = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let unexpected = \"foobarfoo\".dataUsingEncoding(NSUTF8StringEncoding)\n\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11)\n            let expectedErrorMessage = \"expected to equal <NSData<length=9>>, got <NSData<length=6>>\"\n        #else\n            let expectedErrorMessage = \"expected to equal <NSData<hash=92856895,length=9>>,\"\n                + \" got <NSData<hash=114710658,length=6>>\"\n        #endif\n\n        failsWithErrorMessage(expectedErrorMessage) {\n            expect(actual).to(equal(unexpected))\n        }\n    }\n\n    func testNSObjectEquality() {\n        expect(NSNumber(integer:1)).to(equal(NSNumber(integer:1)))\n        expect(NSNumber(integer:1)) == NSNumber(integer:1)\n        expect(NSNumber(integer:1)) != NSNumber(integer:2)\n        expect { NSNumber(integer:1) }.to(equal(1))\n    }\n\n    func testOperatorEquality() {\n        expect(\"foo\") == \"foo\"\n        expect(\"foo\") != \"bar\"\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\") == \"world\"\n            return\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\") != \"hello\"\n            return\n        }\n    }\n\n    func testOperatorEqualityWithArrays() {\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        let array3: Array<Int> = [1, 2]\n        expect(array1) == array2\n        expect(array1) != array3\n    }\n\n    func testOperatorEqualityWithDictionaries() {\n        let dict1 = [\"foo\": \"bar\"]\n        let dict2 = [\"foo\": \"bar\"]\n        let dict3 = [\"foo\": \"baz\"]\n        expect(dict1) == dict2\n        expect(dict1) != dict3\n    }\n\n    func testOptionalEquality() {\n        expect(1 as CInt?).to(equal(1))\n        expect(1 as CInt?).to(equal(1 as CInt?))\n\n        expect(1).toNot(equal(nil))\n    }\n    \n    func testArrayOfOptionalsEquality() {\n        let array1: Array<Int?> = [1, nil, 3]\n        let array2: Array<Int?> = [nil, 2, 3]\n        let array3: Array<Int?> = [1, nil, 3]\n        \n        expect(array1).toNot(equal(array2))\n        expect(array1).to(equal(array3))\n        expect(array2).toNot(equal(array3))\n        \n        let allNils1: Array<String?> = [nil, nil, nil, nil]\n        let allNils2: Array<String?> = [nil, nil, nil, nil]\n        let notReallyAllNils: Array<String?> = [nil, nil, nil, \"turtles\"]\n        \n        expect(allNils1).to(equal(allNils2))\n        expect(allNils1).toNot(equal(notReallyAllNils))\n        \n        let noNils1: Array<Int?> = [1, 2, 3, 4, 5]\n        let noNils2: Array<Int?> = [1, 3, 5, 7, 9]\n        \n        expect(noNils1).toNot(equal(noNils2))\n        \n        failsWithErrorMessage(\"expected to equal <[Optional(1), nil]>, got <[nil, Optional(2)]>\") {\n            let arrayOfOptionalInts: Array<Int?> = [nil, 2]\n            let anotherArrayOfOptionalInts: Array<Int?> = [1, nil]\n            expect(arrayOfOptionalInts).to(equal(anotherArrayOfOptionalInts))\n            return\n        }\n    }\n\n    func testDictionariesWithDifferentSequences() {\n        // see: https://github.com/Quick/Nimble/issues/61\n        // these dictionaries generate different orderings of sequences.\n        let result = [\"how\":1, \"think\":1, \"didnt\":2, \"because\":1,\n            \"interesting\":1, \"always\":1, \"right\":1, \"such\":1,\n            \"to\":3, \"say\":1, \"cool\":1, \"you\":1,\n            \"weather\":3, \"be\":1, \"went\":1, \"was\":2,\n            \"sometimes\":1, \"and\":3, \"mind\":1, \"rain\":1,\n            \"whole\":1, \"everything\":1, \"weather.\":1, \"down\":1,\n            \"kind\":1, \"mood.\":1, \"it\":2, \"everyday\":1, \"might\":1,\n            \"more\":1, \"have\":2, \"person\":1, \"could\":1, \"tenth\":2,\n            \"night\":1, \"write\":1, \"Youd\":1, \"affects\":1, \"of\":3,\n            \"Who\":1, \"us\":1, \"an\":1, \"I\":4, \"my\":1, \"much\":2,\n            \"wrong.\":1, \"peacefully.\":1, \"amazing\":3, \"would\":4,\n            \"just\":1, \"grade.\":1, \"Its\":2, \"The\":2, \"had\":1, \"that\":1,\n            \"the\":5, \"best\":1, \"but\":1, \"essay\":1, \"for\":1, \"summer\":2,\n            \"your\":1, \"grade\":1, \"vary\":1, \"pretty\":1, \"at\":1, \"rain.\":1,\n            \"about\":1, \"allow\":1, \"thought\":1, \"in\":1, \"sleep\":1, \"a\":1,\n            \"hot\":1, \"really\":1, \"beach\":1, \"life.\":1, \"we\":1, \"although\":1]\n\n        let storyCount = [\"The\":2, \"summer\":2, \"of\":3, \"tenth\":2, \"grade\":1,\n            \"was\":2, \"the\":5, \"best\":1, \"my\":1, \"life.\":1, \"I\":4,\n            \"went\":1, \"to\":3, \"beach\":1, \"everyday\":1, \"and\":3,\n            \"we\":1, \"had\":1, \"amazing\":3, \"weather.\":1, \"weather\":3,\n            \"didnt\":2, \"really\":1, \"vary\":1, \"much\":2, \"always\":1,\n            \"pretty\":1, \"hot\":1, \"although\":1, \"sometimes\":1, \"at\":1,\n            \"night\":1, \"it\":2, \"would\":4, \"rain.\":1, \"mind\":1, \"rain\":1,\n            \"because\":1, \"cool\":1, \"everything\":1, \"down\":1, \"allow\":1,\n            \"us\":1, \"sleep\":1, \"peacefully.\":1, \"Its\":2, \"how\":1,\n            \"affects\":1, \"your\":1, \"mood.\":1, \"Who\":1, \"have\":2,\n            \"thought\":1, \"that\":1, \"could\":1, \"write\":1, \"a\":1,\n            \"whole\":1, \"essay\":1, \"just\":1, \"about\":1, \"in\":1,\n            \"grade.\":1, \"kind\":1, \"right\":1, \"Youd\":1, \"think\":1,\n            \"for\":1, \"such\":1, \"an\":1, \"interesting\":1, \"person\":1,\n            \"might\":1, \"more\":1, \"say\":1, \"but\":1, \"you\":1, \"be\":1, \"wrong.\":1]\n\n        expect(result).to(equal(storyCount))\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/HaveCountTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass HaveCountTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testHaveCountForArray\", testHaveCountForArray),\n            (\"testHaveCountForDictionary\", testHaveCountForDictionary),\n            (\"testHaveCountForSet\", testHaveCountForSet),\n        ]\n    }\n\n    func testHaveCountForArray() {\n        expect([1, 2, 3]).to(haveCount(3))\n        expect([1, 2, 3]).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have [1, 2, 3] with count 1, got 3\") {\n            expect([1, 2, 3]).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have [1, 2, 3] with count 3, got 3\") {\n            expect([1, 2, 3]).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForDictionary() {\n        let dictionary = [\"1\":1, \"2\":2, \"3\":3]\n        expect(dictionary).to(haveCount(3))\n        expect(dictionary).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have \\(stringify(dictionary)) with count 1, got 3\") {\n            expect(dictionary).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have \\(stringify(dictionary)) with count 3, got 3\") {\n            expect(dictionary).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForSet() {\n        let set = Set([1, 2, 3])\n        expect(set).to(haveCount(3))\n        expect(set).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have \\(stringify(set)) with count 1, got 3\") {\n            expect(set).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have \\(stringify(set)) with count 3, got 3\") {\n            expect(set).notTo(haveCount(3))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/MatchErrorTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass MatchErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchErrorPositive\", testMatchErrorPositive),\n            (\"testMatchErrorNegative\", testMatchErrorNegative),\n            (\"testMatchNSErrorPositive\", testMatchNSErrorPositive),\n            (\"testMatchNSErrorNegative\", testMatchNSErrorNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n        ]\n    }\n\n    func testMatchErrorPositive() {\n        expect(Error.Laugh).to(matchError(Error.Laugh))\n        expect(Error.Laugh).to(matchError(Error.self))\n        expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 1)))\n\n        expect(Error.Laugh as ErrorType).to(matchError(Error.Laugh))\n    }\n\n    func testMatchErrorNegative() {\n        expect(Error.Laugh).toNot(matchError(Error.Cry))\n        expect(Error.Laugh as ErrorType).toNot(matchError(Error.Cry))\n    }\n\n    func testMatchNSErrorPositive() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 0, userInfo: nil)\n\n        expect(error1).to(matchError(error2))\n    }\n\n    func testMatchNSErrorNegative() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n\n        expect(error1).toNot(matchError(error2))\n    }\n\n    func testMatchPositiveMessage() {\n        failsWithErrorMessage(\"expected to match error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 2)))\n        }\n        failsWithErrorMessage(\"expected to match error <Cry>, got <Laugh>\") {\n            expect(Error.Laugh).to(matchError(Error.Cry))\n        }\n        failsWithErrorMessage(\"expected to match error <code=1>, got <code=0>\") {\n            expect(CustomDebugStringConvertibleError.A).to(matchError(CustomDebugStringConvertibleError.B))\n        }\n\n        failsWithErrorMessage(\"expected to match error <Error Domain=err Code=1 \\\"(null)\\\">, got <Error Domain=err Code=0 \\\"(null)\\\">\") {\n            let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n            let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n            expect(error1).to(matchError(error2))\n        }\n    }\n\n    func testMatchNegativeMessage() {\n        failsWithErrorMessage(\"expected to not match error <Laugh>, got <Laugh>\") {\n            expect(Error.Laugh).toNot(matchError(Error.Laugh))\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).to(matchError(Error.Laugh))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).toNot(matchError(Error.Laugh))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/MatchTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass MatchTest:XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchPositive\", testMatchPositive),\n            (\"testMatchNegative\", testMatchNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testMatchNils\", testMatchNils),\n        ]\n    }\n\n    func testMatchPositive() {\n        expect(\"11:14\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchNegative() {\n        expect(\"hello\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchPositiveMessage() {\n        let message = \"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\"\n        failsWithErrorMessage(message) {\n            expect(\"hello\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n    \n    func testMatchNegativeMessage() {\n        let message = \"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:14>\"\n        failsWithErrorMessage(message) {\n            expect(\"11:14\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n\n    func testMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/PostNotificationTest.swift",
    "content": "import XCTest\nimport Nimble\nimport Foundation\n\nclass PostNotificationTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPassesWhenNoNotificationsArePosted\", testPassesWhenNoNotificationsArePosted),\n            (\"testPassesWhenExpectedNotificationIsPosted\", testPassesWhenExpectedNotificationIsPosted),\n            (\"testPassesWhenAllExpectedNotificationsArePosted\", testPassesWhenAllExpectedNotificationsArePosted),\n            (\"testFailsWhenNoNotificationsArePosted\", testFailsWhenNoNotificationsArePosted),\n            (\"testFailsWhenNotificationWithWrongNameIsPosted\", testFailsWhenNotificationWithWrongNameIsPosted),\n            (\"testFailsWhenNotificationWithWrongObjectIsPosted\", testFailsWhenNotificationWithWrongObjectIsPosted),\n            (\"testPassesWhenExpectedNotificationEventuallyIsPosted\", testPassesWhenExpectedNotificationEventuallyIsPosted),\n        ]\n    }\n\n    var notificationCenter: NSNotificationCenter!\n\n    #if _runtime(_ObjC)\n    override func setUp() {\n        _setUp()\n        super.setUp()\n    }\n    #else\n    func setUp() {\n        _setUp()\n    }\n    #endif\n\n\n    func _setUp() {\n        notificationCenter = NSNotificationCenter()\n    }\n\n    func testPassesWhenNoNotificationsArePosted() {\n        expect {\n            // no notifications here!\n            return nil\n        }.to(postNotifications(beEmpty(), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenExpectedNotificationIsPosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        expect {\n            self.notificationCenter.postNotification(testNotification)\n        }.to(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenAllExpectedNotificationsArePosted() {\n        let foo = NSNumber(int: 1)\n        let bar = NSNumber(int: 2)\n        let n1 = NSNotification(name: \"Foo\", object: foo)\n        let n2 = NSNotification(name: \"Bar\", object: bar)\n        expect {\n            self.notificationCenter.postNotification(n1)\n            self.notificationCenter.postNotification(n2)\n            return nil\n        }.to(postNotifications(equal([n1, n2]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testFailsWhenNoNotificationsArePosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(testNotification)]>, got no notifications\") {\n            expect {\n                // no notifications here!\n                return nil\n            }.to(postNotifications(equal([testNotification]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongNameIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name + \"a\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongObjectIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name, object: NSObject())\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testPassesWhenExpectedNotificationEventuallyIsPosted() {\n        #if _runtime(_ObjC)\n            let testNotification = NSNotification(name: \"Foo\", object: nil)\n            expect {\n                deferToMainQueue {\n                    self.notificationCenter.postNotification(testNotification)\n                }\n                return nil\n            }.toEventually(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n        #else\n            print(\"\\(#function) is missing because toEventually is not implement on this platform\")\n        #endif\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/RaisesExceptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\nclass RaisesExceptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutException\", testNegativeMatchesDoNotCallClosureWithoutException),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    var anException = NSException(name: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"])\n\n    func testPositiveMatches() {\n        expect { self.anException.raise() }.to(raiseException())\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n            expect(exception.name).to(equal(\"laugh\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"df\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessage(\"expected to raise exception with name <foo>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"foo\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <bar>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"bar\"))\n        }\n\n        failsWithErrorMessage(\n            \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{k = v;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"k\": \"v\"]))\n        }\n\n        failsWithErrorMessage(\"expected to raise any exception, got no exception\") {\n            expect { self.anException }.to(raiseException())\n        }\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <Lulz>, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <bar> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"bar\", reason: \"Lulz\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutException() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to raise exception with name <foo> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <ha> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"ha\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <Lulz> with userInfo <{}> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n                })\n        }\n\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        let innerFailureMessage = \"expected to begin with <fo>, got <laugh>\"\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <wrong> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"wrong\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <Lulz> with userInfo <{}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/SatisfyAnyOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass SatisfyAnyOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testSatisfyAnyOf\", testSatisfyAnyOf),\n            (\"testOperatorOr\", testOperatorOr),\n        ]\n    }\n\n    func testSatisfyAnyOf() {\n        expect(2).to(satisfyAnyOf(equal(2), equal(3)))\n#if _runtime(_ObjC)\n        expect(2).toNot(satisfyAnyOf(equal(3), equal(\"turtles\")))\n#endif\n        expect([1,2,3]).to(satisfyAnyOf(equal([1,2,3]), allPass({$0 < 4}), haveCount(3)))\n        expect(\"turtle\").toNot(satisfyAnyOf(contain(\"a\"), endWith(\"magic\")))\n        expect(82.0).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        expect(false).to(satisfyAnyOf(beTrue(), beFalse()))\n        expect(true).to(satisfyAnyOf(beTruthy(), beFalsy()))\n        \n        failsWithErrorMessage(\n            \"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\") {\n                expect(2).to(satisfyAnyOf(equal(3), equal(4), equal(5)))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {all be less than 4, but failed first at element <5> in <[5, 6, 7]>}, or {equal <[1, 2, 3, 4]>}, got [5, 6, 7]\") {\n                expect([5,6,7]).to(satisfyAnyOf(allPass(\"be less than 4\", {$0 < 4}), equal([1,2,3,4])))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {be true}, got false\") {\n                expect(false).to(satisfyAnyOf(beTrue()))\n        }\n        failsWithErrorMessage(\n            \"expected to not match one of: {be less than <10.5>}, or {be greater than <100.75>}, or {be close to <50.1> (within 0.0001)}, got 50.10001\") {\n                expect(50.10001).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        }\n    }\n    \n    func testOperatorOr() {\n        expect(2).to(equal(2) || equal(3))\n#if _runtime(_ObjC)\n        expect(2).toNot(equal(3) || equal(\"turtles\"))\n#endif\n        expect(\"turtle\").toNot(contain(\"a\") || endWith(\"magic\"))\n        expect(82.0).toNot(beLessThan(10.5) || beGreaterThan(100.75))\n        expect(false).to(beTrue() || beFalse())\n        expect(true).to(beTruthy() || beFalsy())\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/ThrowErrorTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum Error : ErrorType {\n    case Laugh\n    case Cry\n}\n\nenum EquatableError : ErrorType {\n    case Parameterized(x: Int)\n}\n\nextension EquatableError : Equatable {\n}\n\nfunc ==(lhs: EquatableError, rhs: EquatableError) -> Bool {\n    switch (lhs, rhs) {\n    case (.Parameterized(let l), .Parameterized(let r)):\n        return l == r\n    }\n}\n\nenum CustomDebugStringConvertibleError : ErrorType {\n    case A\n    case B\n}\n\nextension CustomDebugStringConvertibleError : CustomDebugStringConvertible {\n    var debugDescription : String {\n        return \"code=\\(_code)\"\n    }\n}\n\nclass ThrowErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testPositiveNegatedMatches\", testPositiveNegatedMatches),\n            (\"testNegativeNegatedMatches\", testNegativeNegatedMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutError\", testNegativeMatchesDoNotCallClosureWithoutError),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect { throw Error.Laugh }.to(throwError())\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh))\n        expect { throw Error.Laugh }.to(throwError(errorType: Error.self))\n        expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 1)))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        // Generic typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { error in\n            guard case EquatableError.Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Explicit typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { (error: EquatableError) in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over errorType argument\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError(errorType: EquatableError.self) { error in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).to(beginWith(\"Nim\"))\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Different case\n        failsWithErrorMessage(\"expected to throw error <Cry>, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry))\n        }\n        // Different case with closure\n        failsWithErrorMessage(\"expected to throw error <Cry> that satisfies block, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry) { _ in return })\n        }\n        // Different case, implementing CustomDebugStringConvertible\n        failsWithErrorMessage(\"expected to throw error <code=1>, got <code=0>\") {\n            expect { throw CustomDebugStringConvertibleError.A }.to(throwError(CustomDebugStringConvertibleError.B))\n        }\n    }\n\n    func testPositiveNegatedMatches() {\n        // No error at all\n        expect { return }.toNot(throwError())\n        // Different case\n        expect { throw Error.Laugh }.toNot(throwError(Error.Cry))\n    }\n\n    func testNegativeNegatedMatches() {\n        // No error at all\n        failsWithErrorMessage(\"expected to not throw any error, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError())\n        }\n        // Different error\n        failsWithErrorMessage(\"expected to not throw error <Laugh>, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError(Error.Laugh))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutError() {\n        failsWithErrorMessage(\"expected to throw error that satisfies block, got no error\") {\n            expect { return }.to(throwError { error in\n                fail()\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to throw error <Laugh> that satisfies block, got no error\") {\n            expect { return }.to(throwError(Error.Laugh) { error in\n                fail()\n            })\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n#if SWIFT_PACKAGE\n        let moduleName = \"Nimbletest\"\n#else\n        let moduleName = \"NimbleTests\"\n#endif\n        let innerFailureMessage = \"expected to equal <foo>, got <\\(moduleName).Error>\"\n        let closure = { (error: Error) in\n            print(\"** In closure! With domain \\(error._domain)\")\n            expect(error._domain).to(equal(\"foo\"))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error from type <Error> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(closure: closure))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error <Laugh> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(Error.Laugh, closure: closure))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/SynchronousTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass SynchronousTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testFailAlwaysFails\", testFailAlwaysFails),\n            (\"testUnexpectedErrorsThrownFails\", testUnexpectedErrorsThrownFails),\n            (\"testToMatchesIfMatcherReturnsTrue\", testToMatchesIfMatcherReturnsTrue),\n            (\"testToProvidesActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToMatchAgainstLazyProperties\", testToMatchAgainstLazyProperties),\n            (\"testToNotMatchesIfMatcherReturnsTrue\", testToNotMatchesIfMatcherReturnsTrue),\n            (\"testToNotProvidesActualValueExpression\", testToNotProvidesActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpression\", testToNotProvidesAMemoizedActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToNotNegativeMatches\", testToNotNegativeMatches),\n            (\"testNotToMatchesLikeToNot\", testNotToMatchesLikeToNot),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSCocoaErrorDomain, code: 42, userInfo: nil)\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testFailAlwaysFails() {\n        failsWithErrorMessage(\"My error message\") {\n            fail(\"My error message\")\n        }\n        failsWithErrorMessage(\"fail() always fails\") {\n            fail()\n        }\n    }\n\n    func testUnexpectedErrorsThrownFails() {\n#if _runtime(_ObjC) // This test triggers a weird segfault on Linux currently\n        failsWithErrorMessage(\"expected to equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.to(equal(1))\n        }\n        failsWithErrorMessage(\"expected to not equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toNot(equal(1))\n        }\n#endif\n    }\n\n    func testToMatchesIfMatcherReturnsTrue() {\n        expect(1).to(MatcherFunc { expr, failure in true })\n        expect{1}.to(MatcherFunc { expr, failure in true })\n    }\n\n    func testToProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).to(MatcherFunc { expr, failure in value = try expr.evaluate(); return true })\n        expect(value).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToMatchAgainstLazyProperties() {\n        expect(ObjectWithLazyProperty().value).to(equal(\"hello\"))\n        expect(ObjectWithLazyProperty().value).toNot(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).to(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).toNot(equal(\"hello\"))\n    }\n\n    // repeated tests from to() for toNot()\n    func testToNotMatchesIfMatcherReturnsTrue() {\n        expect(1).toNot(MatcherFunc { expr, failure in false })\n        expect{1}.toNot(MatcherFunc { expr, failure in false })\n    }\n\n    func testToNotProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).toNot(MatcherFunc { expr, failure in value = try expr.evaluate(); return false })\n        expect(value).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotNegativeMatches() {\n        failsWithErrorMessage(\"expected to not match, got <1>\") {\n            expect(1).toNot(MatcherFunc { expr, failure in true })\n        }\n    }\n\n\n    func testNotToMatchesLikeToNot() {\n        expect(1).notTo(MatcherFunc { expr, failure in false })\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/UserDescriptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass UserDescriptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToMatcher_CustomFailureMessage\", testToMatcher_CustomFailureMessage),\n            (\"testNotToMatcher_CustomFailureMessage\", testNotToMatcher_CustomFailureMessage),\n            (\"testToNotMatcher_CustomFailureMessage\", testToNotMatcher_CustomFailureMessage),\n            (\"testToEventuallyMatch_CustomFailureMessage\", testToEventuallyMatch_CustomFailureMessage),\n            (\"testToEventuallyNotMatch_CustomFailureMessage\", testToEventuallyNotMatch_CustomFailureMessage),\n            (\"testToNotEventuallyMatch_CustomFailureMessage\", testToNotEventuallyMatch_CustomFailureMessage),\n        ]\n    }\n    \n    func testToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to match, got <1>\") {\n                expect(1).to(MatcherFunc { expr, failure in false }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testNotToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).notTo(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToNotMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).toNot(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These aren't eventually equal!\\n\" +\n            \"expected to eventually equal <1>, got <0>\") {\n                expect { 0 }.toEventually(equal(1), description: \"These aren't eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToEventuallyNotMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToNotEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/NimbleSpecHelper.h",
    "content": "@import Nimble;\n#import \"NimbleTests-Swift.h\"\n\n// Use this when you want to verify the failure message for when an expectation fails\n#define expectFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessage:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n#define expectFailureMessages(MSGS, BLOCK) \\\n[NimbleHelper expectFailureMessages:(MSGS) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n\n// Use this when you want to verify the failure message with the nil message postfixed\n// to it: \" (use beNil() to match nils)\"\n#define expectNilFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessageForNil:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCAllPassTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAllPassTest : XCTestCase\n\n@end\n\n@implementation ObjCAllPassTest\n\n- (void)testPositiveMatches {\n    expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n    expect(@[@1, @2, @3,@4]).toNot(allPass(beGreaterThan(@5)));\n    \n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).to(allPass(beLessThan(@5)));\n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beGreaterThan(@5)));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to all be less than <3>, but failed first at element\"\n                         \" <3> in <[1, 2, 3, 4]>\", ^{\n                             expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@3)));\n                         });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect(@[@1, @2, @3,@4]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).to(allPass(beLessThan(@5)));\n                         });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).toNot(allPass(beLessThan(@5)));\n                         });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCAsyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAsyncTest : XCTestCase\n\n@end\n\n@implementation ObjCAsyncTest\n\n- (void)testAsync {\n    __block id obj = @1;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = nil;\n    });\n    expect(obj).toEventually(beNil());\n}\n\n\n- (void)testAsyncWithCustomTimeout {\n    __block id obj = nil;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = @1;\n    });\n    expect(obj).withTimeout(5).toEventuallyNot(beNil());\n}\n\n- (void)testAsyncCallback {\n    waitUntil(^(void (^done)(void)){\n        done();\n    });\n\n    expectFailureMessage(@\"Waited more than 1.0 second\", ^{\n        waitUntil(^(void (^done)(void)){ /* ... */ });\n    });\n\n    expectFailureMessage(@\"Waited more than 0.01 seconds\", ^{\n        waitUntilTimeout(0.01, ^(void (^done)(void)){\n            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n                [NSThread sleepForTimeInterval:0.1];\n                done();\n            });\n        });\n    });\n\n    expectFailureMessage(@\"expected to equal <goodbye>, got <hello>\", ^{\n        waitUntil(^(void (^done)(void)){\n            [NSThread sleepForTimeInterval:0.1];\n            expect(@\"hello\").to(equal(@\"goodbye\"));\n            done();\n        });\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeAnInstanceOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeAnInstanceOfTest : XCTestCase\n@end\n\n@implementation ObjCBeAnInstanceOfTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beAnInstanceOf([NSNull class]));\n    expect(@1).toNot(beAnInstanceOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be an instance of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAnInstanceOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be an instance of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be an instance of NSNull, got <nil>\", ^{\n        expect(nil).to(beAnInstanceOf([NSNull class]));\n    });\n\n    expectNilFailureMessage(@\"expected to not be an instance of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeCloseToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeCloseToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeCloseToTest\n\n- (void)testPositiveMatches {\n    expect(@1.2).to(beCloseTo(@1.2001));\n    expect(@1.2).to(beCloseTo(@2).within(10));\n    expect(@2).toNot(beCloseTo(@1));\n    expect(@1.00001).toNot(beCloseTo(@1).within(0.00000001));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be close to <0> (within 0.001), got <1>\", ^{\n        expect(@1).to(beCloseTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be close to <0> (within 0.001), got <0.0001>\", ^{\n        expect(@(0.0001)).toNot(beCloseTo(@0));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).to(beCloseTo(@0));\n    });\n    expectNilFailureMessage(@\"expected to not be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).toNot(beCloseTo(@0));\n    });\n}\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeEmptyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeEmptyTest : XCTestCase\n@end\n\n@implementation ObjCBeEmptyTest\n\n- (void)testPositiveMatches {\n    expect(@[]).to(beEmpty());\n    expect(@\"\").to(beEmpty());\n    expect(@{}).to(beEmpty());\n    expect([NSSet set]).to(beEmpty());\n    expect([NSIndexSet indexSet]).to(beEmpty());\n    expect([NSHashTable hashTableWithOptions:NSPointerFunctionsWeakMemory]).to(beEmpty());\n\n    expect(@[@1, @2]).toNot(beEmpty());\n    expect(@\"a\").toNot(beEmpty());\n    expect(@{@\"key\": @\"value\"}).toNot(beEmpty());\n    expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    expect(table).toNot(beEmpty());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be empty, got <foo>\", ^{\n        expect(@\"foo\").to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect(@[@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{key = value;}>\", ^{\n        expect(@{@\"key\": @\"value\"}).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).to(beEmpty());\n    });\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    NSString *tableString = [[table description] stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be empty, got <%@>\", tableString]), ^{\n        expect(table).to(beEmpty());\n    });\n\n    expectFailureMessage(@\"expected to not be empty, got <>\", ^{\n        expect(@\"\").toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <()>\", ^{\n        expect(@[]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{}>\", ^{\n        expect(@{}).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <NSHashTable {}>\", ^{\n        expect([NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory]).toNot(beEmpty());\n    });\n}\n\n- (void)testItDoesNotMatchNil {\n    expectNilFailureMessage(@\"expected to be empty, got <nil>\", ^{\n        expect(nil).to(beEmpty());\n    });\n    expectNilFailureMessage(@\"expected to not be empty, got <nil>\", ^{\n        expect(nil).toNot(beEmpty());\n    });\n}\n\n- (void)testItReportsTypesItMatchesAgainst {\n    expectFailureMessage(@\"expected to be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).toNot(beEmpty());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeFalseTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalseTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalseTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalse());\n    expect(@YES).toNot(beFalse());\n}\n\n- (void)testNegativeMatches {\n    expectNilFailureMessage(@\"expected to be false, got <nil>\", ^{\n        expect(nil).to(beFalse());\n    });\n    expectNilFailureMessage(@\"expected to not be false, got <nil>\", ^{\n        expect(nil).toNot(beFalse());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeFalsyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalsyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalsyTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalsy());\n    expect(@YES).toNot(beFalsy());\n    expect(nil).to(beFalsy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to not be falsy, got <nil>\", ^{\n        expect(nil).toNot(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be falsy, got <1>\", ^{\n        expect(@1).to(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThanOrEqualTo(@2));\n    expect(@2).toNot(beGreaterThanOrEqualTo(@3));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than or equal to <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThanOrEqualTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be greater than or equal to <1>, got <2>\", ^{\n        expect(@2).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than or equal to <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThanOrEqualTo(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than or equal to <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThan(@1));\n    expect(@2).toNot(beGreaterThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThan(@(0)));\n    });\n    expectFailureMessage(@\"expected to not be greater than <1>, got <0>\", ^{\n        expect(@0).toNot(beGreaterThan(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThan(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeIdenticalToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeIdenticalToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeIdenticalToTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beIdenticalTo([NSNull null]));\n    expect(@2).toNot(beIdenticalTo(@3));\n}\n\n- (void)testNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(beIdenticalTo(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(beIdenticalTo(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testAliasPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(be([NSNull null]));\n    expect(@2).toNot(be(@3));\n}\n\n- (void)testAliasNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(be(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(be(obj));\n    });\n}\n\n- (void)testAliasNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(be(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(be(obj));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeKindOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeKindOfTest : XCTestCase\n\n@end\n\n@implementation ObjCBeKindOfTest\n\n- (void)testPositiveMatches {\n    NSMutableArray *array = [NSMutableArray array];\n    expect(array).to(beAKindOf([NSArray class]));\n    expect(@1).toNot(beAKindOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be a kind of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAKindOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be a kind of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be a kind of NSNull, got <nil>\", ^{\n        expect(nil).to(beAKindOf([NSNull class]));\n    });\n    expectNilFailureMessage(@\"expected to not be a kind of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeLessThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThanOrEqualTo(@2));\n    expect(@2).toNot(beLessThanOrEqualTo(@1));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than or equal to <1>, got <2>\", ^{\n        expect(@2).to(beLessThanOrEqualTo(@1));\n    });\n    expectFailureMessage(@\"expected to not be less than or equal to <1>, got <1>\", ^{\n        expect(@1).toNot(beLessThanOrEqualTo(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than or equal to <1>, got <nil>\", ^{\n        expect(nil).to(beLessThanOrEqualTo(@1));\n    });\n    expectNilFailureMessage(@\"expected to not be less than or equal to <-1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThanOrEqualTo(@(-1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeLessThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThan(@3));\n    expect(@2).toNot(beLessThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beLessThan(@0));\n    });\n    expectFailureMessage(@\"expected to not be less than <1>, got <0>\", ^{\n        expect(@0).toNot(beLessThan(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than <-1>, got <nil>\", ^{\n        expect(nil).to(beLessThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be less than <1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThan(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeNilTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeNilTest : XCTestCase\n\n@end\n\n@implementation ObjCBeNilTest\n\n- (void)testPositiveMatches {\n    expect(nil).to(beNil());\n    expect(@NO).toNot(beNil());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be nil, got <1>\", ^{\n        expect(@1).to(beNil());\n    });\n    expectFailureMessage(@\"expected to not be nil, got <nil>\", ^{\n        expect(nil).toNot(beNil());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeTrueTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTrueTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTrueTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTrue());\n    expect(@NO).toNot(beTrue());\n    expect(nil).toNot(beTrue());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be true, got <0>\", ^{\n        expect(@NO).to(beTrue());\n    });\n    expectFailureMessage(@\"expected to be true, got <nil>\", ^{\n        expect(nil).to(beTrue());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeTruthyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTruthyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTruthyTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTruthy());\n    expect(@NO).toNot(beTruthy());\n    expect(nil).toNot(beTruthy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be truthy, got <nil>\", ^{\n        expect(nil).to(beTruthy());\n    });\n    expectFailureMessage(@\"expected to not be truthy, got <1>\", ^{\n        expect(@1).toNot(beTruthy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeginWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeginWithTest : XCTestCase\n\n@end\n\n@implementation ObjCBeginWithTest\n\n- (void)testPositiveMatches {\n    expect(@\"hello world!\").to(beginWith(@\"hello\"));\n    expect(@\"hello world!\").toNot(beginWith(@\"world\"));\n\n    NSArray *array = @[@1, @2];\n    expect(array).to(beginWith(@1));\n    expect(array).toNot(beginWith(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to begin with <bar>, got <foo>\", ^{\n        expect(@\"foo\").to(beginWith(@\"bar\"));\n    });\n    expectFailureMessage(@\"expected to not begin with <foo>, got <foo>\", ^{\n        expect(@\"foo\").toNot(beginWith(@\"foo\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to begin with <1>, got <nil>\", ^{\n        expect(nil).to(beginWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not begin with <1>, got <nil>\", ^{\n        expect(nil).toNot(beginWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCContainTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCContainTest : XCTestCase\n\n@end\n\n@implementation ObjCContainTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1));\n    expect(array).toNot(contain(@\"HI\"));\n    expect(@\"String\").to(contain(@\"Str\"));\n    expect(@\"Other\").toNot(contain(@\"Str\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to contain <3>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).to(contain(@3));\n    });\n    expectFailureMessage(@\"expected to not contain <2>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).toNot(contain(@2));\n    });\n\n    expectFailureMessage(@\"expected to contain <hi>, got <la>\", ^{\n        expect(@\"la\").to(contain(@\"hi\"));\n    });\n    expectFailureMessage(@\"expected to not contain <hi>, got <hihihi>\", ^{\n        expect(@\"hihihi\").toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to contain <3>, got <nil>\", ^{\n        expect(nil).to(contain(@3));\n    });\n    expectNilFailureMessage(@\"expected to not contain <3>, got <nil>\", ^{\n        expect(nil).toNot(contain(@3));\n    });\n\n    expectNilFailureMessage(@\"expected to contain <hi>, got <nil>\", ^{\n        expect(nil).to(contain(@\"hi\"));\n    });\n    expectNilFailureMessage(@\"expected to not contain <hi>, got <nil>\", ^{\n        expect(nil).toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testVariadicArguments {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1, @2));\n    expect(array).toNot(contain(@\"HI\", @\"whale\"));\n    expect(@\"String\").to(contain(@\"Str\", @\"ng\"));\n    expect(@\"Other\").toNot(contain(@\"Str\", @\"Oth\"));\n\n\n    expectFailureMessage(@\"expected to contain <Optional(a), Optional(bar)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).to(contain(@\"a\", @\"bar\"));\n    });\n\n    expectFailureMessage(@\"expected to not contain <Optional(bar), Optional(b)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).toNot(contain(@\"bar\", @\"b\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCEndWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEndWithTest : XCTestCase\n\n@end\n\n@implementation ObjCEndWithTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(@\"hello world!\").to(endWith(@\"world!\"));\n    expect(@\"hello world!\").toNot(endWith(@\"hello\"));\n    expect(array).to(endWith(@2));\n    expect(array).toNot(endWith(@1));\n    expect(@1).toNot(contain(@\"foo\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to end with <?>, got <hello world!>\", ^{\n        expect(@\"hello world!\").to(endWith(@\"?\"));\n    });\n    expectFailureMessage(@\"expected to not end with <!>, got <hello world!>\", ^{\n        expect(@\"hello world!\").toNot(endWith(@\"!\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to end with <1>, got <nil>\", ^{\n        expect(nil).to(endWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not end with <1>, got <nil>\", ^{\n        expect(nil).toNot(endWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCEqualTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEqualTest : XCTestCase\n\n@end\n\n@implementation ObjCEqualTest\n\n- (void)testPositiveMatches {\n    expect(@1).to(equal(@1));\n    expect(@1).toNot(equal(@2));\n    expect(@1).notTo(equal(@2));\n    expect(@\"hello\").to(equal(@\"hello\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to equal <2>, got <1>\", ^{\n        expect(@1).to(equal(@2));\n    });\n    expectFailureMessage(@\"expected to not equal <1>, got <1>\", ^{\n        expect(@1).toNot(equal(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to equal <nil>, got <nil>\", ^{\n        expect(nil).to(equal(nil));\n    });\n    expectNilFailureMessage(@\"expected to not equal <nil>, got <nil>\", ^{\n        expect(nil).toNot(equal(nil));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCHaveCount.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCHaveCountTest : XCTestCase\n\n@end\n\n@implementation ObjCHaveCountTest\n\n- (void)testHaveCountForNSArray {\n    expect(@[@1, @2, @3]).to(haveCount(@3));\n    expect(@[@1, @2, @3]).notTo(haveCount(@1));\n\n    expect(@[]).to(haveCount(@0));\n    expect(@[@1]).notTo(haveCount(@0));\n\n    expectFailureMessage(@\"expected to have (1, 2, 3) with count 1, got 3\", ^{\n        expect(@[@1, @2, @3]).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have (1, 2, 3) with count 3, got 3\", ^{\n        expect(@[@1, @2, @3]).notTo(haveCount(@3));\n    });\n\n}\n\n- (void)testHaveCountForNSDictionary {\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@3));\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have {1 = 1;2 = 2;3 = 3;} with count 1, got 3\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have {1 = 1;2 = 2;3 = 3;} with count 3, got 3\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSHashtable {\n    NSHashTable *const table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    [table addObject:@2];\n    [table addObject:@3];\n\n    expect(table).to(haveCount(@3));\n    expect(table).notTo(haveCount(@1));\n\n    NSString *msg = [NSString stringWithFormat:\n                     @\"expected to have %@with count 1, got 3\",\n                     [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).to(haveCount(@1));\n    });\n\n\n    msg = [NSString stringWithFormat:\n           @\"expected to not have %@with count 3, got 3\",\n           [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSSet {\n    NSSet *const set = [NSSet setWithArray:@[@1, @2, @3]];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have {(3,1,2)} with count 1, got 3\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have {(3,1,2)} with count 3, got 3\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSIndexSet {\n    NSIndexSet *const set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have (1, 2, 3) with count 1, got 3\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have (1, 2, 3) with count 3, got 3\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForUnsupportedTypes {\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFConstantString\", ^{\n        expect(@\"string\").to(haveCount(@6));\n    });\n\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFNumber\", ^{\n        expect(@1).to(haveCount(@6));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCMatchTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCMatchTest : XCTestCase\n\n@end\n\n@implementation ObjCMatchTest\n\n- (void)testPositiveMatches {\n    expect(@\"11:14\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    expect(@\"hello\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\", ^{\n        expect(@\"hello\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:22>\", ^{\n        expect(@\"11:22\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectNilFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCRaiseExceptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCRaiseExceptionTest : XCTestCase\n\n@end\n\n@implementation ObjCRaiseExceptionTest\n\n- (void)testPositiveMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ @throw exception; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException().named(NSInvalidArgumentException));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\"));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}));\n\n    expectAction(^{ }).toNot(raiseException());\n}\n\n- (void)testPositiveMatchesWithBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n}\n\n- (void)testNegativeMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n\n    expectFailureMessage(@\"expected to raise any exception, got no exception\", ^{\n        expectAction(^{ }).to(raiseException());\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <foo>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(@\"foo\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <cakes>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"cakes\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{k = v;}>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"No food\").\n                              userInfo(@{@\"k\": @\"v\"}));\n    });\n\n    expectFailureMessage(@\"expected to not raise any exception, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\", ^{\n        expectAction(^{ [exception raise]; }).toNot(raiseException());\n    });\n}\n\n- (void)testNegativeMatchesWithPassingBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectFailureMessage(@\"expected to raise exception that satisfies block, got no exception\", ^{\n        expect(exception).to(raiseException().\n                             satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"LOL\"));\n        }));\n    });\n\n    NSString *outerFailureMessage = @\"expected to raise exception that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <foo> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(@\"foo\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <bar> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"bar\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n}\n\n- (void)testNegativeMatchesWithNegativeBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    NSString *outerFailureMessage;\n\n    NSString const *innerFailureMessage = @\"expected to equal <foo>, got <NSInvalidArgumentException>\";\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{key = value;}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{@\"key\": @\"value\"}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCSatisfyAnyOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSatisfyAnyOfTest : XCTestCase\n\n@end\n\n@implementation ObjCSatisfyAnyOfTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(satisfyAnyOf(equal(@2), equal(@3)));\n    expect(@2).toNot(satisfyAnyOf(equal(@3), equal(@16)));\n    expect(@[@1, @2, @3]).to(satisfyAnyOf(equal(@[@1, @2, @3]), allPass(beLessThan(@4))));\n    expect(@NO).to(satisfyAnyOf(beTrue(), beFalse()));\n    expect(@YES).to(satisfyAnyOf(beTrue(), beFalse()));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\", ^{\n        expect(@2).to(satisfyAnyOf(equal(@3), equal(@4), equal(@5)));\n    });\n    \n    expectFailureMessage(@\"expected to match one of: {all be less than <4>, but failed first at element\"\n                         \" <5> in <[5, 6, 7]>}, or {equal <(1, 2, 3, 4)>}, got (5,6,7)\", ^{\n                             expect(@[@5, @6, @7]).to(satisfyAnyOf(allPass(beLessThan(@4)), equal(@[@1, @2, @3, @4])));\n                         });\n    \n    expectFailureMessage(@\"satisfyAnyOf must be called with at least one matcher\", ^{\n        expect(@\"turtles\").to(satisfyAnyOf());\n    });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCSyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSyncTest : XCTestCase\n\n@end\n\n@implementation ObjCSyncTest\n\n- (void)testFailureExpectation {\n    expectFailureMessage(@\"fail() always fails\", ^{\n        fail();\n    });\n\n    expectFailureMessage(@\"This always fails\", ^{\n        failWithMessage(@\"This always fails\");\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCUserDescriptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCUserDescriptionTest : XCTestCase\n\n@end\n\n@implementation ObjCUserDescriptionTest\n\n- (void)testToWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to equal <2>, got <1>\", ^{\n                             expect(@1).toWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).toNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testNotToWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).notToWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToEventuallyWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to eventually equal <2>, got <1>\", ^{\n                             expect(@1).toEventuallyWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToEventuallyNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toEventuallyNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToNotEventuallyWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toNotEventuallyWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjcStringersTest.m",
    "content": "@import XCTest;\n@import Nimble;\n\n@interface ObjcStringersTest : XCTestCase\n\n@end\n\n@implementation ObjcStringersTest\n\n- (void)testItCanStringifyArrays {\n    NSArray *array = @[@1, @2, @3];\n    NSString *result = NMBStringify(array);\n    \n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItCanStringifyIndexSets {\n    NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n    NSString *result = NMBStringify(indexSet);\n\n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItRoundsLongDecimals {\n    NSNumber *num = @291.123782163;\n    NSString *result = NMBStringify(num);\n    \n    expect(result).to(equal(@\"291.1238\"));\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ndependencies:\n  pre:\n    - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n\ntest:\n  override:\n    - NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 ./test ios\n    - NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 ./test osx\n    - eval \"$(swiftenv init -)\"; ./test swiftpm:\n        environment:\n          SWIFTENV_ROOT: $HOME/.swiftenv\n          PATH: $SWIFTENV_ROOT/bin:$PATH\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Nimble\nPODSPEC=Nimble.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"---------------- Released as $VERSION_TAG ----------------\"\necho \n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for GitHub styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Nimble/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/Nimble/test",
    "content": "#!/bin/bash\n\nGREEN=\"\\033[0;32m\"\nCLEAR=\"\\033[0m\"\n\nif which xcodebuild > /dev/null; then\n    echo -e \"Gathering ${GREEN}xcodebuild sdk versions${CLEAR}...\"\n    BUILD_DIR=`pwd`/build\n    LATEST_IOS_SDK_VERSION=`xcodebuild -showsdks | grep iphonesimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_TVOS_SDK_VERSION=`xcodebuild -showsdks | grep appletvsimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_OSX_SDK_VERSION=`xcodebuild -showsdks | grep 'macosx' | cut -d ' ' -f 3 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    BUILD_IOS_SDK_VERSION=${NIMBLE_BUILD_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    RUNTIME_IOS_SDK_VERSION=${NIMBLE_RUNTIME_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    BUILD_TVOS_SDK_VERSION=${NIMBLE_BUILD_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    RUNTIME_TVOS_SDK_VERSION=${NIMBLE_RUNTIME_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    BUILD_OSX_SDK_VERSION=${NIMBLE_BUILD_OSX_SDK_VERSION:-$LATEST_OSX_SDK_VERSION}\nfi\n\nset -e\n\nfunction color_if_overridden {\n    local actual=$1\n    local env_var=$2\n    if [ -z \"$env_var\" ]; then\n        printf \"$actual\"\n    else\n        printf \"$GREEN$actual$CLEAR\"\n    fi\n}\n\nfunction print_env {\n    echo \"=== Environment ===\"\n    echo \" iOS:\"\n    echo \"   Latest iOS SDK: $LATEST_IOS_SDK_VERSION\"\n    echo \"   Building with iOS SDK: `color_if_overridden $BUILD_IOS_SDK_VERSION $NIMBLE_BUILD_IOS_SDK_VERSION`\"\n    echo \"   Running with iOS SDK: `color_if_overridden $RUNTIME_IOS_SDK_VERSION $NIMBLE_RUNTIME_IOS_SDK_VERSION`\"\n    echo\n    echo \" tvOS:\"\n    echo \"   Latest tvOS SDK: $LATEST_TVOS_SDK_VERSION\"\n    echo \"   Building with tvOS SDK: `color_if_overridden $BUILD_TVOS_SDK_VERSION $NIMBLE_BUILD_TVOS_SDK_VERSION`\"\n    echo \"   Running with tvOS SDK: `color_if_overridden $RUNTIME_TVOS_SDK_VERSION $NIMBLE_RUNTIME_TVOS_SDK_VERSION`\"\n    echo\n    echo \" Mac OS X:\"\n    echo \"   Latest OS X SDK: $LATEST_OSX_SDK_VERSION\"\n    echo \"   Building with OS X SDK: `color_if_overridden $BUILD_OSX_SDK_VERSION $NIMBLE_BUILD_OSX_SDK_VERSION`\"\n    echo\n    echo \"======= END =======\"\n    echo\n}\n\nfunction run {\n    echo -e \"$GREEN==>$CLEAR $@\"\n    \"$@\"\n}\n\nfunction test_ios {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPad Air,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPhone 5s,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n}\n\nfunction test_tvos {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-tvOS\" -configuration \"Debug\" -sdk \"appletvsimulator$BUILD_TVOS_SDK_VERSION\" -destination \"name=Apple TV 1080p,OS=$RUNTIME_TVOS_SDK_VERSION\" build test\n}\n\nfunction test_osx {\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-OSX\" -configuration \"Debug\" -sdk \"macosx$BUILD_OSX_SDK_VERSION\" build test\n}\n\nfunction test_podspec {\n    echo \"Gathering CocoaPods installation information...\"\n    run bundle exec pod --version\n    echo \"Linting podspec...\"\n    run bundle exec pod lib lint Nimble.podspec\n}\n\nfunction test_swiftpm {\n    run swift build --clean && swift build && swift test\n}\n\nfunction test() {\n    test_ios\n    test_tvos\n    test_osx\n\n    if which swift-test; then\n        test_swiftpm\n    else\n        echo \"Not testing with the Swift Package Manager because swift-test is not installed\"\n    fi\n}\n\nfunction clean {\n    run rm -rf ~/Library/Developer/Xcode/DerivedData\\; true\n}\n\nfunction help {\n    echo \"Usage: $0 COMMANDS\"\n    echo\n    echo \"COMMANDS:\"\n    echo \" clean        - Cleans the derived data directory of Xcode. Assumes default location\"\n    echo \" ios          - Runs the tests as an iOS device\"\n    echo \" tvos         - Runs the tests as an tvOS device\"\n    echo \" osx          - Runs the tests on Mac OS X 10.10 (Yosemite and newer only)\"\n    echo \" podspec      - Runs pod lib lint against the podspec to detect breaking changes\"\n    echo \" all          - Runs the all tests of ios, tvos and osx\"\n    echo \" swiftpm      - Runs the tests built by the Swift Package Manager\"\n    echo \" help         - Displays this help\"\n    echo\n    exit 1\n}\n\nfunction main {\n    print_env\n    for arg in $@\n    do\n        case \"$arg\" in\n            clean) clean ;;\n            ios) test_ios ;;\n            tvos) test_tvos ;;\n            osx) test_osx ;;\n            podspec) test_podspec ;;\n            test) test ;;\n            all) test ;;\n            swiftpm) test_swiftpm ;;\n            help) help ;;\n        esac\n    done\n\n    if [ $# -eq 0 ]; then\n        clean\n        test\n    fi\n}\n\nmain $@\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/.gitignore",
    "content": "# Xcode\n#\n# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore\n\n## Build generated\nbuild/\nDerivedData\n\n## Various settings\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata\n\n## Other\n*.xccheckout\n*.moved-aside\n*.xcuserstate\n*.xcscmblueprint\n\n## Obj-C/Swift specific\n*.hmap\n*.ipa\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\nPackages/\n.build/\n\n# CocoaPods\n#\n# We recommend against adding the Pods directory to your .gitignore. However\n# you should judge for yourself, the pros and cons are mentioned at:\n# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control\n#\n# Pods/\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# fastlane\n#\n# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the\n# screenshots whenever they are needed.\n# For more information about the recommended setup visit:\n# https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md\n\nfastlane/report.xml\nfastlane/screenshots\n\n# Mac OS X\n.DS_Store\n\n# Quick\nQuick.framework.zip\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/.gitmodules",
    "content": "[submodule \"Externals/Nimble\"]\n\tpath = Externals/Nimble\n\turl = https://github.com/Quick/Nimble.git\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      env:\n        - PLATFORM=osx\n    - os: osx\n      env:\n        - PLATFORM=ios\n    - os: osx\n      env:\n        - PLATFORM=tvos\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=osx\n        - XCODE_ACTION=\"build-for-testing test-without-building\"\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=ios\n        - XCODE_ACTION=\"build-for-testing test-without-building\"\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=tvos\n        - XCODE_ACTION=\"build-for-testing test-without-building\"\n    - os: osx\n      sudo: required\n      env:\n        - PODSPEC=1\n    - os: linux\n      env:\n        - PLATFORM=linux\n      sudo: required\n      dist: trusty\ninstall:\n  - if [[ \"$TRAVIS_OS_NAME\" == \"osx\"   ]]; then ./script/travis-install-osx;   fi\n  - if [[ \"$TRAVIS_OS_NAME\" == \"linux\" ]]; then ./script/travis-install-linux; fi\n  - if [[ \"$PODSPEC\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - if [[ \"$TRAVIS_OS_NAME\" == \"osx\"   ]]; then ./script/travis-script-osx;   fi\n  - if [[ \"$TRAVIS_OS_NAME\" == \"linux\" ]]; then ./script/travis-script-linux; fi\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](http://doctoc.herokuapp.com/)*\n\n- [Welcome to Quick!](#welcome-to-quick!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n  - [Creating a Release](#creating-a-release)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Quick!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nQuick should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Quick / Nimble (eg - v0.7.0 or git sha `7d0b8c21357839a8c5228863b77faecf709254a9`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- After cloning the repository, run `git submodule update --init` to pull the Nimble submodule.\n- Use `Quick.xcworkspace` to work on Quick. The workspace includes\n  Nimble, which is used in Quick's tests.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of both Quick\n  and Nimble pass before submitting your pull request. You can run all\n  the iOS and OS X unit tests using `rake`.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods. See `QuickSpec.m` for an example.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  Pull requests should be issued from personal forks. The Quick repo\n  should be reserved for long-running feature branches.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n## Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Quick/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/ArrangeActAssert.md",
    "content": "# Effective Tests Using XCTest: Arrange, Act, and Assert\n\nWhether you're using XCTest, Quick, or another testing framework, you can write\neffective unit tests by following a simple pattern:\n\n1. Arrange\n2. Act\n3. Assert\n\n## Using Arrange, Act, and Assert\n\nFor example, let's look at a simple class called `Banana`:\n\n```swift\n// Banana/Banana.swift\n\n/** A delicious banana. Tastes better if you peel it first. */\npublic class Banana {\n  private var isPeeled = false\n\n  /** Peels the banana. */\n  public func peel() {\n    isPeeled = true\n  }\n\n  /** You shouldn't eat a banana unless it's been peeled. */\n  public var isEdible: Bool {\n    return isPeeled\n  }\n}\n```\n\nLet's verify the `Banana.peel()` method does what it's supposed to:\n\n```swift\n// BananaTests/BananaTests.swift\n\nclass BananaTests: XCTestCase {\n  func testPeel() {\n    // Arrange: Create the banana we'll be peeling.\n    let banana = Banana()\n\n    // Act: Peel the banana.\n    banana.peel()\n\n    // Assert: Verify that the banana is now edible.\n    XCTAssertTrue(banana.isEdible)\n  }\n}\n```\n\n## Using Clear Test Names\n\nOur `testPeel()` makes sure that, if the `Banana.peel()` method ever\nstops working right, we'll know. This usually happens when our application\ncode changes, which either means:\n\n1. We accidentally broke our application code, so we have to fix the application code\n2. We changed how our application code works--maybe because we're adding a new\n   feature--so we have to change the test code\n\nIf our tests start breaking, how do we know which one of these cases applies? It might\nsurprise you that **the name of the test** is our best indication. Good test names:\n\n1. Are clear about what is being tested.\n2. Are clear about when the test should pass or fail.\n\nIs our `testPeel()` method clearly named? Let's make it clearer:\n\n```diff\n// BananaTests.swift\n\n-func testPeel() {\n+func testPeel_makesTheBananaEdible() {\n  // Arrange: Create the banana we'll be peeling.\n  let banana = Banana()\n\n  // Act: Peel the banana.\n  banana.peel()\n\n  // Assert: Verify that the banana is now edible.\n  XCTAssertTrue(banana.isEdible)\n}\n```\n\nThe new name:\n\n1. Is clear about what is being tested: `testPeel` indicates it's the `Banana.peel()` method.\n2. Is clear about when the test should pass: `makesTheBananaEdible` indicates the\n   banana is edible once the method has been called.\n\n## Testing Conditions\n\nLet's say we want to offer people bananas, using a function called `offer()`:\n\n```swift\n// Banana/Offer.swift\n\n/** Given a banana, returns a string that can be used to offer someone the banana. */\npublic func offer(banana: Banana) -> String {\n  if banana.isEdible {\n    return \"Hey, want a banana?\"\n  } else {\n    return \"Hey, want me to peel this banana for you?\"\n  }\n}\n```\n\nOur application code does one of two things:\n\n1. Either it offers a banana that's already been peeled...\n2. ...or it offers an unpeeled banana.\n\nLet's write tests for these two cases:\n\n```swift\n// BananaTests/OfferTests.swift\n\nclass OfferTests: XCTestCase {\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n    // Arrange: Create a banana and peel it.\n    let banana = Banana()\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n    // Arrange: Create a banana.\n    let banana = Banana()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\nOur test names clearly indicate the **conditions** under which our tests should pass:\nin the case that `whenTheBananaIsPeeled`, `offer()` should `offersTheBanana`. And if\nthe banana isn't peeled? Well, we have a test for that, too!\n\nNotice that we have one test per `if` statement in our application code.\nThis is a great pattern when writing tests: it makes sure every set of conditions\nis tested. If one of those conditions no longer works, or needs to be changed, we'll know\nexactly which test needs to be looked at.\n\n## Shorter \"Arrange\" Steps with `XCTestCase.setUp()`\n\nBoth of our `OfferTests` tests contain the same \"Arrange\" code: they both\ncreate a banana. We should move that code into a single place. Why?\n\n1. As-is, if we change the `Banana` initializer, we'll have to change every test that creates a banana.\n2. Our test methods will be shorter--which is a good thing if (and **only if**) that makes\n   the tests easier to read.\n\nLet's move the `Banana` initialization into the `XCTestCase.setUp()` method, which is called\nonce before every test method.\n\n```diff\n// OfferTests.swift\n\nclass OfferTests: XCTestCase {\n+  var banana: Banana!\n+\n+  override func setUp() {\n+    super.setUp()\n+    banana = Banana()\n+  }\n+\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n-    // Arrange: Create a banana and peel it.\n-    let banana = Banana()\n+    // Arrange: Peel the banana.\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n-    // Arrange: Create a banana.\n-    let banana = Banana()\n-\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n## Sharing \"Arrange\" Code Across Multiple Tests\n\nIf you find yourself using the same \"arrange\" steps across multiple tests,\nyou may want to define a helper function within your test target:\n\n```swift\n// BananaTests/BananaHelpers.swift\n\ninternal func createNewPeeledBanana() -> Banana {\n  let banana = Banana()\n  banana.peel()\n  return banana\n}\n```\n\n> Use a function to define your helpers: functions can't be subclassed, nor\n  can they retain any state. Subclassing and mutable state can make your tests\n  harder to read.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/BehavioralTesting.md",
    "content": "# Don't Test Code, Instead Verify Behavior\n\nTests should only fail if the application **behaves differently**.\nThey should test *what* the application code does, not *how* it does those things.\n\n- Tests that verify *what* an application does are **behavioral tests**.\n- Tests that break if the application code changes, even if the behavior\n  remains the same, are **brittle tests**.\n\nLet's say we have a banana database, called `GorillaDB`.\n`GorillaDB` is a key-value store for bananas. We can save bananas:\n\n```swift\nlet database = GorillaDB()\nlet banana = Banana()\ndatabase.save(banana: banana, key: \"my-banana\")\n```\n\nAnd we can restore bananas from disk later:\n\n```swift\nlet banana = database.load(key: \"my-banana\")\n```\n\n## Brittle Tests\n\nHow can we test this behavior? One way would be to check the size of the database\nafter we save a banana:\n\n```swift\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n  // Assert: The size of the database should have increased by one.\n  XCTAssertEqual(database.size, originalSize + 1)\n}\n```\n\n\nImagine, however, that the source code of `GorillaDB` changes. In order to make\nreading bananas from the database faster, it maintains a cache of the most frequently\nused bananas. `GorillaDB.size` grows as the size of the cache grows, and our test fails:\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/Screenshot_database_size_fail.png)\n\n## Behavioral Tests\n\nThe key to writing behavioral tests is determining exactly what you're expecting\nyour application code to do.\n\nIn the context of our `testSave_savesTheBananaToTheDatabase` test: what is the\nbehavior we expect when we \"save\" a banana to the database? \"Saving\" implies, to me,\nthat we can load it later. So instead of testing that the size of the database increases,\nwe should test that we can load a banana.\n\n```diff\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n-  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n-  // Assert: The size of the database should have increased by one.\n-  XCTAssertEqual(database.size, originalSize + 1)\n+  // Assert: The bananas saved to and loaded from the database should be the same.\n+  XCTAssertEqual(database.load(key: \"test-banana\"), banana)\n}\n```\n\nThe key to writing behavioral tests is asking:\n\n- What exactly should this application code do?\n- Is my test verifying *only* that behavior?\n  Or could it fail due to other aspects of how the code works?\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/ConfiguringQuick.md",
    "content": "# Configuring How Quick Behaves\n\nYou can customize how Quick behaves by subclassing `QuickConfiguration` and\noverriding the `QuickConfiguration.Type.configure()` class method:\n\n```swift\n// Swift\n\nimport Quick\n\nclass ProjectDataTestConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    // ...set options on the configuration object here.\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(ProjectDataTestConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  // ...set options on the configuration object here.\n}\n\nQuickConfigurationEnd\n```\n\nProjects may include several configurations. Quick does not make any\nguarantee about the order in which those configurations are executed.\n\n## Adding Global `beforeEach` and `afterEach` Closures\n\nUsing `QuickConfiguration.beforeEach` and `QuickConfiguration.afterEach`, you\ncan specify closures to be run before or after *every* example in a test suite:\n\n```swift\n// Swift\n\nimport Quick\nimport Sea\n\nclass FinConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach {\n      Dorsal.sharedFin().height = 0\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n#import \"Dorsal.h\"\n\nQuickConfigurationBegin(FinConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEach:^{\n    [Dorsal sharedFin].height = 0;\n  }];\n}\n\nQuickConfigurationEnd\n```\n\nIn addition, Quick allows you to access metadata regarding the current\nexample being run:\n\n```swift\n// Swift\n\nimport Quick\n\nclass SeaConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach { exampleMetadata in\n      // ...use the example metadata object to access the current example name, and more.\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(SeaConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEachWithMetadata:^(ExampleMetadata *data) {\n    // ...use the example metadata object to access the current example name, and more.\n  }];\n}\n\nQuickConfigurationEnd\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/InstallingFileTemplates.md",
    "content": "# Installing Quick File Templates\n\nThe Quick repository includes file templates for both Swift and\nObjective-C specs.\n\n## Alcatraz\n\nQuick templates can be installed via [Alcatraz](https://github.com/supermarin/Alcatraz),\na package manager for Xcode. Just search for the templates from the\nPackage Manager window.\n\n![](http://f.cl.ly/items/3T3q0G1j0b2t1V0M0T04/Screen%20Shot%202014-06-27%20at%202.01.10%20PM.png)\n\n## Manually via the Rakefile\n\nTo manually install the templates, just clone the repository and\nrun the `templates:install` rake task:\n\n```sh\n$ git clone git@github.com:Quick/Quick.git\n$ rake templates:install\n```\n\nUninstalling is easy, too:\n\n```sh\n$ rake templates:uninstall\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/InstallingQuick.md",
    "content": "# Installing Quick\n\n> **If you're using Xcode 7.1,** use the latest version of Quick--`v0.9.0` at the time of writing.\n> New releases are developed on the `swift-2.0` branch.\n\n\n\nQuick provides the syntax to define examples and example groups. Nimble\nprovides the `expect(...).to` assertion syntax. You may use either one,\nor both, in your tests.\n\nThere are three recommended ways of linking Quick to your tests:\n\n1. [Git Submodules](#git-submodules)\n2. [CocoaPods](#cocoapods)\n3. [Carthage](#carthage)\n4. [Swift Package Manager (experimental)](#swift-package-manager)\n\nChoose one and follow the instructions below. Once you've completed them,\nyou should be able to `import Quick` from within files in your test target.\n\n## Git Submodules\n\nTo link Quick and Nimble using Git submodules:\n\n1. Add submodule for Quick.\n2. If you don't already have a `.xcworkspace` for your project, create one. ([Here's how](https://developer.apple.com/library/ios/recipes/xcode_help-structure_navigator/articles/Adding_an_Existing_Project_to_a_Workspace.html))\n3. Add `Quick.xcodeproj` to your project's `.xcworkspace`.\n4. Add `Nimble.xcodeproj` to your project's `.xcworkspace`. It exists in `path/to/Quick/Externals/Nimble`. By adding Nimble from Quick's dependencies (as opposed to adding directly as a submodule), you'll ensure that you're using the correct version of Nimble for whatever version of Quick you're using.\n5. Link `Quick.framework` and `Nimble.framework` in your test target's\n   \"Link Binary with Libraries\" build phase.\n\nFirst, if you don't already have one, create a directory for your Git submodules.\nLet's assume you have a directory named `Vendor`.\n\n**Step One:** Download Quick and Nimble as Git submodules:\n\n```sh\ngit submodule add git@github.com:Quick/Quick.git Vendor/Quick\ngit submodule add git@github.com:Quick/Nimble.git Vendor/Nimble\ngit submodule update --init --recursive\n```\n\n**Step Two:** Add the `Quick.xcodeproj` and `Nimble.xcodeproj` files downloaded above to\nyour project's `.xcworkspace`. For example, this is `Guanaco.xcworkspace`, the\nworkspace for a project that is tested using Quick and Nimble:\n\n![](http://f.cl.ly/items/2b2R0e1h09003u2f0Z3U/Screen%20Shot%202015-02-27%20at%202.19.37%20PM.png)\n\n**Step Three:** Link the `Quick.framework` during your test target's\n`Link Binary with Libraries` build phase. You should see two\n`Quick.frameworks`; one is for OS X, and the other is for iOS.\n\n![](http://cl.ly/image/2L0G0H1a173C/Screen%20Shot%202014-06-08%20at%204.27.48%20AM.png)\n\nDo the same for the `Nimble.framework`, and you're done!\n\n**Updating the Submodules:** If you ever want to update the Quick\nor Nimble submodules to latest version, enter the Quick directory\nand pull from the master repository:\n\n```sh\ncd /path/to/your/project/Vendor/Quick\ngit checkout master\ngit pull --rebase origin master\n```\n\nYour Git repository will track changes to submodules. You'll want to\ncommit the fact that you've updated the Quick submodule:\n\n```sh\ncd /path/to/your/project\ngit commit -m \"Updated Quick submodule\"\n```\n\n**Cloning a Repository that Includes a Quick Submodule:** After other people\nclone your repository, they'll have to pull down the submodules as well.\nThey can do so by running the `git submodule update` command:\n\n```sh\ngit submodule update --init --recursive\n```\n\nYou can read more about Git submodules [here](http://git-scm.com/book/en/Git-Tools-Submodules).\n\n## CocoaPods\n\nFirst, update CocoaPods to Version 0.36.0 or newer, which is necessary to install CocoaPods using Swift.\n\nThen, add Quick and Nimble to your Podfile. Additionally, the ```use_frameworks!``` line is necessary for using Swift in CocoaPods:\n\n```rb\n\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick'\n    pod 'Nimble'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\nFinally, download and link Quick and Nimble to your tests:\n\n```sh\npod install\n```\n\n### Using Swift 1.2?\n\nThe latest release of Quick (0.4.0) is for Swift 2 (Xcode 7), but the latest Nimble (1.0.0) is for Swift 1.2 (Xcode 6).\n\nIf you want Xcode 6 do:\n\n```sh\ntarget 'MyTests' do\n  use_frameworks!\n  pod 'Quick', '~>0.3.0'\n  pod 'Nimble', '~>1.0.0'\nend\n```\n\n## [Carthage](https://github.com/Carthage/Carthage)\n\nAs test targets do not have the \"Embedded Binaries\" section, the frameworks must\nbe added to the target's \"Link Binary With Libraries\" as well as a \"Copy Files\" build phase\nto copy them to the target's Frameworks destination.\n\n > As Carthage builds dynamic frameworks, you will need a valid code signing identity set up.\n\n1. Add Quick to your [`Cartfile.private`](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfileprivate):\n\n    ```\n    github \"Quick/Quick\"\n    github \"Quick/Nimble\"\n    ```\n\n2. Run `carthage update`.\n3. From your `Carthage/Build/[platform]/` directory, add both Quick and Nimble to your test target's \"Link Binary With Libraries\" build phase:\n    ![](http://i.imgur.com/pBkDDk5.png)\n\n4. For your test target, create a new build phase of type \"Copy Files\":\n    ![](http://i.imgur.com/jZATIjQ.png)\n\n5. Set the \"Destination\" to \"Frameworks\", then add both frameworks:\n    ![](http://i.imgur.com/rpnyWGH.png)\n\nThis is not \"the one and only way\" to use Carthage to manage dependencies.\nFor further reference check out the [Carthage documentation](https://github.com/Carthage/Carthage/blob/master/README.md).\n\n## [Swift Package Manager](https://github.com/apple/swift-package-manager)\nWith the advent of the [swift.org](https://swift.org) open-source project, Swift now has an official, though nascent, package manager tool. Notably, this provides the possibility of using Quick on non-Apple platforms for the first time. Initial steps have been taken to allow using Quick to test projects using the Swift Package Manager, although frequent breakage is expected at this point since the tool is still under heavy development.\n\nUntil further documentation has been written, the following repository may be useful as an example of how Quick can be declared as a dependency in a `Package.swift` file for SwiftPM:\n\nhttps://github.com/Quick/QuickOnLinuxExample\n\n### (Not Recommended) Running Quick Specs on a Physical iOS Device\n\nIn order to run specs written in Quick on device, you need to add `Quick.framework` and\n`Nimble.framework` as `Embedded Binaries` to the `Host Application` of the\ntest target. After adding a framework as an embedded binary, Xcode will\nautomatically link the host app against the framework.\n\n![](http://indiedev.kapsi.fi/images/embed-in-host.png)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/MoreResources.md",
    "content": "# More Resources\n\n## Examples of Quick Specs\n\nQuick is used by many companies, open-source projects, and individuals,\nincluding [GitHub](https://github.com/github) and\n[ReactiveCocoa](https://github.com/ReactiveCocoa). For examples, check out:\n\n- https://github.com/ReactiveCocoa/ReactiveCocoa\n- https://github.com/github/Archimedes\n- https://github.com/libgit2/objective-git\n- https://github.com/jspahrsummers/RXSwift\n- https://github.com/artsy/eidolon\n- https://github.com/AshFurrow/Moya\n- https://github.com/nerdyc/Squeal\n- https://github.com/pepibumur/SugarRecord\n\n## More on Unit Testing for OS X and iOS Apps\n\n- **[Quality Coding](http://qualitycoding.org/)**:\n  A blog on iOS development that focuses on unit testing.\n- **[OCMock Tutorials](http://ocmock.org/support/)**:\n  Use OCMock when you need \"fake objects\" in your tests.\n- **[Nocilla: Stunning HTTP stubbing for iOS and Mac OS X](https://github.com/luisobo/Nocilla)**:\n  Use this library to test code that sends requests to, and receives responses from, the Internet.\n- **[Pivotal Labs: Writing Beautiful Specs with Jasmine Custom Matchers](http://pivotallabs.com/writing-beautiful-specs-jasmine-custom-matchers/)**:\n  See [the Nimble documentation](https://github.com/Quick/Nimble) for instructions on how to write\n  custom matchers in Nimble.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/NimbleAssertions.md",
    "content": "# Clearer Tests Using Nimble Assertions\n\nWhen code doesn't work the way it's supposed to, unit tests should make it\n**clear** exactly what's wrong.\n\nTake the following function which, given a bunch of monkeys, only returns\nthe silly monkeys in the bunch:\n\n```swift\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n  return monkeys.filter { $0.silliness == .VerySilly }\n}\n```\n\nNow let's say we have a unit test for this function:\n\n```swift\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n  XCTAssertTrue(contains(sillyMonkeys, kiki))\n}\n```\n\nThe test fails with the following failure message:\n\n```\nXCTAssertTrue failed\n```\n\n![](http://f.cl.ly/items/1G17453p47090y30203d/Screen%20Shot%202015-02-26%20at%209.08.27%20AM.png)\n\nThe failure message leaves a lot to be desired. It leaves us wondering,\n\"OK, so something that should have been true was false--but what?\"\nThat confusion slows us down, since we now have to spend time deciphering test code.\n\n## Better Failure Messages, Part 1: Manually Providing `XCTAssert` Failure Messages\n\n`XCTAssert` assertions allow us to specify a failure message of our own, which certainly helps:\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki))\n+  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n}\n```\n\nBut we have to write our own failure message.\n\n## Better Failure Messages, Part 2: Nimble Failure Messages\n\nNimble makes your test assertions, and their failure messages, easier to read:\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n+  expect(sillyMonkeys).to(contain(kiki))\n}\n```\n\nWe don't have to write our own failure message--the one provided by Nimble\nis already very readable:\n\n```\nexpected to contain <Monkey(name: Kiki, sillines: ExtremelySilly)>,\n                got <[Monkey(name: Jane, silliness: VerySilly)]>\n```\n\n![](http://f.cl.ly/items/3N2e3g2K3W123b1L1J0G/Screen%20Shot%202015-02-26%20at%2011.27.02%20AM.png)\n\nThe failure message makes it clear what's wrong: we were expecting `kiki` to be included\nin the result of `silliest()`, but the result only contains `jane`. Now that we know\nexactly what's wrong, it's easy to fix the issue:\n\n```diff\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n-  return monkeys.filter { $0.silliness == .VerySilly }\n+  return monkeys.filter { $0.silliness == .VerySilly || $0.silliness == .ExtremelySilly }\n}\n```\n\nNimble provides many different kind of assertions, each with great failure\nmessages. And unlike `XCTAssert`, you don't have to type your own failure message\nevery time.\n\nFor the full list of Nimble assertions, check out the [Nimble README](https://github.com/Quick/Nimble).\nBelow is just a sample, to whet your appetite:\n\n```swift\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/QuickExamplesAndGroups.md",
    "content": "# Organized Tests with Quick Examples and Example Groups\n\nQuick uses a special syntax to define **examples** and **example groups**.\n\nIn *[Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md)*,\nwe learned that a good test method name is crucial--when a test starts failing, it's\nthe best way to determine whether we have to fix the application code or update the test.\n\nQuick examples and example groups serve two purposes:\n\n1. They encourage you to write descriptive test names.\n2. They greatly simplify the test code in the \"arrange\" step of your tests.\n\n## Examples Using `it`\n\nExamples, defined with the `it` function, use assertions to demonstrate\nhow code should behave. These are like test methods in XCTest.\n\n`it` takes two parameters: the name of the example, and a closure.\nThe examples below specify how the `Sea.Dolphin` class should behave.\nA new dolphin should be smart and friendly:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport Sea\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    it(\"is friendly\") {\n      expect(Dolphin().isFriendly).to(beTruthy())\n    }\n\n    it(\"is smart\") {\n      expect(Dolphin().isSmart).to(beTruthy())\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\nit(@\"is friendly\", ^{\n  expect(@([[Dolphin new] isFriendly])).to(beTruthy());\n});\n\nit(@\"is smart\", ^{\n  expect(@([[Dolphin new] isSmart])).to(beTruthy());\n});\n\nQuickSpecEnd\n```\n\nUse descriptions to make it clear what your examples are testing.\nDescriptions can be of any length and use any character, including\ncharacters from languages besides English, or even emoji! :v: :sunglasses:\n\n## Example Groups Using `describe` and `context`\n\nExample groups are logical groupings of examples. Example groups can share\nsetup and teardown code.\n\n### Describing Classes and Methods Using `describe`\n\nTo specify the behavior of the `Dolphin` class's `click` method--in\nother words, to test the method works--several `it` examples can be\ngrouped together using the `describe` function. Grouping similar\nexamples together makes the spec easier to read:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      describe(\"its click\") {\n        it(\"is loud\") {\n          let click = Dolphin().click()\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          let click = Dolphin().click()\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  describe(@\"its click\", ^{\n    it(@\"is loud\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nWhen these two examples are run in Xcode, they'll display the\ndescription from the `describe` and `it` functions:\n\n1. `DolphinSpec.a_dolphin_its_click_is_loud`\n2. `DolphinSpec.a_dolphin_its_click_has_a_high_frequency`\n\nAgain, it's clear what each of these examples is testing.\n\n### Sharing Setup/Teardown Code Using `beforeEach` and `afterEach`\n\nExample groups don't just make the examples clearer, they're also useful\nfor sharing setup and teardown code among examples in a group.\n\nIn the example below, the `beforeEach` function is used to create a brand\nnew instance of a dolphin and its click before each example in the group.\nThis ensures that both are in a \"fresh\" state for every example:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach {\n        dolphin = Dolphin()\n      }\n\n      describe(\"its click\") {\n        var click: Click!\n        beforeEach {\n          click = dolphin.click()\n        }\n\n        it(\"is loud\") {\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{\n      dolphin = [Dolphin new];\n  });\n\n  describe(@\"its click\", ^{\n    __block Click *click = nil;\n    beforeEach(^{\n      click = [dolphin click];\n    });\n\n    it(@\"is loud\", ^{\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nSharing setup like this might not seem like a big deal with the\ndolphin example, but for more complicated objects, it saves a lot\nof typing!\n\nTo execute code *after* each example, use `afterEach`.\n\n### Specifying Conditional Behavior Using `context`\n\nDolphins use clicks for echolocation. When they approach something\nparticularly interesting to them, they release a series of clicks in\norder to get a better idea of what it is.\n\nThe tests need to show that the `click` method behaves differently in\ndifferent circumstances. Normally, the dolphin just clicks once. But when\nthe dolphin is close to something interesting, it clicks several times.\n\nThis can be expressed using `context` functions: one `context` for the\nnormal case, and one `context` for when the dolphin is close to\nsomething interesting:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach { dolphin = Dolphin() }\n\n      describe(\"its click\") {\n        context(\"when the dolphin is not near anything interesting\") {\n          it(\"is only emitted once\") {\n            expect(dolphin!.click().count).to(equal(1))\n          }\n        }\n\n        context(\"when the dolphin is near something interesting\") {\n          beforeEach {\n            let ship = SunkenShip()\n            Jamaica.dolphinCove.add(ship)\n            Jamaica.dolphinCove.add(dolphin)\n          }\n\n          it(\"is emitted three times\") {\n            expect(dolphin.click().count).to(equal(3))\n          }\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{ dolphin = [Dolphin new]; });\n\n  describe(@\"its click\", ^{\n    context(@\"when the dolphin is not near anything interesting\", ^{\n      it(@\"is only emitted once\", ^{\n        expect(@([[dolphin click] count])).to(equal(@1));\n      });\n    });\n\n    context(@\"when the dolphin is near something interesting\", ^{\n      beforeEach(^{\n        [[Jamaica dolphinCove] add:[SunkenShip new]];\n        [[Jamaica dolphinCove] add:dolphin];\n      });\n\n      it(@\"is emitted three times\", ^{\n        expect(@([[dolphin click] count])).to(equal(@3));\n      });\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nStrictly speaking, the `context` keyword is a synonym for `describe`, \nbut thoughtful use will make your spec easier to understand.\n\n### Test Readability: Quick and XCTest\n\nIn [Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md),\nwe looked at how one test per condition was a great way to organize test code.\nIn XCTest, that leads to long test method names:\n\n```swift\nfunc testDolphin_click_whenTheDolphinIsNearSomethingInteresting_isEmittedThreeTimes() {\n  // ...\n}\n```\n\nUsing Quick, the conditions are much easier to read, and we can perform setup\nfor each example group:\n\n```swift\ndescribe(\"a dolphin\") {\n  describe(\"its click\") {\n    context(\"when the dolphin is near something interesting\") {\n      it(\"is emitted three times\") {\n        // ...\n      }\n    }\n  }\n}\n```\n\n## Temporarily Disabling Examples or Groups\n\nYou can temporarily disable examples or example groups that don't pass yet.\nThe names of the examples will be printed out along with the test results,\nbut they won't be run.\n\nYou can disable an example or group by prepending `x`:\n\n```swift\n// Swift\n\nxdescribe(\"its click\") {\n  // ...none of the code in this closure will be run.\n}\n\nxcontext(\"when the dolphin is not near anything interesting\") {\n  // ...none of the code in this closure will be run.\n}\n\nxit(\"is only emitted once\") {\n  // ...none of the code in this closure will be run.\n}\n```\n\n```objc\n// Objective-C\n\nxdescribe(@\"its click\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxcontext(@\"when the dolphin is not near anything interesting\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxit(@\"is only emitted once\", ^{\n  // ...none of the code in this closure will be run.\n});\n```\n\n## Temporarily Running a Subset of Focused Examples\n\nSometimes it helps to focus on only one or a few examples. Running one\nor two examples is faster than the entire suite, after all. You can\nrun only one or two by using the `fit` function. You can also focus a\ngroup of examples using `fdescribe` or `fcontext`:\n\n```swift\nfit(\"is loud\") {\n  // ...only this focused example will be run.\n}\n\nit(\"has a high frequency\") {\n  // ...this example is not focused, and will not be run.\n}\n\nfcontext(\"when the dolphin is near something interesting\") {\n  // ...examples in this group are also focused, so they'll be run.\n}\n```\n\n```objc\nfit(@\"is loud\", {\n  // ...only this focused example will be run.\n});\n\nit(@\"has a high frequency\", ^{\n  // ...this example is not focused, and will not be run.\n});\n\nfcontext(@\"when the dolphin is near something interesting\", ^{\n  // ...examples in this group are also focused, so they'll be run.\n});\n```\n\n## Global Setup/Teardown Using `beforeSuite` and `afterSuite`\n\nSome test setup needs to be performed before *any* examples are\nrun. For these cases, use `beforeSuite` and `afterSuite`.\n\nIn the example below, a database of all the creatures in the ocean is\ncreated before any examples are run. That database is torn down once all\nthe examples have finished:\n\n```swift\n// Swift\n\nimport Quick\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    beforeSuite {\n      OceanDatabase.createDatabase(name: \"test.db\")\n      OceanDatabase.connectToDatabase(name: \"test.db\")\n    }\n\n    afterSuite {\n      OceanDatabase.teardownDatabase(name: \"test.db\")\n    }\n\n    describe(\"a dolphin\") {\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n\nbeforeSuite(^{\n  [OceanDatabase createDatabase:@\"test.db\"];\n  [OceanDatabase connectToDatabase:@\"test.db\"];\n});\n\nafterSuite(^{\n  [OceanDatabase teardownDatabase:@\"test.db\"];\n});\n\ndescribe(@\"a dolphin\", ^{\n  // ...\n});\n\nQuickSpecEnd\n```\n\nYou can specify as many `beforeSuite` and `afterSuite` as you like. All\n`beforeSuite` closures will be executed before any tests run, and all\n`afterSuite` closures will be executed after all the tests are finished.\nThere is no guarantee as to what order these closures will be executed in.\n\n## Accessing Metadata for the Current Example\n\nThere may be some cases in which you'd like the know the name of the example\nthat is currently being run, or how many have been run so far. Quick provides\naccess to this metadata in `beforeEach` and `afterEach` closures.\n\n```swift\nbeforeEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) is about to be run.\")\n}\n\nafterEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) has run.\")\n}\n```\n\n```objc\nbeforeEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l is about to be run.\", (long)exampleMetadata.exampleIndex);\n});\n\nafterEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l has run.\", (long)exampleMetadata.exampleIndex);\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/QuickInObjectiveC.md",
    "content": "# Using Quick in Objective-C\n\nQuick works equally well in both Swift and Objective-C.\n\nThere are two notes to keep in mind when using Quick in Objective-C,\nhowever, which are described below.\n\n## The Optional Shorthand Syntax\n\nImporting Quick in an Objective-C file defines macros named `it` and\n`itShouldBehaveLike`, as well as functions like `context()` and `describe()`.\n\nIf the project you are testing also defines symbols with these names, you may\nencounter confusing build failures. In that case, you can avoid namespace\ncollision by turning off Quick's optional \"shorthand\" syntax:\n\n```objc\n#define QUICK_DISABLE_SHORT_SYNTAX 1\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n// ...\nQuickSpecEnd\n```\n\nYou must define the `QUICK_DISABLE_SHORT_SYNTAX` macro *before*\nimporting the Quick header.\n\nAlternatively, you may define the macro in your test target's build configuration:\n\n![](http://d.twobitlabs.com/VFEamhvixX.png)\n\n## Your Test Target Must Include At Least One Swift File\n\nThe Swift stdlib will not be linked into your test target, and thus\nQuick will fail to execute properly, if your test target does not contain\n*at least one* Swift file.\n\nWithout at least one Swift file, your tests will exit prematurely with\nthe following error:\n\n```\n*** Test session exited(82) without checking in. Executable cannot be\nloaded for some other reason, such as a problem with a library it\ndepends on or a code signature/entitlements mismatch.\n```\n\nTo fix the problem, add a blank file called `SwiftSpec.swift` to your test target:\n\n```swift\n// SwiftSpec.swift\n\nimport Quick\n```\n\n> For more details on this issue, see https://github.com/Quick/Quick/issues/164.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/README.md",
    "content": "# Documentation\n\nQuick helps you verify how your Swift and Objective-C programs behave.\nDoing so effectively isn't just a matter of knowing how to use Quick,\nhowever. The guides in this directory can help you write\neffective tests--not just using Quick, but even XCTest or other testing\nframeworks.\n\nEach guide covers a particular topic. If you're completely new to unit\ntesting, consider reading them in the order they're introduced below:\n\n- **[Setting Up Tests in Your Xcode Project](SettingUpYourXcodeProject.md)**:\n  Read this if you're having trouble using your application code from within\n  your test files.\n- **[Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md)**:\n  Read this to learn how to write `XCTestCase` tests that will help you write\n  code faster and more effectively.\n- **[Don't Test Code, Instead Verify Behavior](BehavioralTesting.md)**:\n  Read this to learn what kinds of tests speed you up, and which ones will only end up\n  slowing you down.\n- **[Clearer Tests Using Nimble Assertions](NimbleAssertions.md)**:\n  Read this to learn how to use Nimble to generate better failure messages.\n  Better failure messages help you move faster, by spending less time figuring out why\n  a test failed.\n- **[Organized Tests with Quick Examples and Example Groups](QuickExamplesAndGroups.md)**:\n  Read this to learn how Quick can help you write even more effective tests, using\n  *examples* and *example groups*.\n- **[Testing OS X and iOS Applications](TestingApps.md)**:\n  Read this to learn more about testing code that uses the AppKit and UIKit frameworks.\n- **[Reducing Test Boilerplate with Shared Assertions](SharedExamples.md)**:\n  Read this to learn how to share sets of assertions among your tests.\n- **[Configuring How Quick Behaves](ConfiguringQuick.md)**:\n  Read this to learn how you can change how Quick behaves when running your test suite.\n- **[Using Quick in Objective-C](QuickInObjectiveC.md)**:\n  Read this if you experience trouble using Quick in Objective-C.\n- **[Installing Quick](InstallingQuick.md)**:\n  Read this for instructions on how to add Quick to your project, using\n  Git submodules, CocoaPods, Carthage, or the Swift Package Manager.\n- **[Installing Quick File Templates](InstallingFileTemplates.md)**:\n  Read this to learn how to install file templates that make writing Quick specs faster.\n- **[More Resources](MoreResources.md)**\n  A list of additional resources on OS X and iOS testing.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/SettingUpYourXcodeProject.md",
    "content": "# Setting Up Tests in Your Xcode Project\n\nWith the exception of the Command Line Tool project type, when you create a new project in Xcode 7, a unit test target is included\nby default. [See specific instructions for a Command Line Tool Project](#setting-up-a-test-target-for-a-command-line-tool-project). To write unit tests, you'll need to be able to use your main\ntarget's code from within your test target. \n\n## Testing Swift Code Using Swift\n\nIn order to test code written in Swift, you'll need to do two things:\n\n1. Set \"defines module\" in your `.xcodeproj` to `YES`.\n\n  * To do this in Xcode: Choose your project, then \"Build Settings\" header, then \"Defines Modules\" line, then select \"Yes\".\n\n2. `@testable import YourAppModuleName` in your unit tests. This will expose Any `public` and `internal` (the default)\n   symbols to your tests. `private` symbols are still unavailable.\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> Some developers advocate adding Swift source files to your test target.\nHowever, this leads to [subtle, hard-to-diagnose\nerrors](https://github.com/Quick/Quick/issues/91), and is not\nrecommended.\n\n## Testing Objective-C Code Using Swift\n\n1. Add a bridging header to your test target.\n2. In the bridging header, import the file containing the code you'd like to test.\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\nYou can now use the code from `MyClass.h` in your Swift test files.\n\n## Testing Swift Code Using Objective-C\n\n1. Bridge Swift classes and functions you'd like to test to Objective-C by\n   using the `@objc` attribute.\n2. Import your module's Swift headers in your unit tests.\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## Testing Objective-C Code Using Objective-C\n\nImport the file defining the code you'd like to test from within your test target:\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### Setting Up a Test Target for a Command Line Tool Project\n\n1. Add a target to your project in the project pane.\n2. Select \"OS X Unit Testing Bundle\".\n3. Edit the scheme of your main target.\n4. Select the \"Test\" node, click the \"+\" under the \"Info\" heading, and select\n   your testing bundle.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/SharedExamples.md",
    "content": "# Reducing Test Boilerplate with Shared Assertions\n\nIn some cases, the same set of specifications apply to multiple objects.\n\nFor example, consider a protocol called `Edible`. When a dolphin\neats something `Edible`, the dolphin becomes happy. `Mackerel` and\n`Cod` are both edible. Quick allows you to easily test that a dolphin is\nhappy to eat either one.\n\nThe example below defines a set of  \"shared examples\" for \"something edible\",\nand specifies that both mackerel and cod behave like \"something edible\":\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass EdibleSharedExamplesConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    sharedExamples(\"something edible\") { (sharedExampleContext: SharedExampleContext) in\n      it(\"makes dolphins happy\") {\n        let dolphin = Dolphin(happy: false)\n        let edible = sharedExampleContext()[\"edible\"]\n        dolphin.eat(edible)\n        expect(dolphin.isHappy).to(beTruthy())\n      }\n    }\n  }\n}\n\nclass MackerelSpec: QuickSpec {\n  override func spec() {\n    var mackerel: Mackerel!\n    beforeEach {\n      mackerel = Mackerel()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": mackerel] }\n  }\n}\n\nclass CodSpec: QuickSpec {\n  override func spec() {\n    var cod: Cod!\n    beforeEach {\n      cod = Cod()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": cod] }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickConfigurationBegin(EdibleSharedExamplesConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  sharedExamples(@\"something edible\", ^(QCKDSLSharedExampleContext exampleContext) {\n    it(@\"makes dolphins happy\") {\n      Dolphin *dolphin = [[Dolphin alloc] init];\n      dolphin.happy = NO;\n      id<Edible> edible = exampleContext()[@\"edible\"];\n      [dolphin eat:edible];\n      expect(dolphin.isHappy).to(beTruthy())\n    }\n  });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(MackerelSpec)\n\n__block Mackerel *mackerel = nil;\nbeforeEach(^{\n  mackerel = [[Mackerel alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": mackerel }; });\n\nQuickSpecEnd\n\nQuickSpecBegin(CodSpec)\n\n__block Mackerel *cod = nil;\nbeforeEach(^{\n  cod = [[Cod alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": cod }; });\n\nQuickSpecEnd\n```\n\nShared examples can include any number of `it`, `context`, and\n`describe` blocks. They save a *lot* of typing when running\nthe same tests against several different kinds of objects.\n\nIn some cases, you won't need any additional context. In Swift, you can\nsimply use `sharedExamples` closures that take no parameters. This\nmight be useful when testing some sort of global state:\n\n```swift\n// Swift\n\nimport Quick\n\nsharedExamples(\"everything under the sea\") {\n  // ...\n}\n\nitBehavesLike(\"everything under the sea\")\n```\n\n> In Objective-C, you'll have to pass a block that takes a\n  `QCKDSLSharedExampleContext`, even if you don't plan on using that\n  argument. Sorry, but that's the way the cookie crumbles!\n  :cookie: :bomb:\n\nYou can also \"focus\" shared examples using the `fitBehavesLike` function.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/en-us/TestingApps.md",
    "content": "# Testing OS X and iOS Applications\n\n*[Setting Up Tests in Your Xcode Project](SettingUpYourXcodeProject.md)*\ncovers everything you need to know to test any Objective-C or Swift function or class.\nIn this section, we'll go over a few additional hints for testing\nclasses like `UIViewController` subclasses.\n\n> You can see a short lightning talk covering most of these topics\n  [here](https://vimeo.com/115671189#t=37m50s) (the talk begins at 37'50\").\n\n## Triggering `UIViewController` Lifecycle Events\n\nNormally, UIKit triggers lifecycle events for your view controller as it's\npresented within the app. When testing a `UIViewController`, however, you'll\nneed to trigger these yourself. You can do so in one of three ways:\n\n1. Accessing `UIViewController.view`, which triggers things like `UIViewController.viewDidLoad()`.\n2. Use `UIViewController.beginAppearanceTransition()` to trigger most lifecycle events.\n3. Directly calling methods like `UIViewController.viewDidLoad()` or `UIViewController.viewWillAppear()`.\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport BananaApp\n\nclass BananaViewControllerSpec: QuickSpec {\n  override func spec() {\n    var viewController: BananaViewController!\n    beforeEach {\n      viewController = BananaViewController()\n    }\n\n    describe(\".viewDidLoad()\") {\n      beforeEach {\n        // Method #1: Access the view to trigger BananaViewController.viewDidLoad().\n        let _ =  viewController.view\n      }\n\n      it(\"sets the banana count label to zero\") {\n        // Since the label is only initialized when the view is loaded, this\n        // would fail if we didn't access the view in the `beforeEach` above.\n        expect(viewController.bananaCountLabel.text).to(equal(\"0\"))\n      }\n    }\n\n    describe(\"the view\") {\n      beforeEach {\n        // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n        viewController.beginAppearanceTransition(true, animated: false)\n        viewController.endAppearanceTransition()\n      }\n      // ...\n    }\n\n    describe(\".viewWillDisappear()\") {\n      beforeEach {\n        // Method #3: Directly call the lifecycle event.\n        viewController.viewWillDisappear(false)\n      }\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n#import \"BananaViewController.h\"\n\nQuickSpecBegin(BananaViewControllerSpec)\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  viewController = [[BananaViewController alloc] init];\n});\n\ndescribe(@\"-viewDidLoad\", ^{\n  beforeEach(^{\n    // Method #1: Access the view to trigger -[BananaViewController viewDidLoad].\n    [viewController view];\n  });\n\n  it(@\"sets the banana count label to zero\", ^{\n    // Since the label is only initialized when the view is loaded, this\n    // would fail if we didn't access the view in the `beforeEach` above.\n    expect(viewController.bananaCountLabel.text).to(equal(@\"0\"))\n  });\n});\n\ndescribe(@\"the view\", ^{\n  beforeEach(^{\n    // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n    [viewController beginAppearanceTransition:YES animated:NO];\n    [viewController endAppearanceTransition];\n  });\n  // ...\n});\n\ndescribe(@\"-viewWillDisappear\", ^{\n  beforeEach(^{\n    // Method #3: Directly call the lifecycle event.\n    [viewController viewWillDisappear:NO];\n  });\n  // ...\n});\n\nQuickSpecEnd\n```\n\n## Initializing View Controllers Defined in Storyboards\n\nTo initialize view controllers defined in a storyboard, you'll need to assign\na **Storyboard ID** to the view controller:\n\n![](http://f.cl.ly/items/2X2G381K1h1l2B2Q0g3L/Screen%20Shot%202015-02-27%20at%2011.58.06%20AM.png)\n\nOnce you've done so, you can instantiate the view controller from within your tests:\n\n```swift\n// Swift\n\nvar viewController: BananaViewController!\nbeforeEach {\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  let storyboard = UIStoryboard(name: \"Main\", bundle: nil)\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = \n    storyboard.instantiateViewControllerWithIdentifier(\n      \"BananaViewControllerID\") as! BananaViewController\n}\n```\n\n```objc\n// Objective-C\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@\"Main\" bundle:nil];\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = [storyboard instantiateViewControllerWithIdentifier:@\"BananaViewControllerID\"];\n});\n```\n\n## Triggering UIControl Events Like Button Taps\n\nButtons and other UIKit classes inherit from `UIControl`, which defines methods\nthat allow us to send control events, like button taps, programmatically.\nTo test behavior that occurs when a button is tapped, you can write:\n\n```swift\n// Swift\n\ndescribe(\"the 'more bananas' button\") {\n  it(\"increments the banana count label when tapped\") {\n    viewController.moreButton.sendActionsForControlEvents(\n      UIControlEvents.TouchUpInside)\n    expect(viewController.bananaCountLabel.text).to(equal(\"1\"))\n  }\n}\n```\n\n```objc\n// Objective-C\n\ndescribe(@\"the 'more bananas' button\", ^{\n  it(@\"increments the banana count label when tapped\", ^{\n    [viewController.moreButton sendActionsForControlEvents:UIControlEventTouchUpInside];\n    expect(viewController.bananaCountLabel.text).to(equal(@\"1\"));\n  });\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/ArrangeActAssert.md",
    "content": "# Effective Tests Using XCTest: Arrange, Act, and Assert\n\nXCTest や Quick に限らず、テストフレームワークを使用する際、このパターンに従うことで効率的なユニットテストを書くことができます。\n\n1. Arrange(環境構築)\n2. Act(実行)\n3. Assert(動作確認)\n\n## パターンに従ってテストを書く\n\n例として Banana クラスを用意します。\n\n```swift\n// Banana/Banana.swift\n\n/** A delicious banana. Tastes better if you peel it first. */\npublic class Banana {\n  private var isPeeled = false\n\n  /** Peels the banana. */\n  public func peel() {\n    isPeeled = true\n  }\n\n  /** You shouldn't eat a banana unless it's been peeled. */\n  public var isEdible: Bool {\n    return isPeeled\n  }\n}\n```\n\nここでは `Banana.peel()` のテストをしてみましょう。このメソッドの期待する振る舞いはこのようになります。\n\n```swift\n// BananaTests/BananaTests.swift\n\nclass BananaTests: XCTestCase {\n  func testPeel() {\n    // Arrange: Create the banana we'll be peeling.\n    let banana = Banana()\n\n    // Act: Peel the banana.\n    banana.peel()\n\n    // Assert: Verify that the banana is now edible.\n    XCTAssertTrue(banana.isEdible)\n  }\n}\n```\n\n## 簡潔なテスト名を用いる\n\nこの `testPeel()` テストのおかげで `Banana.peel()` が正しく動作しない場合、すぐ気付くことができます。\n我々のアプリケーションコードを変更することで正しく動作しないケース(テストが失敗するケース)はしばしば起こります。\nテストが失敗する場合は下記どちらかのケースになります。\n\n1. 間違えてアプリケーションコードを壊してしまっているため、直す必要がある\n2. アプリケーションコードは期待したとおりに動いているが、もともと期待した機能が変わっているためテストコードを直す必要がある\n\nもしテストが失敗した場合、どちらのケースに当てはまる判断する必要が出てきます。そのためテスト名が分かりやすいことが重要になります。\n\n良いテスト名とは、\n\n1. 何をテストしているか明確であること\n2. どのような時にテストがパスするか・失敗するか明確であること\n\n例に挙げた `testPeel()` は良いテスト名でしょうか？分かりやすくしてみましょう。\n\n```diff\n// BananaTests.swift\n\n-func testPeel() {\n+func testPeel_makesTheBananaEdible() {\n  // Arrange: Create the banana we'll be peeling.\n  let banana = Banana()\n\n  // Act: Peel the banana.\n  banana.peel()\n\n  // Assert: Verify that the banana is now edible.\n  XCTAssertTrue(banana.isEdible)\n}\n```\n\n新しいテスト名は、\n\n1. 何をテストしているか明確である: `testPeel` は `Banana.peel()` メソッドをテストしてることを示す。\n2. どのような時にテストがパスするか明確である: `makesTheBananaEdible` はバナナが食べられるか(edible)どうかをテストしていることを示す。\n\n## テスト時の条件\n\n人々がバナナを欲しい時、`offer()` というメソッドを使います。\n\n```swift\n// Banana/Offer.swift\n\n/** Given a banana, returns a string that can be used to offer someone the banana. */\npublic func offer(banana: Banana) -> String {\n  if banana.isEdible {\n    return \"Hey, want a banana?\"\n  } else {\n    return \"Hey, want me to peel this banana for you?\"\n  }\n}\n```\n\n私達のアプリケーションコードは２つのうちどちらかを実行します：\n\n1. 食べられる(すでに皮がむかれている)バナナを注文するか\n2. まだ食べられない(すでに皮がむかれている)バナナを注文するか\n\n両方のケースをテストしてみましょう。\n\n```swift\n// BananaTests/OfferTests.swift\n\nclass OfferTests: XCTestCase {\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n    // Arrange: Create a banana and peel it.\n    let banana = Banana()\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n    // Arrange: Create a banana.\n    let banana = Banana()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n私達のテスト名は'どのような条件でテストをパスするか'を明確に表しています。\n`whenTheBananaIsPeeled`, `offer()` のケースでは `offersTheBanana` となるべきです。またバナナの皮がむかれていない場合は？\nここでは両方共テストしています。\n\nここで大事なことはアプリケーションコード内の各if文に対してそれぞれ１つのテストを持っていることです。\nこれはテストを書く際の重要なアプローチです。このアプローチでは全ての条件(if文)に関してテストされていることを保証します。\nテストのうちどれか１つがでも失敗するようになったらコードの見直しをする必要があります。テスト名が分かりやすいとすぐにチェックすべき箇所が分かります。\n\n## `XCTestCase.setUp()`を用いて簡潔に環境構築をする\n\n`OfferTests` の２つのテストのどちらにも同じ\"環境構築\"のコードが入っています。\nどちらのテストでも banana を作っています。このコードは一箇所にまとめるべきです。なぜでしょう？\n\n1. そのままにしておく場合、もし `Banana` の生成方法が変わったら, 私たちは全てのテストを修正しないといけなくなります。\n2. テストコードが短くなり、テストの可読性が向上します。\n\nBanana の生成方法を `XCTestCase.setUp()` の中に移しましょう。`XCTestCase.setUp()` は各テストの実行前に一度呼び出されます。\n\n```diff\n// OfferTests.swift\n\nclass OfferTests: XCTestCase {\n+  var banana: Banana!\n+\n+  override func setUp() {\n+    super.setUp()\n+    banana = Banana()\n+  }\n+\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n-    // Arrange: Create a banana and peel it.\n-    let banana = Banana()\n+    // Arrange: Peel the banana.\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n-    // Arrange: Create a banana.\n-    let banana = Banana()\n-\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n## 複数のテストにまたがって環境構築を共有する\n\nもし複数のテストにまたがって同じ環境構築のコードを使っている部分があれば、 test target 内に'ヘルパー関数'を定義しましょう。\n\n```swift\n// BananaTests/BananaHelpers.swift\n\ninternal func createNewPeeledBanana() -> Banana {\n  let banana = Banana()\n  banana.peel()\n  return banana\n}\n```\n\n> 共通操作を定義するのに関数を使いましょう。関数は継承できず、状態を保持することができません。継承や状態を持たせる場合、テストの可読性が落ちてしまいます。\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/BehavioralTesting.md",
    "content": "# コードをテストせず、動作を確認する\n\nテストはアプリケーションが**期待と異なる動作** をした時のみ失敗するようにすべきです。\nアプリケーションコードが *何を* したかをテストすべきで、*どのように* したかをテストすべきではありません。\n\n- アプリケーションが *何を* したかを確認するテストは **動作テスト(behavioral tests)** といいます。\n- アプリケーションの動作が変わっていなくても、コードを変更すると失敗するようになるテストは **脆弱なテスト(brittle tests)** といいます。\n\nここで `GorillaDB` というバナナのデータベースを用意します。\n`GorillaDB`は Key-Value 型のデータベースでバナナを保存することができます。\n\n```swift\nlet database = GorillaDB()\nlet banana = Banana()\ndatabase.save(banana: banana, key: \"my-banana\")\n```\n\nそしてバナナをディスクから取り出すことができます。\n\n```swift\nlet banana = database.load(key: \"my-banana\")\n```\n\n## 脆弱なテスト(Brittle Tests)\n\nどのようにして動作をテストするのでしょう？一つの方法としてここではバナナを保存した後にバナナのデータベースのサイズをチェックします。\n\n```swift\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n  // Assert: The size of the database should have increased by one.\n  XCTAssertEqual(database.size, originalSize + 1)\n}\n```\n\nここで `GorillaDB` のソースコードを変更したとします。データベースからの読み出しを速くするためにもっとも頻繁に使用するバナナをキャッシュに保持するようにします。\n`GorillaDB.size` はキャッシュのサイズに合わせて大きくなります。この場合ディスクに保存しなくなるため上記のテストは失敗します。\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/Screenshot_database_size_fail.png)\n\n## 動作テスト(Behavioral Tests)\n\n動作のテストの重要なポイントは アプリケーションコードに期待する動作を明確にすることです。\n\n`testSave_savesTheBananaToTheDatabase` というテストで期待する動作は バナナをデータベースに \"保存する\" ことでしょうか？\n\"保存する\"というのは 後から読み出すことができる、という意味です。そのためデータベースのサイズが大きくなることをテストするのではなく、\nバナナを読みだすことができるかをテストすべきです。\n\n\n```diff\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n-  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n-  // Assert: The size of the database should have increased by one.\n-  XCTAssertEqual(database.size, originalSize + 1)\n+  // Assert: The bananas saved to and loaded from the database should be the same.\n+  XCTAssertEqual(database.load(key: \"test-banana\"), banana)\n}\n```\n\n動作テストを書く際の重要なポイント：\n\n- アプリケーションコードが何をすべきか明確にしているか？\n- テストが *動作のみ* をテストしているか？コードの動作が他の要因で意図しない動きにならないか。\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/ConfiguringQuick.md",
    "content": "# Quickの挙動をカスタマイズしましょう\n\nQuickConfiguration を継承したクラスを作成し、`QuickConfiguration.Type.configure()` をオーバーライドすることで Quick の挙動をカスラマイズすることができます。\n\n```swift\n// Swift\n\nimport Quick\n\nclass ProjectDataTestConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    // ...set options on the configuration object here.\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(ProjectDataTestConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  // ...set options on the configuration object here.\n}\n\nQuickConfigurationEnd\n```\n\n一つのプロジェクトで複数の configuration を持つこともできますが\nどの順に configuration が実行されるか保証されません。\n\n## テスト全体で使う `beforeEach` と `afterEach` を追加する\n\n`QuickConfiguration.beforeEach` と `QuickConfiguration.afterEach` を使うと\nテストスイート内の各テストの実行前・実行後に走らせる処理を記述することができます。\n\n```swift\n// Swift\n\nimport Quick\nimport Sea\n\nclass FinConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach {\n      Dorsal.sharedFin().height = 0\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n#import \"Dorsal.h\"\n\nQuickConfigurationBegin(FinConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEach:^{\n    [Dorsal sharedFin].height = 0;\n  }];\n}\n\nQuickConfigurationEnd\n```\n\nさらに現在実行中のテストに関するメタデータを取得することもできます。\n\n```swift\n// Swift\n\nimport Quick\n\nclass SeaConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach { exampleMetadata in\n      // ...use the example metadata object to access the current example name, and more.\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(SeaConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEachWithMetadata:^(ExampleMetadata *data) {\n    // ...use the example metadata object to access the current example name, and more.\n  }];\n}\n\nQuickConfigurationEnd\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/InstallingFileTemplates.md",
    "content": "# Quickファイル・テンプレートのインストール方法:\n\nQuick のリポジトリには Swift, Objective-C の両方で使用できるテンプレートが含まれています。\n\n## Alcatraz\n\nQuick のテンプレートは Xcode のパッケージマネージャーの [Alcatraz](https://github.com/supermarin/Alcatraz) 経由でインストールできます。\nパッケージマネージャーから検索してみてください。\n\n![](http://f.cl.ly/items/3T3q0G1j0b2t1V0M0T04/Screen%20Shot%202014-06-27%20at%202.01.10%20PM.png)\n\n## Rakefile から手動でインストールする\n\n手動でインストールすることもできます。\nリポジトリを clone して rake task の `templates:install` を実行してください。\n\n```sh\n$ git clone git@github.com:Quick/Quick.git\n$ rake templates:install\n```\n\nアンインストールも簡単です、下記コマンドを実行してください。\n\n```sh\n$ rake templates:uninstall\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/InstallingQuick.md",
    "content": "# Quickのインストール方法\n\n> **もし Xcode 7.1 を使用していたら** 現時点で最新バージョンの Quick--`v0.9.0` を使用してください\n> 最新のリリースは `swift-2.0` branch で開発されています。\n\nQuick は examples(テスト) and example groups(テストグループ)の文法を提供します。\nNimble は `expect(...).to` の文法を提供します。\nテストでは両方を使ってもいいですし、どちらか片方を使う、ということもできます。\n\nQuick をテストに組み込むには３つの方法があります。\n\n1. [Git Submodules](#git-submodules)\n2. [CocoaPods](#cocoapods)\n3. [Carthage](#carthage)\n\n下記のインストール手順の中からどれか選択してインストールを進めてください。\nインストール完了後、テストターゲット内のファイルで Quick を使用(`import Quick`)できるようになります。\n\n## Git Submodules\n\nGit submodules を使って Quick と Nimble をリンクします。手順の流れとしては下記の通りです。\n\n1. Quick を submodule として追加.\n2. プロジェクトで`.xcworkspace`を使っていなければ作成してください。 ([こちらを参照](https://developer.apple.com/library/ios/recipes/xcode_help-structure_navigator/articles/Adding_an_Existing_Project_to_a_Workspace.html))\n3. `Quick.xcodeproj` をプロジェクトの`.xcworkspace`に追加してください。\n4. `Nimble.xcodeproj` をプロジェクトの`.xcworkspace`に追加してください。 `Nimble.xcodeproj` は `path/to/Quick/Externals/Nimble` にあります。 Quick が依存している Niimble を追加することで Quick のバージョンと Nimble のバージョンを合わせられます。\n\n5. `Quick.framework` と `Nimble.framework` を BuildPhase の \"Link Binary with Libraries\" でリンクします。\n\nもしまだ git submodules 用のディレクトリを作っていなかったら、まず始めにディレクトリを作成します。\n`Vendor` という名前のディレクトリを用意しましょう。\n\n**Step One:** Quick と Nimble を Git submodules としてダウンロードする\n\n```sh\ngit submodule add git@github.com:Quick/Quick.git Vendor/Quick\ngit submodule add git@github.com:Quick/Nimble.git Vendor/Nimble\ngit submodule update --init --recursive\n```\n\n**Step Two:** `Quick.xcodeproj` と `Nimble.xcodeproj` をプロジェクトの `.xcworkspace` に追加してください。\n例として `Guanaco.xcworkspace` という workspace に Quick と Nimble を追加します。\n\n![](http://f.cl.ly/items/2b2R0e1h09003u2f0Z3U/Screen%20Shot%202015-02-27%20at%202.19.37%20PM.png)\n\n**Step Three:** build phase の `Link Binary with Libraries` に `Quick.framework` を追加してください。\n2種類の `Quick.frameworks` が表示されますが 1 つは OS X 用で、もう 1 つが iOS 用です。\n\n![](http://cl.ly/image/2L0G0H1a173C/Screen%20Shot%202014-06-08%20at%204.27.48%20AM.png)\n\n`Nimble.framework` も同様に追加してください。これで完了です！\n\n**Submodules をアップデートする:** Quick と Nimble を最新バージョンにアップデートしたい場合は Quick ディレクトリに入って master リポジトリから pull してください。\n\n```sh\ncd /path/to/your/project/Vendor/Quick\ngit checkout master\ngit pull --rebase origin master\n```\n\nあなたのプロジェクトの Git リポジトリは submodule の変更もトラッキングしているので Quick submodules の更新を commit しておきます。\n\n```sh\ncd /path/to/your/project\ngit commit -m \"Updated Quick submodule\"\n```\n\n**Quick Submodule を含んだ リポジトリを git clone する:** 他の開発者があなたのリポジトリを clone したあと、submodules を同様に pull してくる必要があります。`git submodule update` コマンドを実行することで pull できます。\n\n```sh\ngit submodule update --init --recursive\n```\n\ngit submodules に詳細な情報は[こちら](http://git-scm.com/book/en/Git-Tools-Submodules).\n\n## CocoaPods\n\nCocoaPods でインストールする場合、バージョンは 0.36.0 以降である必要(CocoaPods が Swift をサポートしているバージョン)があります。\n\nPodfile に Quick と Nimble を追加して下さい。 Swift では ```use_frameworks!``` も必要です。\n\n```rb\n\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick', '~> 0.9.0'\n    pod 'Nimble', '3.0.0'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\nその後 pod install でダウンロード、リンクします。\n\n```sh\npod install\n```\n\n### Swift 1.2 で使う\n\nQuick の最新版(0.4.0)は Swift 2 (Xcode 7) 用ですが、Nimble の最新版(1.0.0) は Swift 1.2 (Xcode 6) 用です。\n\nもし Xcode6 で使いたい場合は下記のようにバージョン指定してください。\n\n```sh\ntarget 'MyTests' do\n  use_frameworks!\n  pod 'Quick', '~>0.3.0'\n  pod 'Nimble', '~>1.0.0'\nend\n```\n\n## [Carthage](https://github.com/Carthage/Carthage)\n\nテストターゲットは \"Embedded Binaries\" section がないので framework はターゲットの \"Link Binary With Libraries\" に追加する必要があります。 build phase の \"Copy Files\" も同様にターゲットの framework destination を指定して下さい。\n\n > Carthage は dynamic frameworks をビルドするので code signing identity に有効なものを設定しておく必要があります。\n\n1.  Quick を [`Cartfile.private`](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfileprivate) に追加してください。\n\n    ```\n    github \"Quick/Quick\"\n    github \"Quick/Nimble\"\n    ```\n\n2. `carthage update` を実行してください。\n3. `Carthage/Build/[platform]/` ディレクトリから Quick と Nimble をテストターゲットの \"Link Binary With Libraries\" に追加してください。\n    ![](http://i.imgur.com/pBkDDk5.png)\n\n4. テストターゲットの build phase で \"New Copy Files Phase\" を選択してください。\n    ![](http://i.imgur.com/jZATIjQ.png)\n\n5. \"Destination\" を \"Frameworks\" に設定して、２つの framework を追加してください。\n    ![](http://i.imgur.com/rpnyWGH.png)\n\nCarthage の dependency の管理方法はこの方法だけではありません。\n詳細な情報はこちらを参照してください [Carthage documentation](https://github.com/Carthage/Carthage/blob/master/README.md) 。\n\n### (非推奨) 実機で Quick のテストを走らせる\n\nQuick で書かれたテストを実機で走らせるためには `Quick.framework` と `Nimble.framework` を `Embedded Binaries` としてテストターゲットの `ホストアプリケーション` に追加されます。 Embedded binary として framework を追加すると Xcode が自動的にホストアプリケーションにリンクしてしまいます。\n\n![](http://indiedev.kapsi.fi/images/embed-in-host.png)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/MoreResources.md",
    "content": "# その他の参考資料\n\n## Quick のテストのサンプル\n\nQuick は[GitHub](https://github.com/github)や[ReactiveCocoa](https://github.com/ReactiveCocoa)を含む多くの企業、OSS プロジェクト、個人で利用されています。\n\n下記リポジトリを参考にしてみてください。\n\n- https://github.com/ReactiveCocoa/ReactiveCocoa\n- https://github.com/github/Archimedes\n- https://github.com/libgit2/objective-git\n- https://github.com/jspahrsummers/RXSwift\n- https://github.com/artsy/eidolon\n- https://github.com/Moya/Moya\n- https://github.com/nerdyc/Squeal\n- https://github.com/pepibumur/SugarRecord\n\n## OS X と iOS Apps のテストに関する参考資料\n\n- **[Quality Coding](http://qualitycoding.org/)**:\n  ユニットテストにフォーカスした iOS 開発に関するブログ。\n- **[OCMock Tutorials](http://ocmock.org/support/)**:\n  テストでモックが必要な時に使用する OCMock のチュートリアル。\n- **[Nocilla: Stunning HTTP stubbing for iOS and Mac OS X](https://github.com/luisobo/Nocilla)**:\n  通信を行うコードをテストする時はこのライブラリを使用して下さい。\n- **[Pivotal Labs: Writing Beautiful Specs with Jasmine Custom Matchers](http://pivotallabs.com/writing-beautiful-specs-jasmine-custom-matchers/)**:\n  Nimble の matcher の書き方に関するドキュメントはこちら([the Nimble documentation](https://github.com/Quick/Nimble))\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/NimbleAssertions.md",
    "content": "# Nimble Assertions を使ってテストをより簡潔に\n\nテストが期待した通りに動作しない時、ユニットテストは **何が問題か** を明確にすべきです。\n\n次の関数はサルの集団から馬鹿なサルだけを取得します。\n\n```swift\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n  return monkeys.filter { $0.silliness == .VerySilly }\n}\n```\n\nここでこの関数に対するテストを書いてみましょう。\n\n```swift\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n  XCTAssertTrue(contains(sillyMonkeys, kiki))\n}\n```\n\nこのテストは下記のメッセージとともに失敗します。\n\n```\nXCTAssertTrue failed\n```\n\n![](http://f.cl.ly/items/1G17453p47090y30203d/Screen%20Shot%202015-02-26%20at%209.08.27%20AM.png)\n\n失敗した時は多くの情報を残すことが望ましいです。このメッセージのままではよく分かりません。\ntrue や false だけではそれがなにか分かりません。このままではテストコードから原因を見つけるまでに時間がかかってしまいます。\n\n## 良い失敗メッセージを残す： Part 1: XCTAssert に手動でメッセージを渡す\n\n`XCTAssert` は失敗時にメッセージを指定することができます。\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki))\n+  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n}\n```\n\nしかし`XCTAssert`では自分でメッセージを指定しないといけません。\n\n## 良い失敗メッセージを残す： Part 2: Nimble Failure Messages を使う\n\nNimble は Assert, 失敗時のメッセージを読みやすくしてくれます。\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n+  expect(sillyMonkeys).to(contain(kiki))\n}\n```\n\nNimble では自分でメッセージを指定しなくても Nimble がとても読みやすいメッセージを返してくれます。\n\n```\nexpected to contain <Monkey(name: Kiki, sillines: ExtremelySilly)>,\n                got <[Monkey(name: Jane, silliness: VerySilly)]>\n```\n\n![](http://f.cl.ly/items/3N2e3g2K3W123b1L1J0G/Screen%20Shot%202015-02-26%20at%2011.27.02%20AM.png)\n\n失敗メッセージは何が問題かを明確にします：ここでは `kiki` が `silliest()` の戻り値に含まれることを期待していますが\nこのテストでは 'jane' しか含まれていません。Nimble からのメッセージで何が問題かが分かりやすく伝えられるので、簡単に直すことができます。\n\n```diff\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n-  return monkeys.filter { $0.silliness == .VerySilly }\n+  return monkeys.filter { $0.silliness == .VerySilly || $0.silliness == .ExtremelySilly }\n}\n```\n\nNimble は具体的な失敗メッセージを返してくれる多くの種類の Assertion を提供します。\n`XCTAssert` と違って毎回自分でメッセージを指定することはありません。\n\nNimble の全ての assertion はこちらで確認できます： [Nimble README](https://github.com/Quick/Nimble) 。\n下記に幾つかの例を示します。\n\n```swift\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/QuickExamplesAndGroups.md",
    "content": "# QuickのExamplesとExample Groupsで、たくさんのテストでも整理整頓\n\nQuick では **examples** と **example groups** という特別な文法があります。\n\n*[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)* では,\n良いテスト名をつけることがとても重要だということを学びました。\nテストが失敗した時、テスト名はアプリケーションコードを直すべきかテストを修正すべきかを判断する際の重要な材料になります。\n\nQuick の examples(テスト) と example groups(テストグループ) は二つの役に立ちます。\n\n1. 記述的なテスト名を書くためことをサポートします\n2. テスト中の \"環境構築\" 部分におけるコードを簡略化します\n\n## Examples の `it`\n\nExamples は 'it' という「コードがどのように動作すべきかを宣言する」関数を持ちます。\nこれは XCTest の test methods のようなものです。\n\n'it' 関数は２つのパラメータ、example の名前と closure です。\n下記のテストでは `Sea.Dolphin` クラスがどのように動作すべきかを記述しています。\nこの example では「新しく生成された Dolphin は　smart で friendly であるべき」と書いています。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport Sea\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    it(\"is friendly\") {\n      expect(Dolphin().isFriendly).to(beTruthy())\n    }\n\n    it(\"is smart\") {\n      expect(Dolphin().isSmart).to(beTruthy())\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\nit(@\"is friendly\", ^{\n  expect(@([[Dolphin new] isFriendly])).to(beTruthy());\n});\n\nit(@\"is smart\", ^{\n  expect(@([[Dolphin new] isSmart])).to(beTruthy());\n});\n\nQuickSpecEnd\n```\n\nExamples が何をテストしているかを明確にするために Description を使います。\nDescription は文字数制限がなくどの文字でも(絵文字さえも！)使うことができます。\n:v: :sunglasses:\n\n## Example Groups の `describe` と `context`\n\nExample groups では Example のグルーピングができ、 setup と teardown のコードを共有できます。\n\n### `describe` を使ってクラスと関数について記述する\n\n`Dolphin` クラスの `click` 関数の動作を記述する際に、\n言い換えると関数が動作していることをテストする際に、\n複数の 'it' example を `describe` を用いてグルーピングすることができます。\n似ている examples をまとめることで可読性が向上します。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      describe(\"its click\") {\n        it(\"is loud\") {\n          let click = Dolphin().click()\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          let click = Dolphin().click()\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  describe(@\"its click\", ^{\n    it(@\"is loud\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nXcode でこれらの examples を実行すると`describe` と `it` の記述内容も表示されます。上記のテストの場合、下記のような出力になります。\n\n1. `DolphinSpec.a_dolphin_its_click_is_loud`\n2. `DolphinSpec.a_dolphin_its_click_has_a_high_frequency`\n\nそれぞれの Example が何をテストしているかが明確ですね。\n\n### `beforeEach` と `afterEach` を使って Setup/Teardown のコードを共有する\n\nExample groups はテストの内容をただ分かりやすくするだけでなく同一グループ内のsetup/teardownコードを共有することができます。\n\n下記の例では`its click`の Example group のテストを実行する前に `beforeEach`を使って新しい Dolphin のインスタンスを生成しています。\n各 Example において \"新しい\" 状態でテストが行えます。 \n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach {\n        dolphin = Dolphin()\n      }\n\n      describe(\"its click\") {\n        var click: Click!\n        beforeEach {\n          click = dolphin.click()\n        }\n\n        it(\"is loud\") {\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{\n      dolphin = [Dolphin new];\n  });\n\n  describe(@\"its click\", ^{\n    __block Click *click = nil;\n    beforeEach(^{\n      click = [dolphin click];\n    });\n\n    it(@\"is loud\", ^{\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nこの例では setup を共有することはあまりメリットがないように見えるかもしれませんが\n複数の複雑なオブジェクトを生成する時などコード量を節約することができます。\n\nそれぞれの Example を実行した後に実行したいコードについては`afterEach`を使います。\n\n### 'context' を使ってある条件での動作を記述する\n\n例の Dolphins(イルカ達) はエコーロケーションのために カチッと音を立てます('click ' 関数を呼び出します)。\nイルカ達は特に興味のあるものに近づく時、それが何かを調べるために連続してエコーロケーション('click' 関数を呼び出します)を行います。\n\nこのシナリオにおいてテストが 異なる状況において click 関数の動作は異なる ということを表す必要があります。\n\n基本的にイルカは一度音を鳴らすだけですが、イルカ達が興味があるものが近くにあると連続して音を鳴らします。\n\nこの状況について 'context' 関数を使って表します。ある 'context' では通常のケースで、もう一方の'context'ではイルカが興味あるものに近づいているケースです。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach { dolphin = Dolphin() }\n\n      describe(\"its click\") {\n        context(\"when the dolphin is not near anything interesting\") {\n          it(\"is only emitted once\") {\n            expect(dolphin!.click().count).to(equal(1))\n          }\n        }\n\n        context(\"when the dolphin is near something interesting\") {\n          beforeEach {\n            let ship = SunkenShip()\n            Jamaica.dolphinCove.add(ship)\n            Jamaica.dolphinCove.add(dolphin)\n          }\n\n          it(\"is emitted three times\") {\n            expect(dolphin.click().count).to(equal(3))\n          }\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{ dolphin = [Dolphin new]; });\n\n  describe(@\"its click\", ^{\n    context(@\"when the dolphin is not near anything interesting\", ^{\n      it(@\"is only emitted once\", ^{\n        expect(@([[dolphin click] count])).to(equal(@1));\n      });\n    });\n\n    context(@\"when the dolphin is near something interesting\", ^{\n      beforeEach(^{\n        [[Jamaica dolphinCove] add:[SunkenShip new]];\n        [[Jamaica dolphinCove] add:dolphin];\n      });\n\n      it(@\"is emitted three times\", ^{\n        expect(@([[dolphin click] count])).to(equal(@3));\n      });\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\n厳密には `context` キーワードは `describe`と同じですがテストを理解しやすくなるので使い分けるとよいです。\n\n### テストの可読性: Quick と XCTest\n\n*[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)*で各条件についてそれぞれテストを用意するのがテストを書く際の重要な方法と述べましたが\nこのアプローチで XCTest でテストを書くとテスト名が長くなってしまいます。\n\n```swift\nfunc testDolphin_click_whenTheDolphinIsNearSomethingInteresting_isEmittedThreeTimes() {\n  // ...\n}\n```\n\nQuick を使うと条件について読みやすく、しかもそれぞれの Example group について環境構築が効率的に行えます。\n\n```swift\ndescribe(\"a dolphin\") {\n  describe(\"its click\") {\n    context(\"when the dolphin is near something interesting\") {\n      it(\"is emitted three times\") {\n        // ...\n      }\n    }\n  }\n}\n```\n\n## 一時的に Examples や Example Groups を無効にする\n\n通っていない Example を一時的に無効にすることもできます。\nExample や Example Groups の先頭に 'x' をつけると無効になります。\nExamples の名前がテスト結果の中に出力されますがテストは実行されなくなります。\n\n\n```swift\n// Swift\n\nxdescribe(\"its click\") {\n  // ...none of the code in this closure will be run.\n}\n\nxcontext(\"when the dolphin is not near anything interesting\") {\n  // ...none of the code in this closure will be run.\n}\n\nxit(\"is only emitted once\") {\n  // ...none of the code in this closure will be run.\n}\n```\n\n```objc\n// Objective-C\n\nxdescribe(@\"its click\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxcontext(@\"when the dolphin is not near anything interesting\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxit(@\"is only emitted once\", ^{\n  // ...none of the code in this closure will be run.\n});\n```\n\n## 指定した Examples だけ一時的に実行する\n\n一部の Example だけ実行できると便利なこともあります。\nそのような時は実行したい Example を 'fit' 関数を用いて指定します。\n特定の Example group だけ実行したい時は`fdescribe` か `fcontext` を記述します。\n※もともと書いてあるテストコードの先頭に 'f' を追記するだけです。\n\n```swift\nfit(\"is loud\") {\n  // ...only this focused example will be run.\n}\n\nit(\"has a high frequency\") {\n  // ...this example is not focused, and will not be run.\n}\n\nfcontext(\"when the dolphin is near something interesting\") {\n  // ...examples in this group are also focused, so they'll be run.\n}\n```\n\n```objc\nfit(@\"is loud\", {\n  // ...only this focused example will be run.\n});\n\nit(@\"has a high frequency\", ^{\n  // ...this example is not focused, and will not be run.\n});\n\nfcontext(@\"when the dolphin is near something interesting\", ^{\n  // ...examples in this group are also focused, so they'll be run.\n});\n```\n\n## `beforeSuite` と `afterSuite` を使ってテスト全体に対する Setup/Teardown を行う\n\nテストの環境構築の中にはどの Example よりも先に、または最後に実行したいものがある場合もあります。\nこのような時は `beforeSuite` か `afterSuite` を使います。\n\n下記の例では 全ての Example が実行される前に一度だけ海の全ての生物のデータベースが生成され、全ての Exmample が実行された後にデータベースを削除しています。\n\n```swift\n// Swift\n\nimport Quick\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    beforeSuite {\n      OceanDatabase.createDatabase(name: \"test.db\")\n      OceanDatabase.connectToDatabase(name: \"test.db\")\n    }\n\n    afterSuite {\n      OceanDatabase.teardownDatabase(name: \"test.db\")\n    }\n\n    describe(\"a dolphin\") {\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n\nbeforeSuite(^{\n  [OceanDatabase createDatabase:@\"test.db\"];\n  [OceanDatabase connectToDatabase:@\"test.db\"];\n});\n\nafterSuite(^{\n  [OceanDatabase teardownDatabase:@\"test.db\"];\n});\n\ndescribe(@\"a dolphin\", ^{\n  // ...\n});\n\nQuickSpecEnd\n```\n\n`beforeSuite` and `afterSuite` は必要な数だけ定義することができます。\n全ての `beforeSuite` の closure は全てのテストが実行される前に実行され、\n全ての `afterSuite` の closure は全てのテストが実行された後に実行されます。\n\n複数の `beforeSuite`(`afterSuite`) の closure を記述した場合、これらの実行順序は記述した順序で実行されるかは保証されません。\n\n## 実行中の Example でメタデータにアクセスする\n\n実行中の Example の中で、Example名を知りたいケース、これまでに何件の Example を実行したかを知りたいケースがあるかもしれません。 \nQuick ではこれらの情報に `beforeEach` と `afterEach` の closure の中からアクセスすることができます。\n\n```swift\nbeforeEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) is about to be run.\")\n}\n\nafterEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) has run.\")\n}\n```\n\n```objc\nbeforeEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l is about to be run.\", (long)exampleMetadata.exampleIndex);\n});\n\nafterEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l has run.\", (long)exampleMetadata.exampleIndex);\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/QuickInObjectiveC.md",
    "content": "# Objective-C で Quick を使う\n\nQuick は Swift でも Objective-C でも問題なく動作します。\n\nですが、Objective-C で Quick を使う場合、2点気を付けておきべきことがあります。\n\n## 簡略記法\n\nObjective-C で Quick を import すると 'it' と `itShouldBehaveLike` というマクロが定義されます。\nまた、`context()` and `describe()`といった関数も同様に定義されます。\n\nもしプロジェクトですでに同じ名前のシンボルを定義していた場合、重複のためビルドエラーになります。\nその場合は下記のように`QUICK_DISABLE_SHORT_SYNTAX`を定義してこの機能を無効にしてください。\n\n```objc\n#define QUICK_DISABLE_SHORT_SYNTAX 1\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n// ...\nQuickSpecEnd\n```\n\n`QUICK_DISABLE_SHORT_SYNTAX`マクロは Quick ヘッダを import する前に定義する必要があります。\n\n\n## Swift のファイルを テストターゲットに含める\n\nテストターゲットの中に Swift のファイルが含まれていないと Swift stlib が リンクされないため Quick が正しく実行されません。\n\nSwift のファイルが含まれていないと下記のようなエラーが発生します。\n\n```\n*** Test session exited(82) without checking in. Executable cannot be\nloaded for some other reason, such as a problem with a library it\ndepends on or a code signature/entitlements mismatch.\n```\n\nTo fix the problem, add a blank file called `SwiftSpec.swift` to your test target:\n修正するためには `SwiftSpec.swift` という名前の空のファイルをテストターゲットに追加してください。\n\n```swift\n// SwiftSpec.swift\n\nimport Quick\n```\n\n> この問題に関する詳細情報はこちら https://github.com/Quick/Quick/issues/164.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/README.md",
    "content": "# テストの書き方、Quickの使い方\n\nQuickでテストを書くと、SwiftとObjective-Cで書かれたプログラムがどう動作しているか楽に確認できます。\n\nところが、有用なテストはQuickを使わなくても書けます。\n役に立つテストが書けるようになるには、Quickのようなフレームワークの使い方を覚える必要はありません。\n\nこのディレクトリにあるファイルは、QuickかXCTestかを問わず、\n「役に立つ」テストとは何か、そしてどうやってそういったテストが書けるか、\nそれを拙文ながら説明しようとしています。\n\n目次：\n\n（テストについて事前知識がまったくない方は、順に読んでいくことをオススメします。）\n\n- **[Xcodeでテストを用意しましょう](SettingUpYourXcodeProject.md)**:\n  アプリのコードがテスト・ファイルから参照できない場合や、\n  その他スムーズにテストが動かない場合はこのファイルを読み返すといいかもしれません。\n- **[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)**:\n  役に立つテストを書くための基本中の基本。これさえ覚えれば、\n  XCTestを使ってあなたも正確に動作するコードをすばやく書けるようになります。\n- **[コードをテストするのではなく、動作の確認をしましょう](BehavioralTesting.md)**:\n  同じ「テスト」でも、開発を進めやすくするテストと、邪魔ばかりするテストとがあります。\n  見分ける方法は、このファイルを読めば分かります。\n- **[Nimbleのassertでテストをより読みやすくしましょう](NimbleAssertions.md)**:\n  Nimbleを使って、テストが失敗したときわかりやすいエラーメッセージを出すようにしましょう。\n  わかりやすいメッセージで、テストがなぜ失敗したのかが一瞬でわかって開発の速度があがります。\n- **[QuickのExamplesとExample Groupsで、たくさんのテストでも整理整頓](QuickExamplesAndGroups.md)**:\n  Quickを使う大きなメリットのひとつはexamplesとexample groupsです。\n  これでより簡潔にたくさんのテストが書けるようになります。\n- **[OS XとiOSアプリのテスト](TestingApps.md)**:\n  AppKitとUIKitを使ったコードをどうやってテストできるか説明します。\n- **[assertの共有でボイラープレートコードをなくしましょう](SharedExamples.md)**:\n  どうやってassertを共有できるか、なぜそうするのが望ましいのか説明します。\n- **[Quickの挙動をカスタマイズしましょう](ConfiguringQuick.md)**:\n  Quickがテストを実行するときの挙動をどうやって変えられるか説明します。\n- **[Objective-CでQuickを使う方法・注意点](QuickInObjectiveC.md)**:\n  QuickをObjective-Cで使ったときに思わぬ不具合・トラブルがあった場合、\n  これを読んでください。\n- **[Quickのインストール方法](InstallingQuick.md)**:\n  あなたのプロジェクトにQuickを導入する方法を説明します。Git submodules、\n  CocoaPods、Carthage、全部サポートしています！\n- **[Quickファイル・テンプレートのインストール方法](InstallingFileTemplates.md)**:\n  Quickテストをすばやく作成するためのファイル・テンプレートをインストールする方法を説明します。\n- **[その他の参考資料](MoreResources.md)**\n  OS X・iOSのテストに関しての資料集を用意しています。\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/SettingUpYourXcodeProject.md",
    "content": "# テストの準備をする\n\nXcode7 では Command Line Tool プロジェクトを除き、デフォルトで Unit test target が生成されます。 [参照：コマンドラインツールプロジェクトでテストの準備をする](#コマンドラインツールプロジェクトでテストの準備をする).\nテストを書くためには Unit test targetから Main target のコードが使用できる必要があります。\n\n## Swift のコードを Swift でテストする\n\nSwift で書かれたコードをテストするためには下記2つの作業を行います。\n\n1. プロジェクトファイル `.xcodeproj` の \"defines module\" を `YES` に設定します。\n\n  * Xcode で対象のプロジェクトを開き、\"Build Settings\" の \"Defines Modules\" の 項目を \"Yes\" にします。\n\n2. 各テストファイルで `@testable import YourAppModuleName` を追記します。 追記することで public, internal のシンボルにアクセスできるようになります。`private` シンボルはアクセスできないままです。\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> Swift のファイルを Test target に含める、という方法もありますが、不具合を引き起こす([subtle, hard-to-diagnose\nerrors](https://github.com/Quick/Quick/issues/91)) ことがあるためお勧めしません。\n\n## Objective-C のコードを Swift でテストする\n\n1. Bridging header を test target に追加します。\n2. Bridging header 内で テストしたいコードを import します。\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\nこれで `MyClass.h' のコードを Swift のテストコードから使用できるようになります。\n\n## Swift のコードを Objective-C でテストする\n\n1. テストしたい Swift のクラスと関数に`@objc`属性を付加します。\n2. テストコードで Module の Swift header を import します。\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## Objective-C のコードを Objective-C でテストする\n\nテストコード内でテスト対象を import します。\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### コマンドラインツールプロジェクトでテストの準備をする\n\n1. プロジェクトのペインからターゲットを追加(+ボタンを押下)\n2. \"OS X Unit Testing Bundle\" または \"iOS Unit Testing Bundle\" を選択\n3. Main target で \"Edit the scheme\" を選択\n4. \"Test\" を選択, \"Info\" タブで \"+\" をクリックして追加した testing bundle を選択\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/SharedExamples.md",
    "content": "# assertの共有でボイラープレートコードをなくしましょう\n\n複数のオブジェクトに対象して同じ内容のテストを行いたい場合があります。\n\n例えば `Edible` という protocol があるとします。\nイルカ(dolphin)が何か食べられる(`Edible`)なものを食べるとイルカが幸せになります。\nサバ(Mackerel)とタラ(Cod)は食べられる(Edibleな)ものです。\n\nQuick は「イルカがどちらかを食べて幸せになる」ということを簡単にテストすることできます。\n\n下記で示すテストは \"(何かを食べる)something edible\" という共有できるテスト(Shared examples)を定義しています。\nまた、この共有できるテストでサバ(Mackerel)とタラ(Cod)を食べることについてのテストを記述しています。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass EdibleSharedExamplesConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    sharedExamples(\"something edible\") { (sharedExampleContext: SharedExampleContext) in\n      it(\"makes dolphins happy\") {\n        let dolphin = Dolphin(happy: false)\n        let edible = sharedExampleContext()[\"edible\"]\n        dolphin.eat(edible)\n        expect(dolphin.isHappy).to(beTruthy())\n      }\n    }\n  }\n}\n\nclass MackerelSpec: QuickSpec {\n  override func spec() {\n    var mackerel: Mackerel!\n    beforeEach {\n      mackerel = Mackerel()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": mackerel] }\n  }\n}\n\nclass CodSpec: QuickSpec {\n  override func spec() {\n    var cod: Cod!\n    beforeEach {\n      cod = Cod()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": cod] }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickConfigurationBegin(EdibleSharedExamplesConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  sharedExamples(@\"something edible\", ^(QCKDSLSharedExampleContext exampleContext) {\n    it(@\"makes dolphins happy\") {\n      Dolphin *dolphin = [[Dolphin alloc] init];\n      dolphin.happy = NO;\n      id<Edible> edible = exampleContext()[@\"edible\"];\n      [dolphin eat:edible];\n      expect(dolphin.isHappy).to(beTruthy())\n    }\n  });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(MackerelSpec)\n\n__block Mackerel *mackerel = nil;\nbeforeEach(^{\n  mackerel = [[Mackerel alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": mackerel }; });\n\nQuickSpecEnd\n\nQuickSpecBegin(CodSpec)\n\n__block Mackerel *cod = nil;\nbeforeEach(^{\n  cod = [[Cod alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": cod }; });\n\nQuickSpecEnd\n```\n\nShared examples は `it`, `context` や `describe` のブロックをいくつでも含めることができます。\nこれは異なる種類の対象についてテストをする際のコードを節約することができます。\n\nあるケースでは context を追加する必要もありません。\nSwift では `sharedExamples` closure を使って共有できるテストを定義することができます。\nこのテクニックはある時点での状態をテストしたい時などに役に立つかもしれません。\n\nIn some cases, you won't need any additional context. In Swift, you can\nsimply use `sharedExamples` closures that take no parameters. This\nmight be useful when testing some sort of global state:\n\n```swift\n// Swift\n\nimport Quick\n\nsharedExamples(\"everything under the sea\") {\n  // ...\n}\n\nitBehavesLike(\"everything under the sea\")\n```\n\n> Objective-Cでは, `QCKDSLSharedExampleContext` を引数に取る block を渡すことができます。※QCKDSLSharedExampleContext を使う予定がなくても引数に取る block を用意してください。めんどくさくても。世の中そんなもんです。  :cookie: :bomb:\n\n'itBehavesLike' の先頭に 'f' を加えて(`fitBehavesLike`) として共有できるテストのみ実行することもできます。\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/ja/TestingApps.md",
    "content": "# Testing OS X and iOS Applications\n\n*[Xcodeでテストを用意しましょう](SettingUpYourXcodeProject.md)*では Objective-C や Swift の関数やクラスを\nテストするために必要なことを述べました。ここでは `UIViewController` のサブクラスなどをテストする際のポイントを述べます。\n\n> 関連する LT がありますのでこちらも参考にしてください。\n  [here](https://vimeo.com/115671189#t=37m50s) (37'50\" から始まる部分です)。\n\n## `UIViewController` のライフサイクルイベントを発火させる\n\n通常は UIKit が view controller のライフサイクルイベントを発火しますが、\nテストをする時は自分たちでライフサイクルイベントを発火させる必要があります。\n呼び出すには３つの方法があります。\n\n1. `UIViewController.view`にアクセスする、すると `UIViewController.viewDidLoad()` のイベントが発火します。\n2. `UIViewController.beginAppearanceTransition()` を呼び出すとほとんどのライフサイクルイベントが発火します。。\n3. `UIViewController.viewDidLoad()` や `UIViewController.viewWillAppear()` などのライフサイクルに関わる関数を直接呼び出す。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport BananaApp\n\nclass BananaViewControllerSpec: QuickSpec {\n  override func spec() {\n    var viewController: BananaViewController!\n    beforeEach {\n      viewController = BananaViewController()\n    }\n\n    describe(\".viewDidLoad()\") {\n      beforeEach {\n        // Method #1: Access the view to trigger BananaViewController.viewDidLoad().\n        let _ =  viewController.view\n      }\n\n      it(\"sets the banana count label to zero\") {\n        // Since the label is only initialized when the view is loaded, this\n        // would fail if we didn't access the view in the `beforeEach` above.\n        expect(viewController.bananaCountLabel.text).to(equal(\"0\"))\n      }\n    }\n\n    describe(\"the view\") {\n      beforeEach {\n        // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n        viewController.beginAppearanceTransition(true, animated: false)\n        viewController.endAppearanceTransition()\n      }\n      // ...\n    }\n\n    describe(\".viewWillDisappear()\") {\n      beforeEach {\n        // Method #3: Directly call the lifecycle event.\n        viewController.viewWillDisappear(false)\n      }\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n#import \"BananaViewController.h\"\n\nQuickSpecBegin(BananaViewControllerSpec)\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  viewController = [[BananaViewController alloc] init];\n});\n\ndescribe(@\"-viewDidLoad\", ^{\n  beforeEach(^{\n    // Method #1: Access the view to trigger -[BananaViewController viewDidLoad].\n    [viewController view];\n  });\n\n  it(@\"sets the banana count label to zero\", ^{\n    // Since the label is only initialized when the view is loaded, this\n    // would fail if we didn't access the view in the `beforeEach` above.\n    expect(viewController.bananaCountLabel.text).to(equal(@\"0\"))\n  });\n});\n\ndescribe(@\"the view\", ^{\n  beforeEach(^{\n    // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n    [viewController beginAppearanceTransition:YES animated:NO];\n    [viewController endAppearanceTransition];\n  });\n  // ...\n});\n\ndescribe(@\"-viewWillDisappear\", ^{\n  beforeEach(^{\n    // Method #3: Directly call the lifecycle event.\n    [viewController viewWillDisappear:NO];\n  });\n  // ...\n});\n\nQuickSpecEnd\n```\n\n## Storyboard 内に定義した View Controller を初期化する\n\nStoryboard 内に定義した View Controller を初期化する際は **Storyboard ID** を定義しておく必要があります。\n\n![](http://f.cl.ly/items/2X2G381K1h1l2B2Q0g3L/Screen%20Shot%202015-02-27%20at%2011.58.06%20AM.png)\n\n**Storyboard ID** を定義しておくとテストコードから ViewController を初期化することができます。\n\n```swift\n// Swift\n\nvar viewController: BananaViewController!\nbeforeEach {\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  let storyboard = UIStoryboard(name: \"Main\", bundle: nil)\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = \n    storyboard.instantiateViewControllerWithIdentifier(\n      \"BananaViewControllerID\") as! BananaViewController\n}\n```\n\n```objc\n// Objective-C\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@\"Main\" bundle:nil];\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = [storyboard instantiateViewControllerWithIdentifier:@\"BananaViewControllerID\"];\n});\n```\n\n## ボタンをタップされた、などの UIControl Events を発火させる\n\nボタンや他の UIControl を継承したクラスは UIControl イベントを発火させる関数を持っています。\nボタンをタップされた時の動作をテストするにはこのように書くことができます：\n\n```swift\n// Swift\n\ndescribe(\"the 'more bananas' button\") {\n  it(\"increments the banana count label when tapped\") {\n    viewController.moreButton.sendActionsForControlEvents(\n      UIControlEvents.TouchUpInside)\n    expect(viewController.bananaCountLabel.text).to(equal(\"1\"))\n  }\n}\n```\n\n```objc\n// Objective-C\n\ndescribe(@\"the 'more bananas' button\", ^{\n  it(@\"increments the banana count label when tapped\", ^{\n    [viewController.moreButton sendActionsForControlEvents:UIControlEventTouchUpInside];\n    expect(viewController.bananaCountLabel.text).to(equal(@\"1\"));\n  });\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Documentation/zh-cn/SettingUpYourXcodeProject.md",
    "content": "# 在项目中添加测试\n\n除了命令行项目以外, 当你在Xcode 7中创建新项目时, 单元测试Target默认是包含的. [为命令行项目设置测试Target](#setting-up-a-test-target-for-a-command-line-tool-project). 要编写单元测试, 你需要能够在测试Target中使用主target代码.\n\n## 用Swift测试Swift项目代码\n\n为了测试用Swift写的代码, 你需要做以下两件事:\n\n1. 将`.xcodeproj`中的 \"defines module\" 设置为 `YES`.\n\n  * Xcode中具体操作方法: 选中你的项目, 选择 \"Build Settings\" 选项列表, 选中 \"Defines Modules\" 行, 修改其值为 \"Yes\".\n\n2. 在单元测试中添加 `@testable import YourAppModuleName`. 这会把所有 `public` 和 `internal` (默认访问修饰符) 修饰符暴露给测试代码. 但`private` 修饰符仍旧保持私有.\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> 一些开发者提倡添加Swift源文件至测试target. 然而这会导致以下问题 [subtle, hard-to-diagnose errors](https://github.com/Quick/Quick/issues/91), 所以并不推荐.\n\n## 使用Swift测试Objective-C项目代码\n\n1. 给你的测试target添加bridging header文件.\n2. 在bridging header文件中, 引入待测试的代码文件.\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\n现在就可以在Swift测试文件中使用 `MyClass.h` 中的代码了\n\n## 使用Objective-C测试Swift项目代码\n\n1. 使用 `@objc` 桥接需要使用Objective-C测试的Swift类和方法.\n2. 在单元测试中引入模块的Swift头文件.\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## 使用Objective-C测试Objective-C项目代码\n\n在测试target中引入待测试的代码文件:\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### 为命令行项目设置测试Target\n\n1. 在项目窗格中添加一个项目target.\n2. 选择 \"OS X Unit Testing Bundle\".\n3. 编辑主target的 scheme.\n4. 选中 \"Test\" 条目, 单击 \"Info\" 下的 \"+\", 选择需要测试的 bundle.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/.gitignore",
    "content": ".DS_Store\nxcuserdata/\nbuild/\n.idea\nDerivedData/\nNimble.framework.zip\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\n# Packages/\n.build/\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      sudo: required\n      env: TYPE=podspec\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 TYPE=ios\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=9.0 TYPE=tvos\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 TYPE=osx\n    - os: osx\n      env: TYPE=swiftpm\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=10.0 TYPE=ios\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=10.0 TYPE=tvos\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.12 TYPE=osx\n      osx_image: xcode8\n    - os: linux\n      dist: trusty\n      sudo: required\n      env: TYPE=swiftpm\ninstall:\n  - if [[ \"$TYPE\" == \"swiftpm\" ]]; then eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"; fi\n  - if [[ \"$TYPE\" == \"podspec\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - ./test $TYPE\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Welcome to Nimble!](#welcome-to-nimble!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Nimble!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nNimble should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n**tl;dr:** If you've added a file to the project, make sure it's\nincluded in both the OS X and iOS targets.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Nimble (eg - v2.0.0 or git sha `20a3f3b4e63cc8d97c92c4164bf36f2a2c9a6e1b`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- Use `Nimble.xcodeproj` to work on Nimble.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of Nimble\n  before submitting your pull request. You can run all the OS X & iOS unit\n  tests using `./test`.\n- If you've added a file to the project, make sure it's included in both\n  the OS X and iOS targets.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\n### Code of Conduct\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n### Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Nimble/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Update [Quick](https://github.com/Quick/Quick)\n  - Update Quick's submodule reference to the newly released Nimble version\n  - Update Nimble version in `README.md` and Documentation in [Quick](https://github.com/Quick/Quick) if it's not a patch version update.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Gemfile",
    "content": "# A sample Gemfile\nsource \"https://rubygems.org\"\n\ngem 'cocoapods'\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/LICENSE.md",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014 Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Nimble\"\n  s.version      = \"4.1.0\"\n  s.summary      = \"A Matcher Framework for Swift and Objective-C\"\n  s.description  = <<-DESC\n                   Use Nimble to express the expected outcomes of Swift or Objective-C expressions. Inspired by Cedar.\n                   DESC\n  s.homepage     = \"https://github.com/Quick/Nimble\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE.md\" }\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = \"9.0\"\n  s.source       = { :git => \"https://github.com/Quick/Nimble.git\", :tag => \"v#{s.version}\" }\n\n  s.source_files = \"Sources/Nimble/**/*.{swift,h,m}\"\n  s.private_header_files = \"Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h\"\n  s.exclude_files = \"Sources/Nimble/Adapters/NonObjectiveC/*.swift\"\n  s.weak_framework = \"XCTest\"\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO', 'OTHER_LDFLAGS' => '-weak-lswiftXCTest', 'FRAMEWORK_SEARCH_PATHS' => '$(inherited) \"$(PLATFORM_DIR)/Developer/Library/Frameworks\"' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F1A74291940169200FFFC47 /* Nimble.framework */; };\n\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */; };\n\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F925EAD195C0D6300ED456B /* Nimble.framework */; };\n\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t1F1A74361940169200FFFC47 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F5DF1541BDCA0CE00C3A531;\n\t\t\tremoteInfo = \"Nimble-tvOS\";\n\t\t};\n\t\t1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectWithLazyProperty.swift; sourceTree = \"<group>\"; };\n\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SynchronousTests.swift; sourceTree = \"<group>\"; };\n\t\t1F14FB63194180C5009F2A08 /* utils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = utils.swift; sourceTree = \"<group>\"; };\n\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DSL.h; sourceTree = \"<group>\"; };\n\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DSL.m; sourceTree = \"<group>\"; };\n\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBExceptionCapture.h; sourceTree = \"<group>\"; };\n\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBExceptionCapture.m; sourceTree = \"<group>\"; };\n\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBStringify.h; sourceTree = \"<group>\"; };\n\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBStringify.m; sourceTree = \"<group>\"; };\n\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBExpectation.swift; sourceTree = \"<group>\"; };\n\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBObjCMatcher.swift; sourceTree = \"<group>\"; };\n\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExceptionCapture.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsyncMatcherWrapper.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherFunc.swift; sourceTree = \"<group>\"; };\n\t\t1F1A74291940169200FFFC47 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A742D1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1A742E1940169200FFFC47 /* Nimble.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Nimble.h; sourceTree = \"<group>\"; };\n\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A743A1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAKindOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F2752D119445B8400052A26 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; lineEnding = 0; path = README.md; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.markdown; };\n\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmptyTest.swift; sourceTree = \"<group>\"; };\n\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAsyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NimbleSpecHelper.h; sourceTree = \"<group>\"; };\n\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeAnInstanceOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeKindOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeCloseToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeginWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeIdenticalToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTruthyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalsyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTrueTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalseTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeNilTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCContainTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEndWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEqualTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCMatchTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCRaiseExceptionTest.m; sourceTree = \"<group>\"; };\n\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoidTest.swift; sourceTree = \"<group>\"; };\n\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoid.swift; sourceTree = \"<group>\"; };\n\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsynchronousTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RaisesExceptionTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLogicalTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeNilTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeginWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F01195C189500ED456B /* ContainTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContainTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F04195C18B700ED456B /* EqualTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EqualTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeEmptyTest.m; sourceTree = \"<group>\"; };\n\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToTest.swift; sourceTree = \"<group>\"; };\n\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleEnvironment.swift; sourceTree = \"<group>\"; };\n\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotificationTest.swift; sourceTree = \"<group>\"; };\n\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotification.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionRecorder.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AdapterProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleXCTestHandler.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD081968AB07008ED995 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expectation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expression.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FailureMessage.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOf.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeAKindOf.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseTo.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmpty.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeginWith.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThanOrEqualTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeIdenticalTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThanOrEqual.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLogical.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeNil.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Contain.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWith.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Equal.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = RaisesException.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD251968AB07008ED995 /* Functional.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Functional.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD261968AB07008ED995 /* Async.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Async.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SourceLocation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Stringers.swift; sourceTree = \"<group>\"; };\n\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionDispatcher.swift; sourceTree = \"<group>\"; };\n\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowErrorTest.swift; sourceTree = \"<group>\"; };\n\t\t29EA59651B551EE6002D767E /* ThrowError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowError.swift; sourceTree = \"<group>\"; };\n\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCount.swift; sourceTree = \"<group>\"; };\n\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCountTest.swift; sourceTree = \"<group>\"; };\n\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCHaveCount.m; sourceTree = \"<group>\"; };\n\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOfTest.swift; sourceTree = \"<group>\"; };\n\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOf.swift; sourceTree = \"<group>\"; };\n\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSatisfyAnyOfTest.m; sourceTree = \"<group>\"; };\n\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjcStringersTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCUserDescriptionTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserDescriptionTest.swift; sourceTree = \"<group>\"; };\n\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchError.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchErrorTest.swift; sourceTree = \"<group>\"; };\n\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"DSL+Wait.swift\"; sourceTree = \"<group>\"; };\n\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPassTest.swift; sourceTree = \"<group>\"; };\n\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToObjectTest.swift; sourceTree = \"<group>\"; };\n\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPass.swift; sourceTree = \"<group>\"; };\n\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Match.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchTest.swift; sourceTree = \"<group>\"; };\n\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAllPassTest.m; sourceTree = \"<group>\"; };\n\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+Register.m\"; sourceTree = \"<group>\"; };\n\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CurrentTestCaseTracker.h; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F1A74251940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74311940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA9195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB4195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F14FB61194180A7009F2A08 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F14FB63194180C5009F2A08 /* utils.swift */,\n\t\t\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */,\n\t\t\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */,\n\t\t\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */,\n\t\t\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */,\n\t\t\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */,\n\t\t\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */,\n\t\t\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */,\n\t\t\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */,\n\t\t\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */,\n\t\t\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */,\n\t\t\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */,\n\t\t\t);\n\t\t\tpath = ObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */,\n\t\t\t);\n\t\t\tpath = NonObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A741F1940169200FFFC47 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F2752D119445B8400052A26 /* README.md */,\n\t\t\t\t1F1A742B1940169200FFFC47 /* Nimble */,\n\t\t\t\t1F1A74381940169200FFFC47 /* NimbleTests */,\n\t\t\t\t1F1A742A1940169200FFFC47 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742A1940169200FFFC47 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A74291940169200FFFC47 /* Nimble.framework */,\n\t\t\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */,\n\t\t\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */,\n\t\t\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */,\n\t\t\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */,\n\t\t\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742B1940169200FFFC47 /* Nimble */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD041968AB07008ED995 /* Adapters */,\n\t\t\t\t1FD8CD081968AB07008ED995 /* DSL.swift */,\n\t\t\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */,\n\t\t\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */,\n\t\t\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */,\n\t\t\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */,\n\t\t\t\t1F1A742D1940169200FFFC47 /* Info.plist */,\n\t\t\t\t1FD8CD0C1968AB07008ED995 /* Matchers */,\n\t\t\t\t1F1A742E1940169200FFFC47 /* Nimble.h */,\n\t\t\t\t1FD8CD241968AB07008ED995 /* Utils */,\n\t\t\t);\n\t\t\tname = Nimble;\n\t\t\tpath = Sources/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74381940169200FFFC47 /* NimbleTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */,\n\t\t\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */,\n\t\t\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */,\n\t\t\t\t1FFD729A1963FC8200CD29A2 /* objc */,\n\t\t\t\t1F14FB61194180A7009F2A08 /* Helpers */,\n\t\t\t\t1F925EE3195C11B000ED456B /* Matchers */,\n\t\t\t\t1F1A74391940169200FFFC47 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = NimbleTests;\n\t\t\tpath = Tests/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74391940169200FFFC47 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A743A1940169200FFFC47 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F925EE3195C11B000ED456B /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */,\n\t\t\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */,\n\t\t\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */,\n\t\t\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */,\n\t\t\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */,\n\t\t\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */,\n\t\t\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */,\n\t\t\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */,\n\t\t\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */,\n\t\t\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */,\n\t\t\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */,\n\t\t\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */,\n\t\t\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */,\n\t\t\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */,\n\t\t\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */,\n\t\t\t\t1F925F01195C189500ED456B /* ContainTest.swift */,\n\t\t\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */,\n\t\t\t\t1F925F04195C18B700ED456B /* EqualTest.swift */,\n\t\t\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */,\n\t\t\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */,\n\t\t\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */,\n\t\t\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */,\n\t\t\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */,\n\t\t\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */,\n\t\t\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD041968AB07008ED995 /* Adapters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */,\n\t\t\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */,\n\t\t\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */,\n\t\t\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */,\n\t\t\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */,\n\t\t\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */,\n\t\t\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */,\n\t\t\t);\n\t\t\tpath = Adapters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD0C1968AB07008ED995 /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */,\n\t\t\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */,\n\t\t\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */,\n\t\t\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */,\n\t\t\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */,\n\t\t\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */,\n\t\t\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */,\n\t\t\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */,\n\t\t\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */,\n\t\t\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */,\n\t\t\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */,\n\t\t\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */,\n\t\t\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */,\n\t\t\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */,\n\t\t\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */,\n\t\t\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */,\n\t\t\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */,\n\t\t\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */,\n\t\t\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */,\n\t\t\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */,\n\t\t\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */,\n\t\t\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */,\n\t\t\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */,\n\t\t\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */,\n\t\t\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */,\n\t\t\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */,\n\t\t\t\t29EA59651B551EE6002D767E /* ThrowError.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD241968AB07008ED995 /* Utils */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD251968AB07008ED995 /* Functional.swift */,\n\t\t\t\t1FD8CD261968AB07008ED995 /* Async.swift */,\n\t\t\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */,\n\t\t\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */,\n\t\t\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */,\n\t\t\t);\n\t\t\tpath = Utils;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FFD729A1963FC8200CD29A2 /* objc */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */,\n\t\t\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */,\n\t\t\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */,\n\t\t\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */,\n\t\t\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */,\n\t\t\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */,\n\t\t\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */,\n\t\t\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */,\n\t\t\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */,\n\t\t\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */,\n\t\t\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */,\n\t\t\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */,\n\t\t\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */,\n\t\t\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */,\n\t\t\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */,\n\t\t\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */,\n\t\t\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */,\n\t\t\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */,\n\t\t\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */,\n\t\t\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */,\n\t\t\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */,\n\t\t\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */,\n\t\t\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */,\n\t\t\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */,\n\t\t\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */,\n\t\t\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */,\n\t\t\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */,\n\t\t\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */,\n\t\t\t);\n\t\t\tpath = objc;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F1A74261940169200FFFC47 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAA195C0D6300ED456B /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74241940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74251940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74261940169200FFFC47 /* Headers */,\n\t\t\t\t1F1A74271940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-iOS\";\n\t\t\tproductName = \"Nimble-iOS\";\n\t\t\tproductReference = 1F1A74291940169200FFFC47 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74301940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74311940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74321940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */,\n\t\t\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-iOSTests\";\n\t\t\tproductName = \"Nimble-iOSTests\";\n\t\t\tproductReference = 1F1A74341940169200FFFC47 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */,\n\t\t\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-tvOS\";\n\t\t\tproductName = \"Nimble-tvOS\";\n\t\t\tproductReference = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-tvOSTests\";\n\t\t\tproductName = \"Nimble-tvOSTests\";\n\t\t\tproductReference = 1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EA8195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EA9195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EAA195C0D6300ED456B /* Headers */,\n\t\t\t\t1F925EAB195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-OSX\";\n\t\t\tproductName = \"Nimble-OSX\";\n\t\t\tproductReference = 1F925EAD195C0D6300ED456B /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EB3195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EB4195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EB5195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */,\n\t\t\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-OSXTests\";\n\t\t\tproductName = \"Nimble-OSXTests\";\n\t\t\tproductReference = 1F925EB7195C0D6300ED456B /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t1F1A74201940169200FFFC47 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0730;\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = \"Jeff Hui\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F1A74281940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F1A74331940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F1A74281940169200FFFC47;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF1541BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF15D1BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EAC195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EB6195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F925EAC195C0D6300ED456B;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 1F1A741F1940169200FFFC47;\n\t\t\tproductRefGroup = 1F1A742A1940169200FFFC47 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */,\n\t\t\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */,\n\t\t\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */,\n\t\t\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */,\n\t\t\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */,\n\t\t\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F1A74271940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74321940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAB195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB5195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F1A74241940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74301940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */,\n\t\t\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */,\n\t\t\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */,\n\t\t\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */,\n\t\t\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */,\n\t\t\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */,\n\t\t\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */,\n\t\t\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */,\n\t\t\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */,\n\t\t\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */,\n\t\t\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */,\n\t\t\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */,\n\t\t\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */,\n\t\t\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */,\n\t\t\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */,\n\t\t\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */,\n\t\t\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */,\n\t\t\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */,\n\t\t\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */,\n\t\t\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */,\n\t\t\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */,\n\t\t\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */,\n\t\t\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */,\n\t\t\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */,\n\t\t\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */,\n\t\t\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */,\n\t\t\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */,\n\t\t\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */,\n\t\t\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */,\n\t\t\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */,\n\t\t\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */,\n\t\t\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */,\n\t\t\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */,\n\t\t\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */,\n\t\t\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */,\n\t\t\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA8195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */,\n\t\t\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB3195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F1A74361940169200FFFC47 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */;\n\t\t\ttargetProxy = 1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F1A743D1940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A743E1940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74401940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74411940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74431940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74441940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1671BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1691BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC1195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC2195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC4195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC5195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A743D1940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A743E1940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74401940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74411940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74431940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74441940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1671BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1691BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC1195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC2195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC4195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC5195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 1F1A74201940169200FFFC47 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Nimble.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-OSX\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EB6195C0D6300ED456B\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-OSXTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-OSX\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-iOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74331940169200FFFC47\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-iOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-iOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-tvOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF15D1BDCA0CE00C3A531\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-tvOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Nimble\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/README.md",
    "content": "# Nimble\n\nUse Nimble to express the expected outcomes of Swift\nor Objective-C expressions. Inspired by\n[Cedar](https://github.com/pivotal/cedar).\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n\n# How to Use Nimble\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [Some Background: Expressing Outcomes Using Assertions in XCTest](#some-background-expressing-outcomes-using-assertions-in-xctest)\n- [Nimble: Expectations Using `expect(...).to`](#nimble-expectations-using-expectto)\n  - [Custom Failure Messages](#custom-failure-messages)\n  - [Type Checking](#type-checking)\n  - [Operator Overloads](#operator-overloads)\n  - [Lazily Computed Values](#lazily-computed-values)\n  - [C Primitives](#c-primitives)\n  - [Asynchronous Expectations](#asynchronous-expectations)\n  - [Objective-C Support](#objective-c-support)\n  - [Disabling Objective-C Shorthand](#disabling-objective-c-shorthand)\n- [Built-in Matcher Functions](#built-in-matcher-functions)\n  - [Equivalence](#equivalence)\n  - [Identity](#identity)\n  - [Comparisons](#comparisons)\n  - [Types/Classes](#typesclasses)\n  - [Truthiness](#truthiness)\n  - [Swift Error Handling](#swift-error-handling)\n  - [Exceptions](#exceptions)\n  - [Collection Membership](#collection-membership)\n  - [Strings](#strings)\n  - [Checking if all elements of a collection pass a condition](#checking-if-all-elements-of-a-collection-pass-a-condition)\n  - [Verify collection count](#verify-collection-count)\n  - [Matching a value to any of a group of matchers](#matching-a-value-to-any-of-a-group-of-matchers)\n- [Writing Your Own Matchers](#writing-your-own-matchers)\n  - [Lazy Evaluation](#lazy-evaluation)\n  - [Type Checking via Swift Generics](#type-checking-via-swift-generics)\n  - [Customizing Failure Messages](#customizing-failure-messages)\n  - [Supporting Objective-C](#supporting-objective-c)\n    - [Properly Handling `nil` in Objective-C Matchers](#properly-handling-nil-in-objective-c-matchers)\n- [Installing Nimble](#installing-nimble)\n  - [Installing Nimble as a Submodule](#installing-nimble-as-a-submodule)\n  - [Installing Nimble via CocoaPods](#installing-nimble-via-cocoapods)\n  - [Using Nimble without XCTest](#using-nimble-without-xctest)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Some Background: Expressing Outcomes Using Assertions in XCTest\n\nApple's Xcode includes the XCTest framework, which provides\nassertion macros to test whether code behaves properly.\nFor example, to assert that `1 + 1 = 2`, XCTest has you write:\n\n```swift\n// Swift\n\nXCTAssertEqual(1 + 1, 2, \"expected one plus one to equal two\")\n```\n\nOr, in Objective-C:\n\n```objc\n// Objective-C\n\nXCTAssertEqual(1 + 1, 2, @\"expected one plus one to equal two\");\n```\n\nXCTest assertions have a couple of drawbacks:\n\n1. **Not enough macros.** There's no easy way to assert that a string\n   contains a particular substring, or that a number is less than or\n   equal to another.\n2. **It's hard to write asynchronous tests.** XCTest forces you to write\n   a lot of boilerplate code.\n\nNimble addresses these concerns.\n\n# Nimble: Expectations Using `expect(...).to`\n\nNimble allows you to express expectations using a natural,\neasily understood language:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).to(equal(\"Squee!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).to(equal(@\"Squee!\"));\n```\n\n> The `expect` function autocompletes to include `file:` and `line:`,\n  but these parameters are optional. Use the default values to have\n  Xcode highlight the correct line when an expectation is not met.\n\nTo perform the opposite expectation--to assert something is *not*\nequal--use `toNot` or `notTo`:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).toNot(equal(\"Oh, hello there!\"))\nexpect(seagull.squawk).notTo(equal(\"Oh, hello there!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).toNot(equal(@\"Oh, hello there!\"));\nexpect(seagull.squawk).notTo(equal(@\"Oh, hello there!\"));\n```\n\n## Custom Failure Messages\n\nWould you like to add more information to the test's failure messages? Use the `description` optional argument to add your own text:\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(3))\n// failed - expected to equal <3>, got <2>\n\nexpect(1 + 1).to(equal(3), description: \"Make sure libKindergartenMath is loaded\")\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3>, got <2>\n```\n\nOr the *WithDescription version in Objective-C:\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(@(1+1)).to(equal(@3));\n// failed - expected to equal <3.0000>, got <2.0000>\n\nexpect(@(1+1)).toWithDescription(equal(@3), @\"Make sure libKindergartenMath is loaded\");\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3.0000>, got <2.0000>\n```\n\n## Type Checking\n\nNimble makes sure you don't compare two types that don't match:\n\n```swift\n// Swift\n\n// Does not compile:\nexpect(1 + 1).to(equal(\"Squee!\"))\n```\n\n> Nimble uses generics--only available in Swift--to ensure\n  type correctness. That means type checking is\n  not available when using Nimble in Objective-C. :sob:\n\n## Operator Overloads\n\nTired of so much typing? With Nimble, you can use overloaded operators\nlike `==` for equivalence, or `>` for comparisons:\n\n```swift\n// Swift\n\n// Passes if squawk does not equal \"Hi!\":\nexpect(seagull.squawk) != \"Hi!\"\n\n// Passes if 10 is greater than 2:\nexpect(10) > 2\n```\n\n> Operator overloads are only available in Swift, so you won't be able\n  to use this syntax in Objective-C. :broken_heart:\n\n## Lazily Computed Values\n\nThe `expect` function doesn't evaluate the value it's given until it's\ntime to match. So Nimble can test whether an expression raises an\nexception once evaluated:\n\n```swift\n// Swift\n\n// Note: Swift currently doesn't have exceptions.\n//       Only Objective-C code can raise exceptions\n//       that Nimble will catch.\n//       (see https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)\nlet exception = NSException(\n  name: NSInternalInconsistencyException,\n  reason: \"Not enough fish in the sea.\",\n  userInfo: [\"something\": \"is fishy\"])\nexpect { exception.raise() }.to(raiseException())\n\n// Also, you can customize raiseException to be more specific\nexpect { exception.raise() }.to(raiseException(named: NSInternalInconsistencyException))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\"))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\",\n    userInfo: [\"something\": \"is fishy\"]))\n```\n\nObjective-C works the same way, but you must use the `expectAction`\nmacro when making an expectation on an expression that has no return\nvalue:\n\n```objc\n// Objective-C\n\nNSException *exception = [NSException exceptionWithName:NSInternalInconsistencyException\n                                                 reason:@\"Not enough fish in the sea.\"\n                                               userInfo:nil];\nexpectAction(^{ [exception raise]; }).to(raiseException());\n\n// Use the property-block syntax to be more specific.\nexpectAction(^{ [exception raise]; }).to(raiseException().named(NSInternalInconsistencyException));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\"));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\").\n    userInfo(@{@\"something\": @\"is fishy\"}));\n\n// You can also pass a block for custom matching of the raised exception\nexpectAction(exception.raise()).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(NSInternalInconsistencyException));\n}));\n```\n\n## C Primitives\n\nSome testing frameworks make it hard to test primitive C values.\nIn Nimble, it just works:\n\n```swift\n// Swift\n\nlet actual: CInt = 1\nlet expectedValue: CInt = 1\nexpect(actual).to(equal(expectedValue))\n```\n\nIn fact, Nimble uses type inference, so you can write the above\nwithout explicitly specifying both types:\n\n```swift\n// Swift\n\nexpect(1 as CInt).to(equal(1))\n```\n\n> In Objective-C, Nimble only supports Objective-C objects. To\n  make expectations on primitive C values, wrap then in an object\n  literal:\n\n  ```objc\n  expect(@(1 + 1)).to(equal(@2));\n  ```\n\n## Asynchronous Expectations\n\nIn Nimble, it's easy to make expectations on values that are updated\nasynchronously. Just use `toEventually` or `toEventuallyNot`:\n\n```swift\n// Swift\n\ndispatch_async(dispatch_get_main_queue()) {\n  ocean.add(\"dolphins\")\n  ocean.add(\"whales\")\n}\nexpect(ocean).toEventually(contain(\"dolphins\", \"whales\"))\n```\n\n\n```objc\n// Objective-C\ndispatch_async(dispatch_get_main_queue(), ^{\n  [ocean add:@\"dolphins\"];\n  [ocean add:@\"whales\"];\n});\nexpect(ocean).toEventually(contain(@\"dolphins\", @\"whales\"));\n```\n\nNote: toEventually triggers its polls on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop. This can cause test pollution\nfor whatever incomplete code that was running on the main thread.  Blocking the\nmain thread can be caused by blocking IO, calls to sleep(), deadlocks, and\nsynchronous IPC.\n\nIn the above example, `ocean` is constantly re-evaluated. If it ever\ncontains dolphins and whales, the expectation passes. If `ocean` still\ndoesn't contain them, even after being continuously re-evaluated for one\nwhole second, the expectation fails.\n\nSometimes it takes more than a second for a value to update. In those\ncases, use the `timeout` parameter:\n\n```swift\n// Swift\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).toEventually(contain(\"starfish\"), timeout: 3)\n```\n\n```objc\n// Objective-C\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).withTimeout(3).toEventually(contain(@\"starfish\"));\n```\n\nYou can also provide a callback by using the `waitUntil` function:\n\n```swift\n// Swift\n\nwaitUntil { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(0.5)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntil(^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:0.5];\n  done();\n});\n```\n\n`waitUntil` also optionally takes a timeout parameter:\n\n```swift\n// Swift\n\nwaitUntil(timeout: 10) { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(1)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntilTimeout(10, ^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:1];\n  done();\n});\n```\n\nNote: waitUntil triggers its timeout code on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop to continue. This can cause test\npollution for whatever incomplete code that was running on the main thread.\nBlocking the main thread can be caused by blocking IO, calls to sleep(),\ndeadlocks, and synchronous IPC.\n\nIn some cases (e.g. when running on slower machines) it can be useful to modify\nthe default timeout and poll interval values. This can be done as follows:\n\n```swift\n// Swift\n\n// Increase the global timeout to 5 seconds:\nNimble.AsyncDefaults.Timeout = 5\n\n// Slow the polling interval to 0.1 seconds:\nNimble.AsyncDefaults.PollInterval = 0.1\n```\n\n## Objective-C Support\n\nNimble has full support for Objective-C. However, there are two things\nto keep in mind when using Nimble in Objective-C:\n\n1. All parameters passed to the `expect` function, as well as matcher\n   functions like `equal`, must be Objective-C objects:\n\n   ```objc\n   // Objective-C\n\n   @import Nimble;\n\n   expect(@(1 + 1)).to(equal(@2));\n   expect(@\"Hello world\").to(contain(@\"world\"));\n   ```\n\n2. To make an expectation on an expression that does not return a value,\n   such as `-[NSException raise]`, use `expectAction` instead of\n   `expect`:\n\n   ```objc\n   // Objective-C\n\n   expectAction(^{ [exception raise]; }).to(raiseException());\n   ```\n\n## Disabling Objective-C Shorthand\n\nNimble provides a shorthand for expressing expectations using the\n`expect` function. To disable this shorthand in Objective-C, define the\n`NIMBLE_DISABLE_SHORT_SYNTAX` macro somewhere in your code before\nimporting Nimble:\n\n```objc\n#define NIMBLE_DISABLE_SHORT_SYNTAX 1\n\n@import Nimble;\n\nNMB_expect(^{ return seagull.squawk; }, __FILE__, __LINE__).to(NMB_equal(@\"Squee!\"));\n```\n\n> Disabling the shorthand is useful if you're testing functions with\n  names that conflict with Nimble functions, such as `expect` or\n  `equal`. If that's not the case, there's no point in disabling the\n  shorthand.\n\n# Built-in Matcher Functions\n\nNimble includes a wide variety of matcher functions.\n\n## Equivalence\n\n```swift\n// Swift\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\nexpect(actual) == expected\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\nexpect(actual) != expected\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\n```\n\nValues must be `Equatable`, `Comparable`, or subclasses of `NSObject`.\n`equal` will always fail when used to compare one or more `nil` values.\n\n## Identity\n\n```swift\n// Swift\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected))\nexpect(actual) === expected\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected))\nexpect(actual) !== expected\n```\n\nIts important to remember that `beIdenticalTo` only makes sense when comparing types with reference semantics, which have a notion of identity. In Swift, that means a `class`. This matcher will not work with types with value semantics such as `struct` or `enum`. If you need to compare two value types, you can either compare individual properties or if it makes sense to do so, make your type implement `Equatable` and use Nimble's equivalence matchers instead.\n\n\n```objc\n// Objective-C\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected));\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected));\n```\n\n## Comparisons\n\n```swift\n// Swift\n\nexpect(actual).to(beLessThan(expected))\nexpect(actual) < expected\n\nexpect(actual).to(beLessThanOrEqualTo(expected))\nexpect(actual) <= expected\n\nexpect(actual).to(beGreaterThan(expected))\nexpect(actual) > expected\n\nexpect(actual).to(beGreaterThanOrEqualTo(expected))\nexpect(actual) >= expected\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beLessThan(expected));\nexpect(actual).to(beLessThanOrEqualTo(expected));\nexpect(actual).to(beGreaterThan(expected));\nexpect(actual).to(beGreaterThanOrEqualTo(expected));\n```\n\n> Values given to the comparison matchers above must implement\n  `Comparable`.\n\nBecause of how computers represent floating point numbers, assertions\nthat two floating point numbers be equal will sometimes fail. To express\nthat two numbers should be close to one another within a certain margin\nof error, use `beCloseTo`:\n\n```swift\n// Swift\n\nexpect(actual).to(beCloseTo(expected, within: delta))\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beCloseTo(expected).within(delta));\n```\n\nFor example, to assert that `10.01` is close to `10`, you can write:\n\n```swift\n// Swift\n\nexpect(10.01).to(beCloseTo(10, within: 0.1))\n```\n\n```objc\n// Objective-C\n\nexpect(@(10.01)).to(beCloseTo(@10).within(0.1));\n```\n\nThere is also an operator shortcut available in Swift:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected\nexpect(actual) ≈ (expected, delta)\n\n```\n(Type Option-x to get ≈ on a U.S. keyboard)\n\nThe former version uses the default delta of 0.0001. Here is yet another way to do this:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected ± delta\nexpect(actual) == expected ± delta\n\n```\n(Type Option-Shift-= to get ± on a U.S. keyboard)\n\nIf you are comparing arrays of floating point numbers, you'll find the following useful:\n\n```swift\n// Swift\n\nexpect([0.0, 2.0]) ≈ [0.0001, 2.0001]\nexpect([0.0, 2.0]).to(beCloseTo([0.1, 2.1], within: 0.1))\n\n```\n\n> Values given to the `beCloseTo` matcher must be coercable into a\n  `Double`.\n\n## Types/Classes\n\n```swift\n// Swift\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass))\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass))\n```\n\n```objc\n// Objective-C\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass));\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass));\n```\n\n> Instances must be Objective-C objects: subclasses of `NSObject`,\n  or Swift objects bridged to Objective-C with the `@objc` prefix.\n\nFor example, to assert that `dolphin` is a kind of `Mammal`:\n\n```swift\n// Swift\n\nexpect(dolphin).to(beAKindOf(Mammal))\n```\n\n```objc\n// Objective-C\n\nexpect(dolphin).to(beAKindOf([Mammal class]));\n```\n\n> `beAnInstanceOf` uses the `-[NSObject isMemberOfClass:]` method to\n  test membership. `beAKindOf` uses `-[NSObject isKindOfClass:]`.\n\n## Truthiness\n\n```swift\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy())\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue())\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy())\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse())\n\n// Passes if actual is nil:\nexpect(actual).to(beNil())\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy());\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue());\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy());\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse());\n\n// Passes if actual is nil:\nexpect(actual).to(beNil());\n```\n\n## Swift Error Handling\n\nIf you're using Swift 2.0+, you can use the `throwError` matcher to check if an error is thrown.\n\n```swift\n// Swift\n\n// Passes if somethingThatThrows() throws an ErrorType:\nexpect{ try somethingThatThrows() }.to(throwError())\n\n// Passes if somethingThatThrows() throws an error with a given domain:\nexpect{ try somethingThatThrows() }.to(throwError { (error: ErrorType) in\n    expect(error._domain).to(equal(NSCocoaErrorDomain))\n})\n\n// Passes if somethingThatThrows() throws an error with a given case:\nexpect{ try somethingThatThrows() }.to(throwError(NSCocoaError.PropertyListReadCorruptError))\n\n// Passes if somethingThatThrows() throws an error with a given type:\nexpect{ try somethingThatThrows() }.to(throwError(errorType: MyError.self))\n```\n\nIf you are working directly with `ErrorType` values, as is sometimes the case when using `Result` or `Promise` types, you can use the `matchError` matcher to check if the error is the same error is is supposed to be, without requiring explicit casting.\n\n```swift\n// Swift\n\nlet actual: ErrorType = …\n\n// Passes if actual contains any error value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum))\n\n// Passes if actual contains the Timeout value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum.Timeout))\n\n// Passes if actual contains an NSError equal to the given one:\nexpect(actual).to(matchError(NSError(domain: \"err\", code: 123, userInfo: nil)))\n```\n\nNote: This feature is only available in Swift.\n\n## Exceptions\n\n```swift\n// Swift\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name:\nexpect(actual).to(raiseException(named: name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException(named: name, reason: reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect { exception.raise() }.to(raiseException { (exception: NSException) in\n    expect(exception.name).to(beginWith(\"a r\"))\n})\n```\n\n```objc\n// Objective-C\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name\nexpect(actual).to(raiseException().named(name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException().named(name).reason(reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect(actual).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(@\"a r\"));\n}));\n```\n\nNote: Swift currently doesn't have exceptions (see [#220](https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)). Only Objective-C code can raise\nexceptions that Nimble will catch.\n\n## Collection Membership\n\n```swift\n// Swift\n\n// Passes if all of the expected values are members of actual:\nexpect(actual).to(contain(expected...))\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty())\n```\n\n```objc\n// Objective-C\n\n// Passes if expected is a member of actual:\nexpect(actual).to(contain(expected));\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty());\n```\n\n> In Swift `contain` takes any number of arguments. The expectation\n  passes if all of them are members of the collection. In Objective-C,\n  `contain` only takes one argument [for now](https://github.com/Quick/Nimble/issues/27).\n\nFor example, to assert that a list of sea creature names contains\n\"dolphin\" and \"starfish\":\n\n```swift\n// Swift\n\nexpect([\"whale\", \"dolphin\", \"starfish\"]).to(contain(\"dolphin\", \"starfish\"))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"dolphin\"));\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"starfish\"));\n```\n\n> `contain` and `beEmpty` expect collections to be instances of\n  `NSArray`, `NSSet`, or a Swift collection composed of `Equatable` elements.\n\nTo test whether a set of elements is present at the beginning or end of\nan ordered collection, use `beginWith` and `endWith`:\n\n```swift\n// Swift\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected...))\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected...))\n```\n\n```objc\n// Objective-C\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected));\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected));\n```\n\n> `beginWith` and `endWith` expect collections to be instances of\n  `NSArray`, or ordered Swift collections composed of `Equatable`\n  elements.\n\n  Like `contain`, in Objective-C `beginWith` and `endWith` only support\n  a single argument [for now](https://github.com/Quick/Nimble/issues/27).\n\n## Strings\n\n```swift\n// Swift\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected))\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected))\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected))\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty())\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n```objc\n// Objective-C\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected));\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected));\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected));\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty());\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n## Checking if all elements of a collection pass a condition\n\n```swift\n// Swift\n\n// with a custom function:\nexpect([1,2,3,4]).to(allPass({$0 < 5}))\n\n// with another matcher:\nexpect([1,2,3,4]).to(allPass(beLessThan(5)))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n```\n\nFor Swift the actual value has to be a SequenceType, e.g. an array, a set or a custom seqence type.\n\nFor Objective-C the actual value has to be a NSFastEnumeration, e.g. NSArray and NSSet, of NSObjects and only the variant which\nuses another matcher is available here.\n\n## Verify collection count\n\n```swift\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\n```objc\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\nFor Swift the actual value must be a `CollectionType` such as array, dictionary or set.\n\nFor Objective-C the actual value has to be one of the following classes `NSArray`, `NSDictionary`, `NSSet`, `NSHashTable` or one of their subclasses.\n\n## Matching a value to any of a group of matchers\n\n```swift\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(10), beGreaterThan(20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(6).to(satisfyAnyOf(equal(2), equal(3), equal(4), equal(5), equal(6), equal(7)))\n\n// in Swift you also have the option to use the || operator to achieve a similar function\nexpect(82).to(beLessThan(50) || beGreaterThan(80))\n```\n\n```objc\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(@10), beGreaterThan(@20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(@6).to(satisfyAnyOf(equal(@2), equal(@3), equal(@4), equal(@5), equal(@6), equal(@7)))\n```\n\nNote: This matcher allows you to chain any number of matchers together. This provides flexibility, \n      but if you find yourself chaining many matchers together in one test, consider whether you  \n      could instead refactor that single test into multiple, more precisely focused tests for \n      better coverage. \n\n# Writing Your Own Matchers\n\nIn Nimble, matchers are Swift functions that take an expected\nvalue and return a `MatcherFunc` closure. Take `equal`, for example:\n\n```swift\n// Swift\n\npublic func equal<T: Equatable>(expectedValue: T?) -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"equal <\\(expectedValue)>\"\n    return actualExpression.evaluate() == expectedValue\n  }\n}\n```\n\nThe return value of a `MatcherFunc` closure is a `Bool` that indicates\nwhether the actual value matches the expectation: `true` if it does, or\n`false` if it doesn't.\n\n> The actual `equal` matcher function does not match when either\n  `actual` or `expected` are nil; the example above has been edited for\n  brevity.\n\nSince matchers are just Swift functions, you can define them anywhere:\nat the top of your test file, in a file shared by all of your tests, or\nin an Xcode project you distribute to others.\n\n> If you write a matcher you think everyone can use, consider adding it\n  to Nimble's built-in set of matchers by sending a pull request! Or\n  distribute it yourself via GitHub.\n\nFor examples of how to write your own matchers, just check out the\n[`Matchers` directory](https://github.com/Quick/Nimble/tree/master/Sources/Nimble/Matchers)\nto see how Nimble's built-in set of matchers are implemented. You can\nalso check out the tips below.\n\n## Lazy Evaluation\n\n`actualExpression` is a lazy, memoized closure around the value provided to the\n`expect` function. The expression can either be a closure or a value directly\npassed to `expect(...)`. In order to determine whether that value matches,\ncustom matchers should call `actualExpression.evaluate()`:\n\n```swift\n// Swift\n\npublic func beNil<T>() -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"be nil\"\n    return actualExpression.evaluate() == nil\n  }\n}\n```\n\nIn the above example, `actualExpression` is not `nil`--it is a closure\nthat returns a value. The value it returns, which is accessed via the\n`evaluate()` method, may be `nil`. If that value is `nil`, the `beNil`\nmatcher function returns `true`, indicating that the expectation passed.\n\nUse `expression.isClosure` to determine if the expression will be invoking\na closure to produce its value.\n\n## Type Checking via Swift Generics\n\nUsing Swift's generics, matchers can constrain the type of the actual value\npassed to the `expect` function by modifying the return type.\n\nFor example, the following matcher, `haveDescription`, only accepts actual\nvalues that implement the `Printable` protocol. It checks their `description`\nagainst the one provided to the matcher function, and passes if they are the same:\n\n```swift\n// Swift\n\npublic func haveDescription(description: String) -> MatcherFunc<Printable?> {\n  return MatcherFunc { actual, failureMessage in\n    return actual.evaluate().description == description\n  }\n}\n```\n\n## Customizing Failure Messages\n\nBy default, Nimble outputs the following failure message when an\nexpectation fails:\n\n```\nexpected to match, got <\\(actual)>\n```\n\nYou can customize this message by modifying the `failureMessage` struct\nfrom within your `MatcherFunc` closure. To change the verb \"match\" to\nsomething else, update the `postfixMessage` property:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea, got <\\(actual)>\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\nYou can change how the `actual` value is displayed by updating\n`failureMessage.actualValue`. Or, to remove it altogether, set it to\n`nil`:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea\nfailureMessage.actualValue = nil\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\n## Supporting Objective-C\n\nTo use a custom matcher written in Swift from Objective-C, you'll have\nto extend the `NMBObjCMatcher` class, adding a new class method for your\ncustom matcher. The example below defines the class method\n`+[NMBObjCMatcher beNilMatcher]`:\n\n```swift\n// Swift\n\nextension NMBObjCMatcher {\n  public class func beNilMatcher() -> NMBObjCMatcher {\n    return NMBObjCMatcher { actualBlock, failureMessage, location in\n      let block = ({ actualBlock() as NSObject? })\n      let expr = Expression(expression: block, location: location)\n      return beNil().matches(expr, failureMessage: failureMessage)\n    }\n  }\n}\n```\n\nThe above allows you to use the matcher from Objective-C:\n\n```objc\n// Objective-C\n\nexpect(actual).to([NMBObjCMatcher beNilMatcher]());\n```\n\nTo make the syntax easier to use, define a C function that calls the\nclass method:\n\n```objc\n// Objective-C\n\nFOUNDATION_EXPORT id<NMBMatcher> beNil() {\n  return [NMBObjCMatcher beNilMatcher];\n}\n```\n\n### Properly Handling `nil` in Objective-C Matchers\n\nWhen supporting Objective-C, make sure you handle `nil` appropriately.\nLike [Cedar](https://github.com/pivotal/cedar/issues/100),\n**most matchers do not match with nil**. This is to bring prevent test\nwriters from being surprised by `nil` values where they did not expect\nthem.\n\nNimble provides the `beNil` matcher function for test writer that want\nto make expectations on `nil` objects:\n\n```objc\n// Objective-C\n\nexpect(nil).to(equal(nil)); // fails\nexpect(nil).to(beNil());    // passes\n```\n\nIf your matcher does not want to match with nil, you use `NonNilMatcherFunc`\nand the `canMatchNil` constructor on `NMBObjCMatcher`. Using both types will\nautomatically generate expected value failure messages when they're nil.\n\n```swift\n\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.evaluate()\n            let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n            return beginWith(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n```\n\n# Installing Nimble\n\n> Nimble can be used on its own, or in conjunction with its sister\n  project, [Quick](https://github.com/Quick/Quick). To install both\n  Quick and Nimble, follow [the installation instructions in the Quick\n  README](https://github.com/Quick/Quick#how-to-install-quick).\n\nNimble can currently be installed in one of two ways: using CocoaPods, or with\ngit submodules.\n\n## Installing Nimble as a Submodule\n\nTo use Nimble as a submodule to test your iOS or OS X applications, follow these\n4 easy steps:\n\n1. Clone the Nimble repository\n2. Add Nimble.xcodeproj to the Xcode workspace for your project\n3. Link Nimble.framework to your test target\n4. Start writing expectations!\n\nFor more detailed instructions on each of these steps,\nread [How to Install Quick](https://github.com/Quick/Quick#how-to-install-quick).\nIgnore the steps involving adding Quick to your project in order to\ninstall just Nimble.\n\n## Installing Nimble via CocoaPods\n\nTo use Nimble in CocoaPods to test your iOS or OS X applications, add Nimble to\nyour podfile and add the ```use_frameworks!``` line to enable Swift support for\nCocoaPods.\n\n```ruby\nplatform :ios, '8.0'\n\nsource 'https://github.com/CocoaPods/Specs.git'\n\n# Whatever pods you need for your app go here\n\ntarget 'YOUR_APP_NAME_HERE_Tests', :exclusive => true do\n  use_frameworks!\n  pod 'Nimble', '~> 4.0.0'\nend\n```\n\nFinally run `pod install`.\n\n## Using Nimble without XCTest\n\nNimble is integrated with XCTest to allow it work well when used in Xcode test\nbundles, however it can also be used in a standalone app. After installing\nNimble using one of the above methods, there are two additional steps required\nto make this work.\n\n1. Create a custom assertion handler and assign an instance of it to the\n   global `NimbleAssertionHandler` variable. For example:\n\n```swift\nclass MyAssertionHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if (!assertion) {\n            print(\"Expectation failed: \\(message.stringValue)\")\n        }\n    }\n}\n```\n```swift\n// Somewhere before you use any assertions\nNimbleAssertionHandler = MyAssertionHandler()\n```\n\n2. Add a post-build action to fix an issue with the Swift XCTest support\n   library being unnecessarily copied into your app\n  * Edit your scheme in Xcode, and navigate to Build -> Post-actions\n  * Click the \"+\" icon and select \"New Run Script Action\"\n  * Open the \"Provide build settings from\" dropdown and select your target\n  * Enter the following script contents:\n```\nrm \"${SWIFT_STDLIB_TOOL_DESTINATION_DIR}/libswiftXCTest.dylib\"\n```\n\nYou can now use Nimble assertions in your code and handle failures as you see\nfit.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AdapterProtocols.swift",
    "content": "import Foundation\n\n/// Protocol for the assertion handler that Nimble uses for all expectations.\npublic protocol AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation)\n}\n\n/// Global backing interface for assertions that Nimble creates.\n/// Defaults to a private test handler that passes through to XCTest.\n///\n/// If XCTest is not available, you must assign your own assertion handler\n/// before using any matchers, otherwise Nimble will abort the program.\n///\n/// @see AssertionHandler\npublic var NimbleAssertionHandler: AssertionHandler = { () -> AssertionHandler in\n    return isXCTestAvailable() ? NimbleXCTestHandler() : NimbleXCTestUnavailableHandler()\n}()\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AssertionDispatcher.swift",
    "content": "\n/// AssertionDispatcher allows multiple AssertionHandlers to receive\n/// assertion messages.\n///\n/// @warning Does not fully dispatch if one of the handlers raises an exception.\n///          This is possible with XCTest-based assertion handlers.\n///\npublic class AssertionDispatcher: AssertionHandler {\n    let handlers: [AssertionHandler]\n\n    public init(handlers: [AssertionHandler]) {\n        self.handlers = handlers\n    }\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        for handler in handlers {\n            handler.assert(assertion, message: message, location: location)\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift",
    "content": "import Foundation\n\n/// A data structure that stores information about an assertion when\n/// AssertionRecorder is set as the Nimble assertion handler.\n///\n/// @see AssertionRecorder\n/// @see AssertionHandler\npublic struct AssertionRecord: CustomStringConvertible {\n    /// Whether the assertion succeeded or failed\n    public let success: Bool\n    /// The failure message the assertion would display on failure.\n    public let message: FailureMessage\n    /// The source location the expectation occurred on.\n    public let location: SourceLocation\n\n    public var description: String {\n        return \"AssertionRecord { success=\\(success), message='\\(message.stringValue)', location=\\(location) }\"\n    }\n}\n\n/// An AssertionHandler that silently records assertions that Nimble makes.\n/// This is useful for testing failure messages for matchers.\n///\n/// @see AssertionHandler\npublic class AssertionRecorder : AssertionHandler {\n    /// All the assertions that were captured by this recorder\n    public var assertions = [AssertionRecord]()\n\n    public init() {}\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        assertions.append(\n            AssertionRecord(\n                success: assertion,\n                message: message,\n                location: location))\n    }\n}\n\n/// Allows you to temporarily replace the current Nimble assertion handler with\n/// the one provided for the scope of the closure.\n///\n/// Once the closure finishes, then the original Nimble assertion handler is restored.\n///\n/// @see AssertionHandler\npublic func withAssertionHandler(tempAssertionHandler: AssertionHandler, closure: () throws -> Void) {\n    let environment = NimbleEnvironment.activeInstance\n    let oldRecorder = environment.assertionHandler\n    let capturer = NMBExceptionCapture(handler: nil, finally: ({\n        environment.assertionHandler = oldRecorder\n    }))\n    environment.assertionHandler = tempAssertionHandler\n    capturer.tryBlock {\n        try! closure()\n    }\n}\n\n/// Captures expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about expectations\n/// that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble \n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherFailingExpectations\npublic func gatherExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let previousRecorder = NimbleEnvironment.activeInstance.assertionHandler\n    let recorder = AssertionRecorder()\n    let handlers: [AssertionHandler]\n\n    if silently {\n        handlers = [recorder]\n    } else {\n        handlers = [recorder, previousRecorder]\n    }\n\n    let dispatcher = AssertionDispatcher(handlers: handlers)\n    withAssertionHandler(dispatcher, closure: closure)\n    return recorder.assertions\n}\n\n/// Captures failed expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about failed\n/// expectations that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble\n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherExpectations\n/// @see raiseException source for an example use case.\npublic func gatherFailingExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let assertions = gatherExpectations(silently: silently, closure: closure)\n    return assertions.filter { assertion in\n        !assertion.success\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift",
    "content": "import Foundation\n\n/// \"Global\" state of Nimble is stored here. Only DSL functions should access / be aware of this\n/// class' existance\ninternal class NimbleEnvironment {\n    static var activeInstance: NimbleEnvironment {\n        get {\n            let env = NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"]\n            if let env = env as? NimbleEnvironment {\n                return env\n            } else {\n                let newEnv = NimbleEnvironment()\n                self.activeInstance = newEnv\n                return newEnv\n            }\n        }\n        set {\n            NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"] = newValue\n        }\n    }\n\n    // TODO: eventually migrate the global to this environment value\n    var assertionHandler: AssertionHandler {\n        get { return NimbleAssertionHandler }\n        set { NimbleAssertionHandler = newValue }\n    }\n\n#if _runtime(_ObjC)\n    var awaiter: Awaiter\n\n    init() {\n        awaiter = Awaiter(\n            waitLock: AssertionWaitLock(),\n            asyncQueue: dispatch_get_main_queue(),\n            timeoutQueue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0))\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift",
    "content": "import Foundation\nimport XCTest\n\n/// Default handler for Nimble. This assertion handler passes failures along to\n/// XCTest.\npublic class NimbleXCTestHandler : AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            recordFailure(\"\\(message.stringValue)\\n\", location: location)\n        }\n    }\n}\n\n/// Alternative handler for Nimble. This assertion handler passes failures along\n/// to XCTest by attempting to reduce the failure message size.\npublic class NimbleShortXCTestHandler: AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            let msg: String\n            if let actual = message.actualValue {\n                msg = \"got: \\(actual) \\(message.postfixActual)\"\n            } else {\n                msg = \"expected \\(message.to) \\(message.postfixMessage)\"\n            }\n            recordFailure(\"\\(msg)\\n\", location: location)\n        }\n    }\n}\n\n/// Fallback handler in case XCTest is unavailable. This assertion handler will abort\n/// the program if it is invoked.\nclass NimbleXCTestUnavailableHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        fatalError(\"XCTest is not available and no custom assertion handler was configured. Aborting.\")\n    }\n}\n\n#if _runtime(_ObjC)\n    /// Helper class providing access to the currently executing XCTestCase instance, if any\n@objc final internal class CurrentTestCaseTracker: NSObject, XCTestObservation {\n    @objc static let sharedInstance = CurrentTestCaseTracker()\n\n    private(set) var currentTestCase: XCTestCase?\n\n    @objc func testCaseWillStart(testCase: XCTestCase) {\n        currentTestCase = testCase\n    }\n\n    @objc func testCaseDidFinish(testCase: XCTestCase) {\n        currentTestCase = nil\n    }\n}\n#endif\n\n\nfunc isXCTestAvailable() -> Bool {\n#if _runtime(_ObjC)\n    // XCTest is weakly linked and so may not be present\n    return NSClassFromString(\"XCTestCase\") != nil\n#else\n    return true\n#endif\n}\n\nprivate func recordFailure(message: String, location: SourceLocation) {\n#if _runtime(_ObjC)\n    if let testCase = CurrentTestCaseTracker.sharedInstance.currentTestCase {\n        testCase.recordFailureWithDescription(message, inFile: location.file, atLine: location.line, expected: true)\n    } else {\n        let msg = \"Attempted to report a test failure to XCTest while no test case was running. \" +\n        \"The failure was:\\n\\\"\\(message)\\\"\\nIt occurred at: \\(location.file):\\(location.line)\"\n        NSException(name: NSInternalInconsistencyException, reason: msg, userInfo: nil).raise()\n    }\n#else\n    XCTFail(\"\\(message)\\n\", file: location.file, line: location.line)\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NonObjectiveC/ExceptionCapture.swift",
    "content": "import Foundation\n\n#if !_runtime(_ObjC)\n// swift-corelibs-foundation doesn't provide NSException at all, so provide a dummy\nclass NSException {}\n#endif\n\n// NOTE: This file is not intended to be included in the Xcode project. It\n//       is picked up by the Swift Package Manager during its build process.\n\n/// A dummy reimplementation of the `NMBExceptionCapture` class to serve\n/// as a stand-in for build and runtime environments that don't support\n/// Objective C.\ninternal class ExceptionCapture {\n    let finally: (() -> Void)?\n\n    init(handler: ((NSException!) -> Void)?, finally: (() -> Void)?) {\n        self.finally = finally\n    }\n\n    func tryBlock(unsafeBlock: (() -> Void)) {\n        // We have no way of handling Objective C exceptions in Swift,\n        // so we just go ahead and run the unsafeBlock as-is\n        unsafeBlock()\n\n        finally?()\n    }\n}\n\n/// Compatibility with the actual Objective-C implementation\ntypealias NMBExceptionCapture = ExceptionCapture\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble22CurrentTestCaseTracker\")\n@interface CurrentTestCaseTracker : NSObject <XCTestObservation>\n+ (CurrentTestCaseTracker *)sharedInstance;\n@end\n\n@interface CurrentTestCaseTracker (Register) @end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class NMBExpectation;\n@class NMBObjCBeCloseToMatcher;\n@class NMBObjCRaiseExceptionMatcher;\n@protocol NMBMatcher;\n\n\n#define NIMBLE_EXPORT FOUNDATION_EXPORT\n\n#ifdef NIMBLE_DISABLE_SHORT_SYNTAX\n#define NIMBLE_SHORT(PROTO, ORIGINAL)\n#else\n#define NIMBLE_SHORT(PROTO, ORIGINAL) FOUNDATION_STATIC_INLINE PROTO { return (ORIGINAL); }\n#endif\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> equal(id expectedValue),\n             NMB_equal(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> haveCount(id expectedValue),\n             NMB_haveCount(expectedValue));\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue);\nNIMBLE_SHORT(NMBObjCBeCloseToMatcher *beCloseTo(id expectedValue),\n             NMB_beCloseTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAnInstanceOf(Class expectedClass),\n             NMB_beAnInstanceOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAKindOf(Class expectedClass),\n             NMB_beAKindOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> beginWith(id itemElementOrSubstring),\n             NMB_beginWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThan(NSNumber *expectedValue),\n             NMB_beGreaterThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beGreaterThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> beIdenticalTo(id expectedInstance),\n             NMB_beIdenticalTo(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> be(id expectedInstance),\n             NMB_be(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThan(NSNumber *expectedValue),\n             NMB_beLessThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beLessThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy(void);\nNIMBLE_SHORT(id<NMBMatcher> beTruthy(void),\n             NMB_beTruthy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalsy(void),\n             NMB_beFalsy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue(void);\nNIMBLE_SHORT(id<NMBMatcher> beTrue(void),\n             NMB_beTrue());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalse(void),\n             NMB_beFalse());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil(void);\nNIMBLE_SHORT(id<NMBMatcher> beNil(void),\n             NMB_beNil());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty(void);\nNIMBLE_SHORT(id<NMBMatcher> beEmpty(void),\n             NMB_beEmpty());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) NS_REQUIRES_NIL_TERMINATION;\n#define NMB_contain(...) NMB_containWithNilTermination(__VA_ARGS__, nil)\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define contain(...) NMB_contain(__VA_ARGS__)\n#endif\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> endWith(id itemElementOrSubstring),\n             NMB_endWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException(void);\nNIMBLE_SHORT(NMBObjCRaiseExceptionMatcher *raiseException(void),\n             NMB_raiseException());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> match(id expectedValue),\n             NMB_match(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id matcher);\nNIMBLE_SHORT(id<NMBMatcher> allPass(id matcher),\n             NMB_allPass(matcher));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers);\n#define NMB_satisfyAnyOf(...) NMB_satisfyAnyOfWithMatchers(@[__VA_ARGS__])\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define satisfyAnyOf(...) NMB_satisfyAnyOf(__VA_ARGS__)\n#endif\n\n// In order to preserve breakpoint behavior despite using macros to fill in __FILE__ and __LINE__,\n// define a builder that populates __FILE__ and __LINE__, and returns a block that takes timeout\n// and action arguments. See https://github.com/Quick/Quick/pull/185 for details.\ntypedef void (^NMBWaitUntilTimeoutBlock)(NSTimeInterval timeout, void (^action)(void (^)(void)));\ntypedef void (^NMBWaitUntilBlock)(void (^action)(void (^)(void)));\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\n#define NMB_waitUntilTimeout NMB_waitUntilTimeoutBuilder(@(__FILE__), __LINE__)\n#define NMB_waitUntil NMB_waitUntilBuilder(@(__FILE__), __LINE__)\n\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define expect(...) NMB_expect(^id{ return (__VA_ARGS__); }, @(__FILE__), __LINE__)\n#define expectAction(BLOCK) NMB_expectAction((BLOCK), @(__FILE__), __LINE__)\n#define failWithMessage(msg) NMB_failWithMessage(msg, @(__FILE__), __LINE__)\n#define fail() failWithMessage(@\"fail() always fails\")\n\n\n#define waitUntilTimeout NMB_waitUntilTimeout\n#define waitUntil NMB_waitUntil\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.m",
    "content": "#import <Nimble/DSL.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble7NMBWait\")\n@interface NMBWait : NSObject\n\n+ (void)untilTimeout:(NSTimeInterval)timeout file:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n+ (void)untilFile:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n\n@end\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line) {\n    return [[NMBExpectation alloc] initWithActualBlock:actualBlock\n                                              negative:NO\n                                                  file:file\n                                                  line:line];\n}\n\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line) {\n    return NMB_expect(^id{\n        actualBlock();\n        return nil;\n    }, file, line);\n}\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line) {\n    return [NMBExpectation failWithMessage:msg file:file line:line];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass) {\n    return [NMBObjCMatcher beAnInstanceOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass) {\n    return [NMBObjCMatcher beAKindOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beCloseToMatcher:expectedValue within:0.001];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher beginWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy() {\n    return [NMBObjCMatcher beTruthyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy() {\n    return [NMBObjCMatcher beFalsyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue() {\n    return [NMBObjCMatcher beTrueMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse() {\n    return [NMBObjCMatcher beFalseMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil() {\n    return [NMBObjCMatcher beNilMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty() {\n    return [NMBObjCMatcher beEmptyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) {\n    NSMutableArray *itemOrSubstringArray = [NSMutableArray array];\n\n    if (itemOrSubstring) {\n        [itemOrSubstringArray addObject:itemOrSubstring];\n\n        va_list args;\n        va_start(args, itemOrSubstring);\n        id next;\n        while ((next = va_arg(args, id))) {\n            [itemOrSubstringArray addObject:next];\n        }\n        va_end(args);\n    }\n\n    return [NMBObjCMatcher containMatcher:itemOrSubstringArray];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher endWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue) {\n    return [NMBObjCMatcher equalMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue) {\n    return [NMBObjCMatcher haveCountMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue) {\n    return [NMBObjCMatcher matchMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id expectedValue) {\n    return [NMBObjCMatcher allPassMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers) {\n    return [NMBObjCMatcher satisfyAnyOfMatcher:matchers];\n}\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException() {\n    return [NMBObjCMatcher raiseExceptionMatcher];\n}\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line) {\n    return ^(NSTimeInterval timeout, void (^action)(void (^)(void))) {\n        [NMBWait untilTimeout:timeout file:file line:line action:action];\n    };\n}\n\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line) {\n  return ^(void (^action)(void (^)(void))) {\n    [NMBWait untilFile:file line:line action:action];\n  };\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.h",
    "content": "#import <Foundation/Foundation.h>\n#import <dispatch/dispatch.h>\n\n@interface NMBExceptionCapture : NSObject\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally;\n- (void)tryBlock:(void(^)())unsafeBlock;\n\n@end\n\ntypedef void(^NMBSourceCallbackBlock)(BOOL successful);\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.m",
    "content": "#import \"NMBExceptionCapture.h\"\n\n@interface NMBExceptionCapture ()\n@property (nonatomic, copy) void(^handler)(NSException *exception);\n@property (nonatomic, copy) void(^finally)();\n@end\n\n@implementation NMBExceptionCapture\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally {\n    self = [super init];\n    if (self) {\n        self.handler = handler;\n        self.finally = finally;\n    }\n    return self;\n}\n\n- (void)tryBlock:(void(^)())unsafeBlock {\n    @try {\n        unsafeBlock();\n    }\n    @catch (NSException *exception) {\n        if (self.handler) {\n            self.handler(exception);\n        }\n    }\n    @finally {\n        if (self.finally) {\n            self.finally();\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExpectation.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\ninternal struct ObjCMatcherWrapper : Matcher {\n    let matcher: NMBMatcher\n\n    func matches(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.matches(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n\n    func doesNotMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.doesNotMatch(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n}\n\n// Equivalent to Expectation, but for Nimble's Objective-C interface\npublic class NMBExpectation : NSObject {\n    internal let _actualBlock: () -> NSObject!\n    internal var _negative: Bool\n    internal let _file: FileString\n    internal let _line: UInt\n    internal var _timeout: NSTimeInterval = 1.0\n\n    public init(actualBlock: () -> NSObject!, negative: Bool, file: FileString, line: UInt) {\n        self._actualBlock = actualBlock\n        self._negative = negative\n        self._file = file\n        self._line = line\n    }\n\n    private var expectValue: Expectation<NSObject> {\n        return expect(_file, line: _line){\n            self._actualBlock() as NSObject?\n        }\n    }\n\n    public var withTimeout: (NSTimeInterval) -> NMBExpectation {\n        return ({ timeout in self._timeout = timeout\n            return self\n        })\n    }\n\n    public var to: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher))\n        })\n    }\n\n    public var toWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher), description: description)\n        })\n    }\n\n    public var toNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher)\n            )\n        })\n    }\n\n    public var toNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher), description: description\n            )\n        })\n    }\n\n    public var notTo: (NMBMatcher) -> Void { return toNot }\n\n    public var notToWithDescription: (NMBMatcher, String) -> Void { return toNotWithDescription }\n\n    public var toEventually: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toEventuallyNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toNotEventually: (NMBMatcher) -> Void { return toEventuallyNot }\n\n    public var toNotEventuallyWithDescription: (NMBMatcher, String) -> Void { return toEventuallyNotWithDescription }\n\n    public class func failWithMessage(message: String, file: FileString, line: UInt) {\n        fail(message, location: SourceLocation(file: file, line: line))\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBObjCMatcher.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic typealias MatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool\npublic typealias FullMatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage, shouldNotMatch: Bool) -> Bool\n\npublic class NMBObjCMatcher : NSObject, NMBMatcher {\n    let _match: MatcherBlock\n    let _doesNotMatch: MatcherBlock\n    let canMatchNil: Bool\n\n    public init(canMatchNil: Bool, matcher: MatcherBlock, notMatcher: MatcherBlock) {\n        self.canMatchNil = canMatchNil\n        self._match = matcher\n        self._doesNotMatch = notMatcher\n    }\n\n    public convenience init(matcher: MatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: MatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: matcher, notMatcher: ({ actualExpression, failureMessage in\n            return !matcher(actualExpression: actualExpression, failureMessage: failureMessage)\n        }))\n    }\n\n    public convenience init(matcher: FullMatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: FullMatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: false)\n        }), notMatcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: true)\n        }))\n    }\n\n    private func canMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        do {\n            if !canMatchNil {\n                if try actualExpression.evaluate() == nil {\n                    failureMessage.postfixActual = \" (use beNil() to match nils)\"\n                    return false\n                }\n            }\n        } catch let error {\n            failureMessage.actualValue = \"an unexpected error thrown: \\(error)\"\n            return false\n        }\n        return true\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _match(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _doesNotMatch(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.h",
    "content": "@class NSString;\n\n/**\n * Returns a string appropriate for displaying in test output\n * from the provided value.\n *\n * @param value A value that will show up in a test's output.\n *\n * @return The string that is returned can be\n *     customized per type by conforming a type to the `TestOutputStringConvertible`\n *     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n *     function will return the value's debug description and then its\n *     normal description if available and in that order. Otherwise it\n *     will return the result of constructing a string from the value.\n *\n * @see `TestOutputStringConvertible`\n */\nextern NSString *_Nonnull NMBStringify(id _Nullable anyObject) __attribute__((warn_unused_result));\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.m",
    "content": "#import \"NMBStringify.h\"\n#import <Nimble/Nimble-Swift.h>\n\nNSString *_Nonnull NMBStringify(id _Nullable anyObject) {\n    return [NMBStringer stringify:anyObject];\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/XCTestObservationCenter+Register.m",
    "content": "#import \"CurrentTestCaseTracker.h\"\n#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n\n#pragma mark - Method Swizzling\n\n/// Swaps the implementations between two instance methods.\n///\n/// @param class               The class containing `originalSelector`.\n/// @param originalSelector    Original method to replace.\n/// @param replacementSelector Replacement method.\nvoid swizzleSelectors(Class class, SEL originalSelector, SEL replacementSelector) {\n    Method originalMethod = class_getInstanceMethod(class, originalSelector);\n    Method replacementMethod = class_getInstanceMethod(class, replacementSelector);\n\n    BOOL didAddMethod =\n    class_addMethod(class,\n                    originalSelector,\n                    method_getImplementation(replacementMethod),\n                    method_getTypeEncoding(replacementMethod));\n\n    if (didAddMethod) {\n        class_replaceMethod(class,\n                            replacementSelector,\n                            method_getImplementation(originalMethod),\n                            method_getTypeEncoding(originalMethod));\n    } else {\n        method_exchangeImplementations(originalMethod, replacementMethod);\n    }\n}\n\n#pragma mark - Private\n\n@interface XCTestObservationCenter (Private)\n- (void)_addLegacyTestObserver:(id)observer;\n@end\n\n@implementation XCTestObservationCenter (Register)\n\n/// Uses objc method swizzling to register `CurrentTestCaseTracker` as a test observer. This is necessary\n/// because Xcode 7.3 introduced timing issues where if a custom `XCTestObservation` is registered too early\n/// it suppresses all console output (generated by `XCTestLog`), breaking any tools that depend on this output.\n/// This approach waits to register our custom test observer until XCTest adds its first \"legacy\" observer,\n/// falling back to registering after the first normal observer if this private method ever changes.\n+ (void)load {\n    if (class_getInstanceMethod([self class], @selector(_addLegacyTestObserver:))) {\n        // Swizzle -_addLegacyTestObserver:\n        swizzleSelectors([self class], @selector(_addLegacyTestObserver:), @selector(NMB_original__addLegacyTestObserver:));\n    } else {\n        // Swizzle -addTestObserver:, only if -_addLegacyTestObserver: is not implemented\n        swizzleSelectors([self class], @selector(addTestObserver:), @selector(NMB_original_addTestObserver:));\n    }\n}\n\n#pragma mark - Replacement Methods\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n- (void)NMB_original__addLegacyTestObserver:(id)observer {\n    [self NMB_original__addLegacyTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n/// This method is only used if `-_addLegacyTestObserver:` is not impelemented. (added in Xcode 7.3)\n- (void)NMB_original_addTestObserver:(id<XCTestObservation>)observer {\n    [self NMB_original_addTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self NMB_original_addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/DSL+Wait.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nprivate enum ErrorResult {\n    case Exception(NSException)\n    case Error(ErrorType)\n    case None\n}\n\n/// Only classes, protocols, methods, properties, and subscript declarations can be\n/// bridges to Objective-C via the @objc keyword. This class encapsulates callback-style\n/// asynchronous waiting logic so that it may be called from Objective-C and Swift.\ninternal class NMBWait: NSObject {\n    internal class func until(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) -> Void) -> Void {\n            return throwableUntil(timeout: timeout, file: file, line: line) { (done: () -> Void) throws -> Void in\n                action() { done() }\n            }\n    }\n\n    // Using a throwable closure makes this method not objc compatible.\n    internal class func throwableUntil(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) throws -> Void) -> Void {\n            let awaiter = NimbleEnvironment.activeInstance.awaiter\n            let leeway = timeout / 2.0\n            let result = awaiter.performBlock { (done: (ErrorResult) -> Void) throws -> Void in\n                dispatch_async(dispatch_get_main_queue()) {\n                    let capture = NMBExceptionCapture(\n                        handler: ({ exception in\n                            done(.Exception(exception))\n                        }),\n                        finally: ({ })\n                    )\n                    capture.tryBlock {\n                        do {\n                            try action() {\n                                done(.None)\n                            }\n                        } catch let e {\n                            done(.Error(e))\n                        }\n                    }\n                }\n            }.timeout(timeout, forcefullyAbortTimeout: leeway).wait(\"waitUntil(...)\", file: file, line: line)\n\n            switch result {\n            case .Incomplete: internalError(\"Reached .Incomplete state for waitUntil(...).\")\n            case .BlockedRunLoop:\n                fail(blockedRunLoopErrorMessageFor(\"-waitUntil()\", leeway: leeway),\n                    file: file, line: line)\n            case .TimedOut:\n                let pluralize = (timeout == 1 ? \"\" : \"s\")\n                fail(\"Waited more than \\(timeout) second\\(pluralize)\", file: file, line: line)\n            case let .RaisedException(exception):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case let .ErrorThrown(error):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.Exception(let exception)):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case .Completed(.Error(let error)):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.None): // success\n                break\n            }\n    }\n\n    @objc(untilFile:line:action:)\n    internal class func until(file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n        until(timeout: 1, file: file, line: line, action: action)\n    }\n}\n\ninternal func blockedRunLoopErrorMessageFor(fnName: String, leeway: NSTimeInterval) -> String {\n    return \"\\(fnName) timed out but was unable to run the timeout handler because the main thread is unresponsive (\\(leeway) seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n}\n\n/// Wait asynchronously until the done closure is called or the timeout has been reached.\n///\n/// @discussion\n/// Call the done() closure to indicate the waiting has completed.\n/// \n/// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n/// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\npublic func waitUntil(timeout timeout: NSTimeInterval = 1, file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n    NMBWait.until(timeout: timeout, file: file, line: line, action: action)\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/DSL.swift",
    "content": "import Foundation\n\n/// Make an expectation on a given actual value. The value given is lazily evaluated.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(@autoclosure(escaping) expression: () throws -> T?, file: FileString = #file, line: UInt = #line) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Make an expectation on a given actual value. The closure is lazily invoked.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(file: FileString = #file, line: UInt = #line, expression: () throws -> T?) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Always fails the test with a message and a specified location.\npublic func fail(message: String, location: SourceLocation) {\n    let handler = NimbleEnvironment.activeInstance.assertionHandler\n    handler.assert(false, message: FailureMessage(stringValue: message), location: location)\n}\n\n/// Always fails the test with a message.\npublic func fail(message: String, file: FileString = #file, line: UInt = #line) {\n    fail(message, location: SourceLocation(file: file, line: line))\n}\n\n/// Always fails the test.\npublic func fail(file: FileString = #file, line: UInt = #line) {\n    fail(\"fail() always fails\", file: file, line: line)\n}\n\n/// Like Swift's precondition(), but raises NSExceptions instead of sigaborts\ninternal func nimblePrecondition(\n    @autoclosure expr: () -> Bool,\n    @autoclosure _ name: () -> String,\n    @autoclosure _ message: () -> String,\n    file: StaticString = #file,\n    line: UInt = #line) -> Bool {\n        let result = expr()\n        if !result {\n#if _runtime(_ObjC)\n            let e = NSException(\n                name: name(),\n                reason: message(),\n                userInfo: nil)\n            e.raise()\n#else\n            preconditionFailure(\"\\(name()) - \\(message())\", file: file, line: line)\n#endif\n        }\n        return result\n}\n\n@noreturn\ninternal func internalError(msg: String, file: FileString = #file, line: UInt = #line) {\n    fatalError(\n        \"Nimble Bug Found: \\(msg) at \\(file):\\(line).\\n\" +\n        \"Please file a bug to Nimble: https://github.com/Quick/Nimble/issues with the \" +\n        \"code snippet that caused this error.\"\n    )\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Expectation.swift",
    "content": "import Foundation\n\ninternal func expressionMatches<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, to: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = to\n    do {\n        let pass = try matcher.matches(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\ninternal func expressionDoesNotMatch<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, toNot: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = toNot\n    do {\n        let pass = try matcher.doesNotMatch(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\npublic struct Expectation<T> {\n\n    public let expression: Expression<T>\n\n    public func verify(pass: Bool, _ message: FailureMessage) {\n        let handler = NimbleEnvironment.activeInstance.assertionHandler\n        handler.assert(pass, message: message, location: expression.location)\n    }\n\n    /// Tests the actual value using a matcher to match.\n    public func to<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionMatches(expression, matcher: matcher, to: \"to\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    public func toNot<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionDoesNotMatch(expression, matcher: matcher, toNot: \"to not\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    ///\n    /// Alias to toNot().\n    public func notTo<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        toNot(matcher, description: description)\n    }\n\n    // see:\n    // - AsyncMatcherWrapper for extension\n    // - NMBExpectation for Objective-C interface\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Expression.swift",
    "content": "import Foundation\n\n// Memoizes the given closure, only calling the passed\n// closure once; even if repeat calls to the returned closure\ninternal func memoizedClosure<T>(closure: () throws -> T) -> (Bool) throws -> T {\n    var cache: T?\n    return ({ withoutCaching in\n        if (withoutCaching || cache == nil) {\n            cache = try closure()\n        }\n        return cache!\n    })\n}\n\n/// Expression represents the closure of the value inside expect(...).\n/// Expressions are memoized by default. This makes them safe to call\n/// evaluate() multiple times without causing a re-evaluation of the underlying\n/// closure.\n///\n/// @warning Since the closure can be any code, Objective-C code may choose\n///          to raise an exception. Currently, Expression does not memoize\n///          exception raising.\n///\n/// This provides a common consumable API for matchers to utilize to allow\n/// Nimble to change internals to how the captured closure is managed.\npublic struct Expression<T> {\n    internal let _expression: (Bool) throws -> T?\n    internal let _withoutCaching: Bool\n    public let location: SourceLocation\n    public let isClosure: Bool\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process. The expression is memoized.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(expression: () throws -> T?, location: SourceLocation, isClosure: Bool = true) {\n        self._expression = memoizedClosure(expression)\n        self.location = location\n        self._withoutCaching = false\n        self.isClosure = isClosure\n    }\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param withoutCaching Indicates if the struct should memoize the given\n    ///                       closure's result. Subsequent evaluate() calls will\n    ///                       not call the given closure if this is true.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(memoizedExpression: (Bool) throws -> T?, location: SourceLocation, withoutCaching: Bool, isClosure: Bool = true) {\n        self._expression = memoizedExpression\n        self.location = location\n        self._withoutCaching = withoutCaching\n        self.isClosure = isClosure\n    }\n\n    /// Returns a new Expression from the given expression. Identical to a map()\n    /// on this type. This should be used only to typecast the Expression's\n    /// closure value.\n    ///\n    /// The returned expression will preserve location and isClosure.\n    ///\n    /// @param block The block that can cast the current Expression value to a\n    ///              new type.\n    public func cast<U>(block: (T?) throws -> U?) -> Expression<U> {\n        return Expression<U>(expression: ({ try block(self.evaluate()) }), location: self.location, isClosure: self.isClosure)\n    }\n\n    public func evaluate() throws -> T? {\n        return try self._expression(_withoutCaching)\n    }\n\n    public func withoutCaching() -> Expression<T> {\n        return Expression(memoizedExpression: self._expression, location: location, withoutCaching: true, isClosure: isClosure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/FailureMessage.swift",
    "content": "import Foundation\n\n/// Encapsulates the failure message that matchers can report to the end user.\n///\n/// This is shared state between Nimble and matchers that mutate this value.\npublic class FailureMessage: NSObject {\n    public var expected: String = \"expected\"\n    public var actualValue: String? = \"\" // empty string -> use default; nil -> exclude\n    public var to: String = \"to\"\n    public var postfixMessage: String = \"match\"\n    public var postfixActual: String = \"\"\n    /// An optional message that will be appended as a new line and provides additional details\n    /// about the failure. This message will only be visible in the issue navigator / in logs but\n    /// not directly in the source editor since only a single line is presented there.\n    public var extendedMessage: String? = nil\n    public var userDescription: String? = nil\n\n    public var stringValue: String {\n        get {\n            if let value = _stringValueOverride {\n                return value\n            } else {\n                return computeStringValue()\n            }\n        }\n        set {\n            _stringValueOverride = newValue\n        }\n    }\n\n    internal var _stringValueOverride: String?\n\n    public override init() {\n    }\n\n    public init(stringValue: String) {\n        _stringValueOverride = stringValue\n    }\n\n    internal func stripNewlines(str: String) -> String {\n        var lines: [String] = NSString(string: str).componentsSeparatedByString(\"\\n\") as [String]\n        let whitespace = NSCharacterSet.whitespaceAndNewlineCharacterSet()\n        lines = lines.map { line in NSString(string: line).stringByTrimmingCharactersInSet(whitespace) }\n        return lines.joinWithSeparator(\"\")\n    }\n\n    internal func computeStringValue() -> String {\n        var value = \"\\(expected) \\(to) \\(postfixMessage)\"\n        if let actualValue = actualValue {\n            value = \"\\(expected) \\(to) \\(postfixMessage), got \\(actualValue)\\(postfixActual)\"\n        }\n        value = stripNewlines(value)\n\n        if let extendedMessage = extendedMessage {\n            value += \"\\n\\(stripNewlines(extendedMessage))\"\n        }\n\n        if let userDescription = userDescription {\n            return \"\\(userDescription)\\n\\(value)\"\n        }\n        \n        return value\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 Jeff Hui. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/AllPass.swift",
    "content": "import Foundation\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return allPass(\"pass a condition\", passFunc)\n}\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passName: String, _ passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            expression, failureMessage in\n            failureMessage.postfixMessage = passName\n            return passFunc(try expression.evaluate())\n        }\n}\n\npublic func allPass<U,V where U: SequenceType, V: Matcher, U.Generator.Element == V.ValueType>\n    (matcher: V) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            try matcher.matches($0, failureMessage: $1)\n        }\n}\n\nprivate func createAllPassMatcher<T,U where U: SequenceType, U.Generator.Element == T>\n    (elementEvaluator:(Expression<T>, FailureMessage) throws -> Bool) -> NonNilMatcherFunc<U> {\n        return NonNilMatcherFunc { actualExpression, failureMessage in\n            failureMessage.actualValue = nil\n            if let actualValue = try actualExpression.evaluate() {\n                for currentElement in actualValue {\n                    let exp = Expression(\n                        expression: {currentElement}, location: actualExpression.location)\n                    if try !elementEvaluator(exp, failureMessage) {\n                        failureMessage.postfixMessage =\n                            \"all \\(failureMessage.postfixMessage),\"\n                            + \" but failed first at element <\\(stringify(currentElement))>\"\n                            + \" in <\\(stringify(actualValue))>\"\n                        return false\n                    }\n                }\n                failureMessage.postfixMessage = \"all \\(failureMessage.postfixMessage)\"\n            } else {\n                failureMessage.postfixMessage = \"all pass (use beNil() to match nils)\"\n                return false\n            }\n            \n            return true\n        }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func allPassMatcher(matcher: NMBObjCMatcher) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            var nsObjects = [NSObject]()\n            \n            var collectionIsUsable = true\n            if let value = actualValue as? NSFastEnumeration {\n                let generator = NSFastGenerator(value)\n                while let obj:AnyObject = generator.next() {\n                    if let nsObject = obj as? NSObject {\n                        nsObjects.append(nsObject)\n                    } else {\n                        collectionIsUsable = false\n                        break\n                    }\n                }\n            } else {\n                collectionIsUsable = false\n            }\n            \n            if !collectionIsUsable {\n                failureMessage.postfixMessage =\n                  \"allPass only works with NSFastEnumeration (NSArray, NSSet, ...) of NSObjects\"\n                failureMessage.expected = \"\"\n                failureMessage.to = \"\"\n                return false\n            }\n            \n            let expr = Expression(expression: ({ nsObjects }), location: location)\n            let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                expression, failureMessage in\n                return matcher.matches(\n                    {try! expression.evaluate()}, failureMessage: failureMessage, location: expr.location)\n            }\n            return try! createAllPassMatcher(elementEvaluator).matches(\n                expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic struct AsyncDefaults {\n    public static var Timeout: NSTimeInterval = 1\n    public static var PollInterval: NSTimeInterval = 0.01\n}\n\ninternal struct AsyncMatcherWrapper<T, U where U: Matcher, U.ValueType == T>: Matcher {\n    let fullMatcher: U\n    let timeoutInterval: NSTimeInterval\n    let pollInterval: NSTimeInterval\n\n    init(fullMatcher: U, timeoutInterval: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval) {\n      self.fullMatcher = fullMatcher\n      self.timeoutInterval = timeoutInterval\n      self.pollInterval = pollInterval\n    }\n\n    func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let fnName = \"expect(...).toEventually(...)\"\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: fnName) {\n                try self.fullMatcher.matches(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventually(...).\")\n        }\n    }\n\n    func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool  {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: \"expect(...).toEventuallyNot(...)\") {\n                try self.fullMatcher.doesNotMatch(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventuallyNot(...).\")\n        }\n    }\n}\n\nprivate let toEventuallyRequiresClosureError = FailureMessage(stringValue: \"expect(...).toEventually(...) requires an explicit closure (eg - expect { ... }.toEventually(...) )\\nSwift 1.2 @autoclosure behavior has changed in an incompatible way for Nimble to function\")\n\n\nextension Expectation {\n    /// Tests the actual value using a matcher to match by checking continuously\n    /// at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionMatches(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                to: \"to eventually\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventuallyNot<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionDoesNotMatch(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                toNot: \"to eventually not\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// Alias of toEventuallyNot()\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toNotEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        return toEventuallyNot(matcher, timeout: timeout, pollInterval: pollInterval, description: description)\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n// A Nimble matcher that catches attempts to use beAKindOf with non Objective-C types\npublic func beAKindOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAKindOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAnInstanceOf if you want to match against the exact class\npublic func beAKindOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be a kind of \\(classAsString(expectedClass))\"\n        return instance != nil && instance!.isKindOfClass(expectedClass)\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beAKindOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAKindOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift",
    "content": "import Foundation\n\n// A Nimble matcher that catches attempts to use beAnInstanceOf with non Objective-C types\npublic func beAnInstanceOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAnInstanceOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAKindOf if you want to match against subclasses\npublic func beAnInstanceOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be an instance of \\(classAsString(expectedClass))\"\n#if _runtime(_ObjC)\n        return instance != nil && instance!.isMemberOfClass(expectedClass)\n#else\n        return instance != nil && instance!.dynamicType == expectedClass\n#endif\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beAnInstanceOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAnInstanceOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift",
    "content": "#if os(Linux)\nimport Glibc\n#endif\nimport Foundation\n\ninternal let DefaultDelta = 0.0001\n\ninternal func isCloseTo(actualValue: NMBDoubleConvertible?, expectedValue: NMBDoubleConvertible, delta: Double, failureMessage: FailureMessage) -> Bool {\n    failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValue))> (within \\(stringify(delta)))\"\n    failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n    return actualValue != nil && abs(actualValue!.doubleValue - expectedValue.doubleValue) < delta\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: Double, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<Double> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: NMBDoubleConvertible, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<NMBDoubleConvertible> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n#if _runtime(_ObjC)\npublic class NMBObjCBeCloseToMatcher : NSObject, NMBMatcher {\n    var _expected: NSNumber\n    var _delta: CDouble\n    init(expected: NSNumber, within: CDouble) {\n        _expected = expected\n        _delta = within\n    }\n\n    public func matches(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.doesNotMatch(expr, failureMessage: failureMessage)\n    }\n\n    public var within: (CDouble) -> NMBObjCBeCloseToMatcher {\n        return ({ delta in\n            return NMBObjCBeCloseToMatcher(expected: self._expected, within: delta)\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beCloseToMatcher(expected: NSNumber, within: CDouble) -> NMBObjCBeCloseToMatcher {\n        return NMBObjCBeCloseToMatcher(expected: expected, within: within)\n    }\n}\n#endif\n\npublic func beCloseTo(expectedValues: [Double], within delta: Double = DefaultDelta) -> NonNilMatcherFunc <[Double]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValues))> (each within \\(stringify(delta)))\"\n        if let actual = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"<\\(stringify(actual))>\"\n\n            if actual.count != expectedValues.count {\n                return false\n            } else {\n                for (index, actualItem) in actual.enumerate() {\n                    if fabs(actualItem - expectedValues[index]) > delta {\n                        return false\n                    }\n                }\n                return true\n            }\n        }\n        return false\n    }\n}\n\n// MARK: - Operators\n\ninfix operator ≈ {\n    associativity none\n    precedence 130\n}\n\npublic func ≈(lhs: Expectation<[Double]>, rhs: [Double]) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: NMBDoubleConvertible) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\npublic func ==(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\n// make this higher precedence than exponents so the Doubles either end aren't pulled in\n// unexpectantly\ninfix operator ± { precedence 170 }\npublic func ±(lhs: NMBDoubleConvertible, rhs: Double) -> (expected: NMBDoubleConvertible, delta: Double) {\n    return (expected: lhs, delta: rhs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeEmpty.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty<S: SequenceType>() -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualSeq = try actualExpression.evaluate()\n        if actualSeq == nil {\n            return true\n        }\n        var generator = actualSeq!.generate()\n        return generator.next() == nil\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || NSString(string: actualString!).length  == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For NSString instances, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || actualString!.length == 0\n    }\n}\n\n// Without specific overrides, beEmpty() is ambiguous for NSDictionary, NSArray,\n// etc, since they conform to SequenceType as well as NMBCollection.\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSDictionary> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualDictionary = try actualExpression.evaluate()\n\t\treturn actualDictionary == nil || actualDictionary!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSArray> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualArray = try actualExpression.evaluate()\n\t\treturn actualArray == nil || actualArray!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NMBCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actual = try actualExpression.evaluate()\n        return actual == nil || actual!.count == 0\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beEmptyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            failureMessage.postfixMessage = \"be empty\"\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings)\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType)) type\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() > expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedDescending\n        return matches\n    }\n}\n\npublic func ><T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThan(rhs))\n}\n\npublic func >(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beGreaterThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue >= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func >=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\npublic func >=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\npublic func beIdenticalTo(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actual = try actualExpression.evaluate()\n        failureMessage.actualValue = \"\\(identityAsString(actual))\"\n        failureMessage.postfixMessage = \"be identical to \\(identityAsString(expected))\"\n        return actual === expected && actual !== nil\n    }\n}\n\npublic func ===(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.to(beIdenticalTo(rhs))\n}\npublic func !==(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.toNot(beIdenticalTo(rhs))\n}\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\n///\n/// Alias for \"beIdenticalTo\".\npublic func be(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return beIdenticalTo(expected)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beIdenticalToMatcher(expected: NSObject?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let aExpr = actualExpression.cast { $0 as AnyObject? }\n            return try! beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLessThan.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() < expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func <<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThan(rhs))\n}\n\npublic func <(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beLessThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as! NMBComparable? }\n            return try! beLessThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() <= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedDescending\n    }\n}\n\npublic func <=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\npublic func <=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil:false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLogical.swift",
    "content": "import Foundation\n\ninternal func matcherWithFailureMessage<T>(matcher: NonNilMatcherFunc<T>, postprocessor: (FailureMessage) -> Void) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        defer { postprocessor(failureMessage) }\n        return try matcher.matcher(actualExpression, failureMessage)\n    }\n}\n\n// MARK: beTrue() / beFalse()\n\n/// A Nimble matcher that succeeds when the actual value is exactly true.\n/// This matcher will not match against nils.\npublic func beTrue() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(true)) { failureMessage in\n        failureMessage.postfixMessage = \"be true\"\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is exactly false.\n/// This matcher will not match against nils.\npublic func beFalse() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(false)) { failureMessage in\n        failureMessage.postfixMessage = \"be false\"\n    }\n}\n\n// MARK: beTruthy() / beFalsy()\n\n/// A Nimble matcher that succeeds when the actual value is not logically false.\npublic func beTruthy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be truthy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue == true\n            }\n        }\n        return actualValue != nil\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is logically false.\n/// This matcher will match against nils.\npublic func beFalsy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be falsy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue != true\n            }\n        }\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beTruthyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beTruthy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalsyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beFalsy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beTrueMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beTrue().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalseMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beFalse().matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeNil.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is nil.\npublic func beNil<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be nil\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beNilMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            return try! beNil().matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeVoid.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is Void.\npublic func beVoid() -> MatcherFunc<()> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be void\"\n        let actualValue: ()? = try actualExpression.evaluate()\n        return actualValue != nil\n    }\n}\n\npublic func ==(lhs: Expectation<()>, rhs: ()) {\n    lhs.to(beVoid())\n}\n\npublic func !=(lhs: Expectation<()>, rhs: ()) {\n    lhs.toNot(beVoid())\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeginWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's first element\n/// is equal to the expected value.\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's first element\n/// is equal to the expected object.\npublic func beginWith(startingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(startingElement) == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains expected substring\n/// where the expected substring's location is zero.\npublic func beginWith(startingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingSubstring)>\"\n        if let actual = try actualExpression.evaluate() {\n            let range = actual.rangeOfString(startingSubstring)\n            return range != nil && range!.startIndex == actual.startIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! beginWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! beginWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Contain.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual sequence contains the expected value.\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: T...) -> NonNilMatcherFunc<S> {\n    return contain(items)\n}\n\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: [T]) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        if let actual = try actualExpression.evaluate() {\n            return items.all {\n                return actual.contains($0)\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: String...) -> NonNilMatcherFunc<String> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [String]) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all {\n                let range = actual.rangeOfString($0)\n                return range != nil && !range!.isEmpty\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: NSString...) -> NonNilMatcherFunc<NSString> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [NSString]) -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all { actual.rangeOfString($0.description).length != 0 }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection contains the expected object.\npublic func contain(items: AnyObject?...) -> NonNilMatcherFunc<NMBContainer> {\n    return contain(items)\n}\n\npublic func contain(items: [AnyObject?]) -> NonNilMatcherFunc<NMBContainer> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        guard let actual = try actualExpression.evaluate() else { return false }\n        return items.all { item in\n            return item != nil && actual.containsObject(item!)\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func containMatcher(expected: [NSObject]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBContainer {\n                let expr = Expression(expression: ({ value as NMBContainer }), location: location)\n\n                // A straightforward cast on the array causes this to crash, so we have to cast the individual items\n                let expectedOptionals: [AnyObject?] = expected.map({ $0 as AnyObject? })\n                return try! contain(expectedOptionals).matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! contain(expected as! [String]).matches(expr, failureMessage: failureMessage)\n            } else if actualValue != nil {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))> (only works for NSArrays, NSSets, NSHashTables, and NSStrings)\"\n            } else {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))>\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/EndWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's last element\n/// is equal to the expected value.\npublic func endWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(endingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            var lastItem: T?\n            var item: T?\n            repeat {\n                lastItem = item\n                item = actualGenerator.next()\n            } while(item != nil)\n            \n            return lastItem == endingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's last element\n/// is equal to the expected object.\npublic func endWith(endingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(endingElement) == collection!.count - 1\n    }\n}\n\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring\n/// where the expected substring's location is the actual string's length minus the\n/// expected substring's length.\npublic func endWith(endingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingSubstring)>\"\n        if let collection = try actualExpression.evaluate() {\n            let range = collection.rangeOfString(endingSubstring)\n            return range != nil && range!.endIndex == collection.endIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func endWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! endWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! endWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Equal.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue == expectedValue && expectedValue != nil\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return matches\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable, C: Equatable>(expectedValue: [T: C]?) -> NonNilMatcherFunc<[T: C]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection is equal to the expected collection.\n/// Items must implement the Equatable protocol.\npublic func equal<T: Equatable>(expectedValue: [T]?) -> NonNilMatcherFunc<[T]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher allowing comparison of collection with optional type\npublic func equal<T: Equatable>(expectedValue: [T?]) -> NonNilMatcherFunc<[T?]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        if let actualValue = try actualExpression.evaluate() {\n            if expectedValue.count != actualValue.count {\n                return false\n            }\n            \n            for (index, item) in actualValue.enumerate() {\n                let otherItem = expectedValue[index]\n                if item == nil && otherItem == nil {\n                    continue\n                } else if item == nil && otherItem != nil {\n                    return false\n                } else if item != nil && otherItem == nil {\n                    return false\n                } else if item! != otherItem! {\n                    return false\n                }\n            }\n            \n            return true\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n        \n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: stringify)\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T: Comparable>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: {\n        if let set = $0 {\n            return stringify(Array(set).sort { $0 < $1 })\n        } else {\n            return \"nil\"\n        }\n    })\n}\n\nprivate func equal<T>(expectedValue: Set<T>?, stringify: Set<T>? -> String) -> NonNilMatcherFunc<Set<T>> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n\n        if let expectedValue = expectedValue {\n            if let actualValue = try actualExpression.evaluate() {\n                failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n\n                if expectedValue == actualValue {\n                    return true\n                }\n\n                let missing = expectedValue.subtract(actualValue)\n                if missing.count > 0 {\n                    failureMessage.postfixActual += \", missing <\\(stringify(missing))>\"\n                }\n\n                let extra = actualValue.subtract(expectedValue)\n                if extra.count > 0 {\n                    failureMessage.postfixActual += \", extra <\\(stringify(extra))>\"\n                }\n            }\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n\n        return false\n    }\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.toNot(equal(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func equalMatcher(expected: NSObject) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! equal(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/HaveCount.swift",
    "content": "import Foundation\n\n// The `haveCount` matchers do not print the full string representation of the collection value,\n// instead they only print the type name and the expected count. This makes it easier to understand\n// the reason for failed expectations. See: https://github.com/Quick/Nimble/issues/308.\n// The representation of the collection content is provided in a new line as an `extendedMessage`.\n\n/// A Nimble matcher that succeeds when the actual CollectionType's count equals\n/// the expected value\npublic func haveCount<T: CollectionType>(expectedValue: T.Index.Distance) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's count equals\n/// the expected value\npublic func haveCount(expectedValue: Int) -> MatcherFunc<NMBCollection> {\n    return MatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func haveCountMatcher(expected: NSNumber) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection}), location: location)\n                return try! haveCount(expected.integerValue).matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"get type of NSArray, NSSet, NSDictionary, or NSHashTable\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType))\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Match.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n/// A Nimble matcher that succeeds when the actual string satisfies the regular expression\n/// described by the expected string.\npublic func match(expectedValue: String?) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"match <\\(stringify(expectedValue))>\"\n        \n        if let actual = try actualExpression.evaluate() {\n            if let regexp = expectedValue {\n                return actual.rangeOfString(regexp, options: .RegularExpressionSearch) != nil\n            }\n        }\n\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func matchMatcher(expected: NSString) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.cast { $0 as? String }\n            return try! match(expected.description).matches(actual, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatchError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\npublic func matchError<T: ErrorType>(error: T) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, error: error)\n        return errorMatchesNonNilFieldsOrClosure(actualError, error: error)\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error of the specified type\npublic func matchError<T: ErrorType>(errorType: T.Type) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, errorType: errorType)\n        return errorMatchesNonNilFieldsOrClosure(actualError, errorType: errorType)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatcherFunc.swift",
    "content": "/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// @see NonNilMatcherFunc if you prefer to have this matcher fail when nil\n///                        values are recieved in an expectation.\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct MatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try matcher(actualExpression, failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try !matcher(actualExpression, failureMessage)\n    }\n}\n\n/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// Unlike MatcherFunc, this will always fail if an expectation contains nil.\n/// This applies regardless of using to() or toNot().\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct NonNilMatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try !matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    internal func attachNilErrorIfNeeded(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        if try actualExpression.evaluate() == nil {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            return true\n        }\n        return false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift",
    "content": "import Foundation\n\n/// Implement this protocol to implement a custom matcher for Swift\u0013\npublic protocol Matcher {\n    associatedtype ValueType\n    func matches(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n    func doesNotMatch(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n}\n\n#if _runtime(_ObjC)\n/// Objective-C interface to the Swift variant of Matcher.\n@objc public protocol NMBMatcher {\n    func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n    func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n}\n#endif\n\n#if _runtime(_ObjC)\n/// Protocol for types that support contain() matcher.\n@objc public protocol NMBContainer {\n    func containsObject(object: AnyObject!) -> Bool\n}\n\nextension NSHashTable : NMBContainer {} // Corelibs Foundation does not include this class yet\n#else\npublic protocol NMBContainer {\n    func containsObject(object: AnyObject) -> Bool\n}\n#endif\n\nextension NSArray : NMBContainer {}\nextension NSSet : NMBContainer {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support only beEmpty(), haveCount() matchers\n@objc public protocol NMBCollection {\n    var count: Int { get }\n}\n\nextension NSHashTable : NMBCollection {} // Corelibs Foundation does not include these classes yet\nextension NSMapTable : NMBCollection {}\n#else\npublic protocol NMBCollection {\n    var count: Int { get }\n}\n#endif\n\nextension NSSet : NMBCollection {}\nextension NSIndexSet : NMBCollection {}\nextension NSDictionary : NMBCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support beginWith(), endWith(), beEmpty() matchers\n@objc public protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject!) -> Int\n}\n#else\npublic protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject) -> Int\n}\n#endif\n\nextension NSArray : NMBOrderedCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types to support beCloseTo() matcher\n@objc public protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n#else\npublic protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n\nextension Double : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self\n        }\n    }\n}\n\nextension Float : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return CDouble(self)\n        }\n    }\n}\n#endif\n\nextension NSNumber : NMBDoubleConvertible {\n}\n\nprivate let dateFormatter: NSDateFormatter = {\n    let formatter = NSDateFormatter()\n    formatter.dateFormat = \"yyyy-MM-dd HH:mm:ss.SSSS\"\n    formatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n\n    return formatter\n}()\n\n#if _runtime(_ObjC)\nextension NSDate: NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self.timeIntervalSinceReferenceDate\n        }\n    }\n}\n#endif\n\nextension NSDate: TestOutputStringConvertible {\n    public var testDescription: String {\n        return dateFormatter.stringFromDate(self)\n    }\n}\n\n/// Protocol for types to support beLessThan(), beLessThanOrEqualTo(),\n///  beGreaterThan(), beGreaterThanOrEqualTo(), and equal() matchers.\n///\n/// Types that conform to Swift's Comparable protocol will work implicitly too\n#if _runtime(_ObjC)\n@objc public protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#else\n// This should become obsolete once Corelibs Foundation adds Comparable conformance to NSNumber\npublic protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#endif\n\nextension NSNumber : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! NSNumber)\n    }\n}\nextension NSString : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! String)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/PostNotification.swift",
    "content": "import Foundation\n\ninternal class NotificationCollector {\n    private(set) var observedNotifications: [NSNotification]\n    private let notificationCenter: NSNotificationCenter\n    #if _runtime(_ObjC)\n    private var token: AnyObject?\n    #else\n    private var token: NSObjectProtocol?\n    #endif\n\n    required init(notificationCenter: NSNotificationCenter) {\n        self.notificationCenter = notificationCenter\n        self.observedNotifications = []\n    }\n\n    func startObserving() {\n        self.token = self.notificationCenter.addObserverForName(nil, object: nil, queue: nil) {\n            // linux-swift gets confused by .append(n)\n            [weak self] n in self?.observedNotifications += [n]\n        }\n    }\n\n    deinit {\n        #if _runtime(_ObjC)\n            if let token = self.token {\n                self.notificationCenter.removeObserver(token)\n            }\n        #else\n            if let token = self.token as? AnyObject {\n                self.notificationCenter.removeObserver(token)\n            }\n        #endif\n    }\n}\n\nprivate let mainThread = pthread_self()\n\npublic func postNotifications<T where T: Matcher, T.ValueType == [NSNotification]>(\n    notificationsMatcher: T,\n    fromNotificationCenter center: NSNotificationCenter = NSNotificationCenter.defaultCenter())\n    -> MatcherFunc<Any> {\n        let _ = mainThread // Force lazy-loading of this value\n        let collector = NotificationCollector(notificationCenter: center)\n        collector.startObserving()\n        var once: Bool = false\n        return MatcherFunc { actualExpression, failureMessage in\n            let collectorNotificationsExpression = Expression(memoizedExpression: { _ in\n                return collector.observedNotifications\n                }, location: actualExpression.location, withoutCaching: true)\n\n            assert(pthread_equal(mainThread, pthread_self()) != 0, \"Only expecting closure to be evaluated on main thread.\")\n            if !once {\n                once = true\n                try actualExpression.evaluate()\n            }\n\n            let match = try notificationsMatcher.matches(collectorNotificationsExpression, failureMessage: failureMessage)\n            if collector.observedNotifications.isEmpty {\n                failureMessage.actualValue = \"no notifications\"\n            } else {\n                failureMessage.actualValue = \"<\\(stringify(collector.observedNotifications))>\"\n            }\n            return match\n        }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/RaisesException.swift",
    "content": "import Foundation\n\n// This matcher requires the Objective-C, and being built by Xcode rather than the Swift Package Manager \n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\n/// A Nimble matcher that succeeds when the actual expression raises an\n/// exception with the specified name, reason, and/or\u0013 userInfo.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the raised exception. The closure only gets called when an exception\n/// is raised.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func raiseException(\n    named named: String? = nil,\n    reason: String? = nil,\n    userInfo: NSDictionary? = nil,\n    closure: ((NSException) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var exception: NSException?\n            let capture = NMBExceptionCapture(handler: ({ e in\n                exception = e\n            }), finally: nil)\n\n            capture.tryBlock {\n                try! actualExpression.evaluate()\n                return\n            }\n\n            setFailureMessageForException(failureMessage, exception: exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n            return exceptionMatchesNonNilFieldsOrClosure(exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n        }\n}\n\ninternal func setFailureMessageForException(\n    failureMessage: FailureMessage,\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) {\n        failureMessage.postfixMessage = \"raise exception\"\n\n        if let named = named {\n            failureMessage.postfixMessage += \" with name <\\(named)>\"\n        }\n        if let reason = reason {\n            failureMessage.postfixMessage += \" with reason <\\(reason)>\"\n        }\n        if let userInfo = userInfo {\n            failureMessage.postfixMessage += \" with userInfo <\\(userInfo)>\"\n        }\n        if let _ = closure {\n            failureMessage.postfixMessage += \" that satisfies block\"\n        }\n        if named == nil && reason == nil && userInfo == nil && closure == nil {\n            failureMessage.postfixMessage = \"raise any exception\"\n        }\n\n        if let exception = exception {\n            failureMessage.actualValue = \"\\(classAsString(exception.dynamicType)) { name=\\(exception.name), reason='\\(stringify(exception.reason))', userInfo=\\(stringify(exception.userInfo)) }\"\n        } else {\n            failureMessage.actualValue = \"no exception\"\n        }\n}\n\ninternal func exceptionMatchesNonNilFieldsOrClosure(\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) -> Bool {\n        var matches = false\n\n        if let exception = exception {\n            matches = true\n\n            if named != nil && exception.name != named {\n                matches = false\n            }\n            if reason != nil && exception.reason != reason {\n                matches = false\n            }\n            if userInfo != nil && exception.userInfo != userInfo {\n                matches = false\n            }\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(exception)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        }\n        \n        return matches\n}\n\npublic class NMBObjCRaiseExceptionMatcher : NSObject, NMBMatcher {\n    internal var _name: String?\n    internal var _reason: String?\n    internal var _userInfo: NSDictionary?\n    internal var _block: ((NSException) -> Void)?\n\n    internal init(name: String?, reason: String?, userInfo: NSDictionary?, block: ((NSException) -> Void)?) {\n        _name = name\n        _reason = reason\n        _userInfo = userInfo\n        _block = block\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let block: () -> Any? = ({ actualBlock(); return nil })\n        let expr = Expression(expression: block, location: location)\n\n        return try! raiseException(\n            named: _name,\n            reason: _reason,\n            userInfo: _userInfo,\n            closure: _block\n        ).matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        return !matches(actualBlock, failureMessage: failureMessage, location: location)\n    }\n\n    public var named: (name: String) -> NMBObjCRaiseExceptionMatcher {\n        return ({ name in\n            return NMBObjCRaiseExceptionMatcher(\n                name: name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var reason: (reason: String?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ reason in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var userInfo: (userInfo: NSDictionary?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ userInfo in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var satisfyingBlock: (block: ((NSException) -> Void)?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ block in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: block\n            )\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func raiseExceptionMatcher() -> NMBObjCRaiseExceptionMatcher {\n        return NMBObjCRaiseExceptionMatcher(name: nil, reason: nil, userInfo: nil, block: nil)\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value matches with any of the matchers\n/// provided in the variable list of matchers. \npublic func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: U...) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(matchers)\n}\n\ninternal func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: [U]) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc<T> { actualExpression, failureMessage in\n        let postfixMessages = NSMutableArray()\n        var matches = false\n        for matcher in matchers {\n            if try matcher.matches(actualExpression, failureMessage: failureMessage) {\n                matches = true\n            }\n            postfixMessages.addObject(NSString(string: \"{\\(failureMessage.postfixMessage)}\"))\n        }\n\n        failureMessage.postfixMessage = \"match one of: \" + postfixMessages.componentsJoinedByString(\", or \")\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"\\(actualValue)\"\n        }\n\n        return matches\n    }\n}\n\npublic func ||<T>(left: NonNilMatcherFunc<T>, right: NonNilMatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\npublic func ||<T>(left: MatcherFunc<T>, right: MatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func satisfyAnyOfMatcher(matchers: [NMBObjCMatcher]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            if matchers.isEmpty {\n                failureMessage.stringValue = \"satisfyAnyOf must be called with at least one matcher\"\n                return false\n            }\n            \n            var elementEvaluators = [NonNilMatcherFunc<NSObject>]()\n            for matcher in matchers {\n                let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                    expression, failureMessage in\n                    return matcher.matches(\n                        {try! expression.evaluate()}, failureMessage: failureMessage, location: actualExpression.location)\n                }\n                \n                elementEvaluators.append(NonNilMatcherFunc(elementEvaluator))\n            }\n            \n            return try! satisfyAnyOf(elementEvaluators).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/ThrowError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression throws an\n/// error of the specified type or from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the thrown error. The closure only gets called when an error was thrown.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func throwError<T: ErrorType>(\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n\n            setFailureMessageForError(failureMessage, actualError: actualError, error: error, errorType: errorType, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, error: error, errorType: errorType, closure: closure)\n        }\n}\n\n/// A Nimble matcher that succeeds when the actual expression throws any\n/// error or when the passed closures' arbitrary custom matching succeeds.\n///\n/// This duplication to it's generic adequate is required to allow to receive\n/// values of the existential type ErrorType in the closure.\n///\n/// The closure only gets called when an error was thrown.\npublic func throwError(\n    closure closure: ((ErrorType) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n            \n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n            \n            setFailureMessageForError(failureMessage, actualError: actualError, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, closure: closure)\n        }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Nimble.h",
    "content": "#import <Foundation/Foundation.h>\n#import \"NMBExceptionCapture.h\"\n#import \"NMBStringify.h\"\n#import \"DSL.h\"\n\nFOUNDATION_EXPORT double NimbleVersionNumber;\nFOUNDATION_EXPORT const unsigned char NimbleVersionString[];\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Async.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nimport Dispatch\n\nprivate let timeoutLeeway: UInt64 = NSEC_PER_MSEC\nprivate let pollLeeway: UInt64 = NSEC_PER_MSEC\n\n/// Stores debugging information about callers\ninternal struct WaitingInfo: CustomStringConvertible {\n    let name: String\n    let file: FileString\n    let lineNumber: UInt\n\n    var description: String {\n        return \"\\(name) at \\(file):\\(lineNumber)\"\n    }\n}\n\ninternal protocol WaitLock {\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt)\n    func releaseWaitingLock()\n    func isWaitingLocked() -> Bool\n}\n\ninternal class AssertionWaitLock: WaitLock {\n    private var currentWaiter: WaitingInfo? = nil\n    init() { }\n\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt) {\n        let info = WaitingInfo(name: fnName, file: file, lineNumber: line)\n        nimblePrecondition(\n            NSThread.isMainThread(),\n            \"InvalidNimbleAPIUsage\",\n            \"\\(fnName) can only run on the main thread.\"\n        )\n        nimblePrecondition(\n            currentWaiter == nil,\n            \"InvalidNimbleAPIUsage\",\n            \"Nested async expectations are not allowed to avoid creating flaky tests.\\n\\n\" +\n            \"The call to\\n\\t\\(info)\\n\" +\n            \"triggered this exception because\\n\\t\\(currentWaiter!)\\n\" +\n            \"is currently managing the main run loop.\"\n        )\n        currentWaiter = info\n    }\n\n    func isWaitingLocked() -> Bool {\n        return currentWaiter != nil\n    }\n\n    func releaseWaitingLock() {\n        currentWaiter = nil\n    }\n}\n\ninternal enum AwaitResult<T> {\n    /// Incomplete indicates None (aka - this value hasn't been fulfilled yet)\n    case Incomplete\n    /// TimedOut indicates the result reached its defined timeout limit before returning\n    case TimedOut\n    /// BlockedRunLoop indicates the main runloop is too busy processing other blocks to trigger\n    /// the timeout code.\n    ///\n    /// This may also mean the async code waiting upon may have never actually ran within the\n    /// required time because other timers & sources are running on the main run loop.\n    case BlockedRunLoop\n    /// The async block successfully executed and returned a given result\n    case Completed(T)\n    /// When a Swift Error is thrown\n    case ErrorThrown(ErrorType)\n    /// When an Objective-C Exception is raised\n    case RaisedException(NSException)\n\n    func isIncomplete() -> Bool {\n        switch self {\n        case .Incomplete: return true\n        default: return false\n        }\n    }\n\n    func isCompleted() -> Bool {\n        switch self {\n        case .Completed(_): return true\n        default: return false\n        }\n    }\n}\n\n/// Holds the resulting value from an asynchronous expectation.\n/// This class is thread-safe at receiving an \"response\" to this promise.\ninternal class AwaitPromise<T> {\n    private(set) internal var asyncResult: AwaitResult<T> = .Incomplete\n    private var signal: dispatch_semaphore_t\n\n    init() {\n        signal = dispatch_semaphore_create(1)\n    }\n\n    /// Resolves the promise with the given result if it has not been resolved. Repeated calls to\n    /// this method will resolve in a no-op.\n    ///\n    /// @returns a Bool that indicates if the async result was accepted or rejected because another\n    ///          value was recieved first.\n    func resolveResult(result: AwaitResult<T>) -> Bool {\n        if dispatch_semaphore_wait(signal, DISPATCH_TIME_NOW) == 0 {\n            self.asyncResult = result\n            return true\n        } else {\n            return false\n        }\n    }\n}\n\ninternal struct AwaitTrigger {\n    let timeoutSource: dispatch_source_t\n    let actionSource: dispatch_source_t?\n    let start: () throws -> Void\n}\n\n/// Factory for building fully configured AwaitPromises and waiting for their results.\n///\n/// This factory stores all the state for an async expectation so that Await doesn't\n/// doesn't have to manage it.\ninternal class AwaitPromiseBuilder<T> {\n    let awaiter: Awaiter\n    let waitLock: WaitLock\n    let trigger: AwaitTrigger\n    let promise: AwaitPromise<T>\n\n    internal init(\n        awaiter: Awaiter,\n        waitLock: WaitLock,\n        promise: AwaitPromise<T>,\n        trigger: AwaitTrigger) {\n            self.awaiter = awaiter\n            self.waitLock = waitLock\n            self.promise = promise\n            self.trigger = trigger\n    }\n\n    func timeout(timeoutInterval: NSTimeInterval, forcefullyAbortTimeout: NSTimeInterval) -> Self {\n        // = Discussion =\n        //\n        // There's a lot of technical decisions here that is useful to elaborate on. This is\n        // definitely more lower-level than the previous NSRunLoop based implementation.\n        //\n        //\n        // Why Dispatch Source?\n        //\n        //\n        // We're using a dispatch source to have better control of the run loop behavior.\n        // A timer source gives us deferred-timing control without having to rely as much on\n        // a run loop's traditional dispatching machinery (eg - NSTimers, DefaultRunLoopMode, etc.)\n        // which is ripe for getting corrupted by application code.\n        //\n        // And unlike dispatch_async(), we can control how likely our code gets prioritized to\n        // executed (see leeway parameter) + DISPATCH_TIMER_STRICT.\n        //\n        // This timer is assumed to run on the HIGH priority queue to ensure it maintains the\n        // highest priority over normal application / test code when possible.\n        //\n        //\n        // Run Loop Management\n        //\n        // In order to properly interrupt the waiting behavior performed by this factory class,\n        // this timer stops the main run loop to tell the waiter code that the result should be\n        // checked.\n        //\n        // In addition, stopping the run loop is used to halt code executed on the main run loop.\n        dispatch_source_set_timer(\n            trigger.timeoutSource,\n            dispatch_time(DISPATCH_TIME_NOW, Int64(timeoutInterval * Double(NSEC_PER_SEC))),\n            DISPATCH_TIME_FOREVER,\n            timeoutLeeway\n        )\n        dispatch_source_set_event_handler(trigger.timeoutSource) {\n            guard self.promise.asyncResult.isIncomplete() else { return }\n            let timedOutSem = dispatch_semaphore_create(0)\n            let semTimedOutOrBlocked = dispatch_semaphore_create(0)\n            dispatch_semaphore_signal(semTimedOutOrBlocked)\n            let runLoop = CFRunLoopGetMain()\n            CFRunLoopPerformBlock(runLoop, kCFRunLoopDefaultMode) {\n                if dispatch_semaphore_wait(semTimedOutOrBlocked, DISPATCH_TIME_NOW) == 0 {\n                    dispatch_semaphore_signal(timedOutSem)\n                    dispatch_semaphore_signal(semTimedOutOrBlocked)\n                    if self.promise.resolveResult(.TimedOut) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n            // potentially interrupt blocking code on run loop to let timeout code run\n            CFRunLoopStop(runLoop)\n            let now = dispatch_time(DISPATCH_TIME_NOW, Int64(forcefullyAbortTimeout * Double(NSEC_PER_SEC)))\n            let didNotTimeOut = dispatch_semaphore_wait(timedOutSem, now) != 0\n            let timeoutWasNotTriggered = dispatch_semaphore_wait(semTimedOutOrBlocked, 0) == 0\n            if didNotTimeOut && timeoutWasNotTriggered {\n                if self.promise.resolveResult(.BlockedRunLoop) {\n                    CFRunLoopStop(CFRunLoopGetMain())\n                }\n            }\n        }\n        return self\n    }\n\n    /// Blocks for an asynchronous result.\n    ///\n    /// @discussion\n    /// This function must be executed on the main thread and cannot be nested. This is because\n    /// this function (and it's related methods) coordinate through the main run loop. Tampering\n    /// with the run loop can cause undesireable behavior.\n    ///\n    /// This method will return an AwaitResult in the following cases:\n    ///\n    /// - The main run loop is blocked by other operations and the async expectation cannot be\n    ///   be stopped.\n    /// - The async expectation timed out\n    /// - The async expectation succeeded\n    /// - The async expectation raised an unexpected exception (objc)\n    /// - The async expectation raised an unexpected error (swift)\n    ///\n    /// The returned AwaitResult will NEVER be .Incomplete.\n    func wait(fnName: String = #function, file: FileString = #file, line: UInt = #line) -> AwaitResult<T> {\n        waitLock.acquireWaitingLock(\n            fnName,\n            file: file,\n            line: line)\n\n        let capture = NMBExceptionCapture(handler: ({ exception in\n            self.promise.resolveResult(.RaisedException(exception))\n        }), finally: ({\n            self.waitLock.releaseWaitingLock()\n        }))\n        capture.tryBlock {\n            do {\n                try self.trigger.start()\n            } catch let error {\n                self.promise.resolveResult(.ErrorThrown(error))\n            }\n            dispatch_resume(self.trigger.timeoutSource)\n            while self.promise.asyncResult.isIncomplete() {\n                // Stopping the run loop does not work unless we run only 1 mode\n                NSRunLoop.currentRunLoop().runMode(NSDefaultRunLoopMode, beforeDate: NSDate.distantFuture())\n            }\n            dispatch_suspend(self.trigger.timeoutSource)\n            dispatch_source_cancel(self.trigger.timeoutSource)\n            if let asyncSource = self.trigger.actionSource {\n                dispatch_source_cancel(asyncSource)\n            }\n        }\n\n        return promise.asyncResult\n    }\n}\n\ninternal class Awaiter {\n    let waitLock: WaitLock\n    let timeoutQueue: dispatch_queue_t\n    let asyncQueue: dispatch_queue_t\n\n    internal init(\n        waitLock: WaitLock,\n        asyncQueue: dispatch_queue_t,\n        timeoutQueue: dispatch_queue_t) {\n            self.waitLock = waitLock\n            self.asyncQueue = asyncQueue\n            self.timeoutQueue = timeoutQueue\n    }\n\n    private func createTimerSource(queue: dispatch_queue_t) -> dispatch_source_t {\n        return dispatch_source_create(\n            DISPATCH_SOURCE_TYPE_TIMER,\n            0,\n            DISPATCH_TIMER_STRICT,\n            queue\n        )\n    }\n\n    func performBlock<T>(\n        closure: ((T) -> Void) throws -> Void) -> AwaitPromiseBuilder<T> {\n            let promise = AwaitPromise<T>()\n            let timeoutSource = createTimerSource(timeoutQueue)\n            var completionCount = 0\n            let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: nil) {\n                try closure() {\n                    completionCount += 1\n                    nimblePrecondition(\n                        completionCount < 2,\n                        \"InvalidNimbleAPIUsage\",\n                        \"Done closure's was called multiple times. waitUntil(..) expects its \" +\n                        \"completion closure to only be called once.\")\n                    if promise.resolveResult(.Completed($0)) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n\n            return AwaitPromiseBuilder(\n                awaiter: self,\n                waitLock: waitLock,\n                promise: promise,\n                trigger: trigger)\n    }\n\n    func poll<T>(pollInterval: NSTimeInterval, closure: () throws -> T?) -> AwaitPromiseBuilder<T> {\n        let promise = AwaitPromise<T>()\n        let timeoutSource = createTimerSource(timeoutQueue)\n        let asyncSource = createTimerSource(asyncQueue)\n        let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: asyncSource) {\n            let interval = UInt64(pollInterval * Double(NSEC_PER_SEC))\n            dispatch_source_set_timer(asyncSource, DISPATCH_TIME_NOW, interval, pollLeeway)\n            dispatch_source_set_event_handler(asyncSource) {\n                do {\n                    if let result = try closure() {\n                        if promise.resolveResult(.Completed(result)) {\n                            CFRunLoopStop(CFRunLoopGetCurrent())\n                        }\n                    }\n                } catch let error {\n                    if promise.resolveResult(.ErrorThrown(error)) {\n                        CFRunLoopStop(CFRunLoopGetCurrent())\n                    }\n                }\n            }\n            dispatch_resume(asyncSource)\n        }\n\n        return AwaitPromiseBuilder(\n            awaiter: self,\n            waitLock: waitLock,\n            promise: promise,\n            trigger: trigger)\n    }\n}\n\ninternal func pollBlock(\n    pollInterval pollInterval: NSTimeInterval,\n    timeoutInterval: NSTimeInterval,\n    file: FileString,\n    line: UInt,\n    fnName: String = #function,\n    expression: () throws -> Bool) -> AwaitResult<Bool> {\n        let awaiter = NimbleEnvironment.activeInstance.awaiter\n        let result = awaiter.poll(pollInterval) { () throws -> Bool? in\n            do {\n                if try expression() {\n                    return true\n                }\n                return nil\n            } catch let error {\n                throw error\n            }\n        }.timeout(timeoutInterval, forcefullyAbortTimeout: timeoutInterval / 2.0).wait(fnName, file: file, line: line)\n\n        return result\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Errors.swift",
    "content": "import Foundation\n\n// Generic\n\ninternal func setFailureMessageForError<T: ErrorType>(\n    failureMessage: FailureMessage,\n    postfixMessageVerb: String = \"throw\",\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) {\n    failureMessage.postfixMessage = \"\\(postfixMessageVerb) error\"\n\n    if let error = error {\n        if let error = error as? CustomDebugStringConvertible {\n            failureMessage.postfixMessage += \" <\\(error.debugDescription)>\"\n        } else {\n            failureMessage.postfixMessage += \" <\\(error)>\"\n        }\n    } else if errorType != nil || closure != nil {\n        failureMessage.postfixMessage += \" from type <\\(T.self)>\"\n    }\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    }\n    if error == nil && errorType == nil && closure == nil {\n        failureMessage.postfixMessage = \"\\(postfixMessageVerb) any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    return actualError._domain == expectedError._domain\n        && actualError._code   == expectedError._code\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType where T: Equatable>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    if let actualError = actualError as? T {\n        return actualError == expectedError\n    }\n    return false\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure<T: ErrorType>(\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let error = error {\n            if !errorMatchesExpectedError(actualError, expectedError: error) {\n                matches = false\n            }\n        }\n        if let actualError = actualError as? T {\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(actualError as T)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        } else if errorType != nil && closure != nil {\n            // The closure expects another ErrorType as argument, so this\n            // is _supposed_ to fail, so that it becomes more obvious.\n            let assertions = gatherExpectations {\n                expect(actualError is T).to(equal(true))\n            }\n            precondition(assertions.map { $0.message }.count > 0)\n            matches = false\n        }\n    }\n\n    return matches\n}\n\n// Non-generic\n\ninternal func setFailureMessageForError(\n    failureMessage: FailureMessage,\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) {\n    failureMessage.postfixMessage = \"throw error\"\n\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    } else {\n        failureMessage.postfixMessage = \"throw any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure(\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let closure = closure {\n            let assertions = gatherFailingExpectations {\n                closure(actualError)\n            }\n            let messages = assertions.map { $0.message }\n            if messages.count > 0 {\n                matches = false\n            }\n        }\n    }\n\n    return matches\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Functional.swift",
    "content": "import Foundation\n\nextension SequenceType {\n    internal func all(fn: Generator.Element -> Bool) -> Bool {\n        for item in self {\n            if !fn(item) {\n                return false\n            }\n        }\n        return true\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/SourceLocation.swift",
    "content": "import Foundation\n\n// Ideally we would always use `StaticString` as the type for tracking the file name\n// that expectations originate from, for consistency with `assert` etc. from the\n// stdlib, and because recent versions of the XCTest overlay require `StaticString`\n// when calling `XCTFail`. Under the Objective-C runtime (i.e. building on Mac), we\n// have to use `String` instead because StaticString can't be generated from Objective-C\n#if _runtime(_ObjC)\npublic typealias FileString = String\n#else\npublic typealias FileString = StaticString\n#endif\n\npublic final class SourceLocation : NSObject {\n    public let file: FileString\n    public let line: UInt\n\n    override init() {\n        file = \"Unknown File\"\n        line = 0\n    }\n\n    init(file: FileString, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n\n    override public var description: String {\n        return \"\\(file):\\(line)\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Stringers.swift",
    "content": "import Foundation\n\n\ninternal func identityAsString(value: AnyObject?) -> String {\n    if let value = value {\n        return NSString(format: \"<%p>\", unsafeBitCast(value, Int.self)).description\n    } else {\n        return \"nil\"\n    }\n}\n\ninternal func classAsString(cls: AnyClass) -> String {\n#if _runtime(_ObjC)\n    return NSStringFromClass(cls)\n#else\n    return String(cls)\n#endif\n}\n\ninternal func arrayAsString<T>(items: [T], joiner: String = \", \") -> String {\n    return items.reduce(\"\") { accum, item in\n        let prefix = (accum.isEmpty ? \"\" : joiner)\n        return accum + prefix + \"\\(stringify(item))\"\n    }\n}\n\n/// A type with a customized test output text representation.\n///\n/// This textual representation is produced when values will be\n/// printed in test runs, and may be useful when producing\n/// error messages in custom matchers.\n///\n/// - SeeAlso: `CustomDebugStringConvertible`\npublic protocol TestOutputStringConvertible {\n    var testDescription: String { get }\n}\n\nextension Double: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(double: self).testDescription\n    }\n}\n\nextension Float: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(float: self).testDescription\n    }\n}\n\nextension NSNumber: TestOutputStringConvertible {\n    // This is using `NSString(format:)` instead of\n    // `String(format:)` because the latter somehow breaks\n    // the travis CI build on linux.\n    public var testDescription: String {\n        let description = self.description\n        \n        if description.containsString(\".\") {\n            // Travis linux swiftpm build doesn't like casting String to NSString,\n            // which is why this annoying nested initializer thing is here.\n            // Maybe this will change in a future snapshot.\n            let decimalPlaces = NSString(string: NSString(string: description)\n                .componentsSeparatedByString(\".\")[1])\n            \n            if decimalPlaces.length > 4 {\n                return NSString(format: \"%0.4f\", self.doubleValue).description\n            }\n        }\n        return self.description\n    }\n}\n\nextension Array: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = self.map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension AnySequence: TestOutputStringConvertible {\n    public var testDescription: String {\n        let generator = self.generate()\n        var strings = [String]()\n        var value: AnySequence.Generator.Element?\n        \n        repeat {\n            value = generator.next()\n            if let value = value {\n                strings.append(stringify(value))\n            }\n        } while value != nil\n        \n        let list = strings.joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension NSArray: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension NSIndexSet: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension String: TestOutputStringConvertible {\n    public var testDescription: String {\n        return self\n    }\n}\n\nextension NSData: TestOutputStringConvertible {\n    public var testDescription: String {\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11-16)\n            return \"NSData<length=\\(self.length)>\"\n        #else\n            return \"NSData<hash=\\(self.hash),length=\\(self.length)>\"\n        #endif\n    }\n}\n\n///\n/// Returns a string appropriate for displaying in test output\n/// from the provided value.\n///\n/// - parameter value: A value that will show up in a test's output.\n///\n/// - returns: The string that is returned can be\n///     customized per type by conforming a type to the `TestOutputStringConvertible`\n///     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n///     function will return the value's debug description and then its\n///     normal description if available and in that order. Otherwise it\n///     will return the result of constructing a string from the value.\n///\n/// - SeeAlso: `TestOutputStringConvertible`\n@warn_unused_result\npublic func stringify<T>(value: T) -> String {\n    if let value = value as? TestOutputStringConvertible {\n        return value.testDescription\n    }\n    \n    if let value = value as? CustomDebugStringConvertible {\n        return value.debugDescription\n    }\n    \n    return String(value)\n}\n\n/// -SeeAlso: `stringify<T>(value: T)`\n@warn_unused_result\npublic func stringify<T>(value: T?) -> String {\n    if let unboxed = value {\n        return stringify(unboxed)\n    }\n    return \"nil\"\n}\n\n#if _runtime(_ObjC)\n@objc public class NMBStringer: NSObject {\n    @warn_unused_result\n    @objc public class func stringify(obj: AnyObject?) -> String {\n        return Nimble.stringify(obj)\n    }\n}\n#endif\n\n// MARK: Collection Type Stringers\n\n/// Attempts to generate a pretty type string for a given value. If the value is of a Objective-C\n/// collection type, or a subclass thereof, (e.g. `NSArray`, `NSDictionary`, etc.). \n/// This function will return the type name of the root class of the class cluster for better\n/// readability (e.g. `NSArray` instead of `__NSArrayI`).\n///\n/// For values that don't have a type of an Objective-C collection, this function returns the\n/// default type description.\n///\n/// - parameter value: A value that will be used to determine a type name.\n///\n/// - returns: The name of the class cluster root class for Objective-C collection types, or the\n/// the `dynamicType` of the value for values of any other type.\npublic func prettyCollectionType<T>(value: T) -> String {\n    #if _runtime(_ObjC)\n    // Check for types that are not in corelibs-foundation separately\n    if value is NSHashTable {\n        return String(NSHashTable.self)\n    }\n    #endif\n\n    switch value {\n    case is NSArray:\n        return String(NSArray.self)\n    case is NSDictionary:\n        return String(NSDictionary.self)\n    case is NSSet:\n        return String(NSSet.self)\n    case is NSIndexSet:\n        return String(NSIndexSet.self)\n    default:\n        return String(value)\n    }\n}\n\n/// Returns the type name for a given collection type. This overload is used by Swift\n/// collection types.\n///\n/// - parameter collection: A Swift `CollectionType` value.\n///\n/// - returns: A string representing the `dynamicType` of the value.\npublic func prettyCollectionType<T: CollectionType>(collection: T) -> String {\n    return String(collection.dynamicType)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/LinuxMain.swift",
    "content": "import XCTest\n@testable import Nimbletest\n\n// This is the entry point for NimbleTests on Linux\n\nXCTMain([\n    // AsynchronousTests(),\n    SynchronousTest(),\n    UserDescriptionTest(),\n\n    // Matchers\n    AllPassTest(),\n    // BeAKindOfTest(),\n    BeAnInstanceOfTest(),\n    BeCloseToTest(),\n    BeginWithTest(),\n    BeGreaterThanOrEqualToTest(),\n    BeGreaterThanTest(),\n    BeIdenticalToObjectTest(),\n    BeIdenticalToTest(),\n    BeLessThanOrEqualToTest(),\n    BeLessThanTest(),\n    BeTruthyTest(),\n    BeTrueTest(),\n    BeFalsyTest(),\n    BeFalseTest(),\n    BeNilTest(),\n    ContainTest(),\n    EndWithTest(),\n    EqualTest(),\n    HaveCountTest(),\n    // MatchTest(),\n    // RaisesExceptionTest(),\n    ThrowErrorTest(),\n    SatisfyAnyOfTest(),\n    PostNotificationTest(),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/AsynchronousTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\n// These tests require the ObjC runtimes do not currently have the GCD and run loop facilities\n// required for working with Nimble's async matchers\n#if _runtime(_ObjC)\n\nclass AsyncTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToEventuallyPositiveMatches\", testToEventuallyPositiveMatches),\n            (\"testToEventuallyNegativeMatches\", testToEventuallyNegativeMatches),\n            (\"testWaitUntilPositiveMatches\", testWaitUntilPositiveMatches),\n            (\"testToEventuallyWithCustomDefaultTimeout\", testToEventuallyWithCustomDefaultTimeout),\n            (\"testWaitUntilTimesOutIfNotCalled\", testWaitUntilTimesOutIfNotCalled),\n            (\"testWaitUntilTimesOutWhenExceedingItsTime\", testWaitUntilTimesOutWhenExceedingItsTime),\n            (\"testWaitUntilNegativeMatches\", testWaitUntilNegativeMatches),\n            (\"testWaitUntilDetectsStalledMainThreadActivity\", testWaitUntilDetectsStalledMainThreadActivity),\n            (\"testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed\", testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed),\n            (\"testWaitUntilErrorsIfDoneIsCalledMultipleTimes\", testWaitUntilErrorsIfDoneIsCalledMultipleTimes),\n            (\"testWaitUntilMustBeInMainThread\", testWaitUntilMustBeInMainThread),\n            (\"testToEventuallyMustBeInMainThread\", testToEventuallyMustBeInMainThread),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSInternalInconsistencyException, code: 42, userInfo: nil)\n\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testToEventuallyPositiveMatches() {\n        var value = 0\n        deferToMainQueue { value = 1 }\n        expect { value }.toEventually(equal(1))\n\n        deferToMainQueue { value = 0 }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testToEventuallyNegativeMatches() {\n        let value = 0\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got <0>\") {\n            expect { value }.toEventuallyNot(equal(0))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got <0>\") {\n            expect { value }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventuallyNot(equal(0))\n        }\n    }\n\n    func testToEventuallyWithCustomDefaultTimeout() {\n        AsyncDefaults.Timeout = 2\n        defer {\n            AsyncDefaults.Timeout = 1\n        }\n\n        var value = 0\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 1\n        }\n        expect { value }.toEventually(equal(1))\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 0\n        }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testWaitUntilPositiveMatches() {\n        waitUntil { done in\n            done()\n        }\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilTimesOutIfNotCalled() {\n        failsWithErrorMessage(\"Waited more than 1.0 second\") {\n            waitUntil(timeout: 1) { done in return }\n        }\n    }\n\n    func testWaitUntilTimesOutWhenExceedingItsTime() {\n        var waiting = true\n        failsWithErrorMessage(\"Waited more than 0.01 seconds\") {\n            waitUntil(timeout: 0.01) { done in\n                dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n                    NSThread.sleepForTimeInterval(0.1)\n                    done()\n                    waiting = false\n                }\n            }\n        }\n\n        // \"clear\" runloop to ensure this test doesn't poison other tests\n        repeat {\n            NSRunLoop.mainRunLoop().runUntilDate(NSDate().dateByAddingTimeInterval(0.2))\n        } while(waiting)\n    }\n\n    func testWaitUntilNegativeMatches() {\n        failsWithErrorMessage(\"expected to equal <2>, got <1>\") {\n            waitUntil { done in\n                NSThread.sleepForTimeInterval(0.1)\n                expect(1).to(equal(2))\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilDetectsStalledMainThreadActivity() {\n        let msg = \"-waitUntil() timed out but was unable to run the timeout handler because the main thread is unresponsive (0.5 seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n        failsWithErrorMessage(msg) {\n            waitUntil(timeout: 1) { done in\n                NSThread.sleepForTimeInterval(5.0)\n                done()\n            }\n        }\n    }\n\n    func testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed() {\n        // Currently we are unable to catch Objective-C exceptions when built by the Swift Package Manager\n#if !SWIFT_PACKAGE\n        let referenceLine = #line + 9\n        var msg = \"Unexpected exception raised: Nested async expectations are not allowed \"\n        msg += \"to avoid creating flaky tests.\"\n        msg += \"\\n\\n\"\n        msg += \"The call to\\n\\t\"\n        msg += \"expect(...).toEventually(...) at \\(#file):\\(referenceLine + 7)\\n\"\n        msg += \"triggered this exception because\\n\\t\"\n        msg += \"waitUntil(...) at \\(#file):\\(referenceLine + 1)\\n\"\n        msg += \"is currently managing the main run loop.\"\n        failsWithErrorMessage(msg) { // reference line\n            waitUntil(timeout: 2.0) { done in\n                var protected: Int = 0\n                dispatch_async(dispatch_get_main_queue()) {\n                    protected = 1\n                }\n\n                expect(protected).toEventually(equal(1))\n                done()\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilErrorsIfDoneIsCalledMultipleTimes() {\n#if !SWIFT_PACKAGE\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n                expect {\n                    done()\n                }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                waitUntil { done in done() }\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n\n    func testToEventuallyMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                expect(1).toEventually(equal(2))\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n}\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/ObjectWithLazyProperty.swift",
    "content": "import Foundation\n\nclass ObjectWithLazyProperty {\n    init() {}\n    lazy var value: String = \"hello\"\n    lazy var anotherValue: String = { return \"world\" }()\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/utils.swift",
    "content": "import Foundation\n@testable import Nimble\nimport XCTest\n\nfunc failsWithErrorMessage(messages: [String], file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () throws -> Void) {\n    var filePath = file\n    var lineNumber = line\n\n    let recorder = AssertionRecorder()\n    withAssertionHandler(recorder, closure: closure)\n\n    for msg in messages {\n        var lastFailure: AssertionRecord?\n        var foundFailureMessage = false\n\n        for assertion in recorder.assertions {\n            lastFailure = assertion\n            if assertion.message.stringValue == msg {\n                foundFailureMessage = true\n                break\n            }\n        }\n\n        if foundFailureMessage {\n            continue\n        }\n\n        if preferOriginalSourceLocation {\n            if let failure = lastFailure {\n                filePath = failure.location.file\n                lineNumber = failure.location.line\n            }\n        }\n\n        let message: String\n        if let lastFailure = lastFailure {\n            message = \"Got failure message: \\\"\\(lastFailure.message.stringValue)\\\", but expected \\\"\\(msg)\\\"\"\n        } else {\n            message = \"expected failure message, but got none\"\n        }\n        NimbleAssertionHandler.assert(false,\n                                      message: FailureMessage(stringValue: message),\n                                      location: SourceLocation(file: filePath, line: lineNumber))\n    }\n}\n\nfunc failsWithErrorMessage(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    return failsWithErrorMessage(\n        [message],\n        file: file,\n        line: line,\n        preferOriginalSourceLocation: preferOriginalSourceLocation,\n        closure: closure\n    )\n}\n\nfunc failsWithErrorMessageForNil(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    failsWithErrorMessage(\"\\(message) (use beNil() to match nils)\", file: file, line: line, preferOriginalSourceLocation: preferOriginalSourceLocation, closure: closure)\n}\n\n#if _runtime(_ObjC)\n    func deferToMainQueue(action: () -> Void) {\n        dispatch_async(dispatch_get_main_queue()) {\n            NSThread.sleepForTimeInterval(0.01)\n            action()\n        }\n    }\n#endif\n\npublic class NimbleHelper : NSObject {\n    public class func expectFailureMessage(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessages(messages: [NSString], block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(messages.map({ String($0) }), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessageForNil(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessageForNil(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n}\n\nextension NSDate {\n    convenience init(dateTimeString:String) {\n        let dateFormatter = NSDateFormatter()\n        dateFormatter.dateFormat = \"yyyy-MM-dd HH:mm:ss\"\n        dateFormatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n        let date = dateFormatter.dateFromString(dateTimeString)!\n        self.init(timeInterval:0, sinceDate:date)\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/AllPassTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass AllPassTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllPassArray\", testAllPassArray),\n            (\"testAllPassMatcher\", testAllPassMatcher),\n            (\"testAllPassCollectionsWithOptionalsDontWork\", testAllPassCollectionsWithOptionalsDontWork),\n            (\"testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer\", testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer),\n            (\"testAllPassSet\", testAllPassSet),\n            (\"testAllPassWithNilAsExpectedValue\", testAllPassWithNilAsExpectedValue),\n        ]\n    }\n\n    func testAllPassArray() {\n        expect([1,2,3,4]).to(allPass({$0 < 5}))\n        expect([1,2,3,4]).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\n            \"expected to all pass a condition, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass({$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect([1,2,3,4]).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\n            \"expected to all be something, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(\"be something\", {$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect([1,2,3,4]).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassMatcher() {\n        expect([1,2,3,4]).to(allPass(beLessThan(5)))\n        expect([1,2,3,4]).toNot(allPass(beGreaterThan(5)))\n        \n        failsWithErrorMessage(\n            \"expected to all be less than <3>, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(beLessThan(3)))\n        }\n        failsWithErrorMessage(\"expected to not all be less than <5>\") {\n            expect([1,2,3,4]).toNot(allPass(beLessThan(5)))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsDontWork() {\n        failsWithErrorMessage(\"expected to all be nil, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass(beNil()))\n        }\n        failsWithErrorMessage(\"expected to all pass a condition, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass({$0 == nil}))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer() {\n        expect([nil, nil, nil] as [Int?]).to(allPass({$0! == nil}))\n        expect([nil, 1, nil] as [Int?]).toNot(allPass({$0! == nil}))\n        expect([1, 1, 1] as [Int?]).to(allPass({$0! == 1}))\n        expect([1, 1, nil] as [Int?]).toNot(allPass({$0! == 1}))\n        expect([1, 2, 3] as [Int?]).to(allPass({$0! < 4}))\n        expect([1, 2, 3] as [Int?]).toNot(allPass({$0! < 3}))\n        expect([1, 2, nil] as [Int?]).to(allPass({$0! < 3}))\n    }\n\n    func testAllPassSet() {\n        expect(Set([1,2,3,4])).to(allPass({$0 < 5}))\n        expect(Set([1,2,3,4])).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect(Set([1,2,3,4])).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect(Set([1,2,3,4])).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassWithNilAsExpectedValue() {\n        failsWithErrorMessageForNil(\"expected to all pass\") {\n            expect(nil as [Int]?).to(allPass(beLessThan(5)))\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeAKindOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass TestNull : NSNull {}\n\nclass BeAKindOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(TestNull()).to(beAKindOf(NSNull))\n        expect(NSObject()).to(beAKindOf(NSObject))\n        expect(NSNumber(integer:1)).toNot(beAKindOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be a kind of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAKindOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be a kind of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to be a kind of NSString, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be a kind of NSNumber, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAKindOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAKindOf(Int))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAKindOf(String))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAKindOf(TestEnum))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeAnInstanceOfTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeAnInstanceOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(NSNull()).to(beAnInstanceOf(NSNull))\n        expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be an instance of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAnInstanceOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be an instance of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAnInstanceOf(NSString))\n        }\n#if _runtime(_ObjC)\n        let numberTypeName = \"__NSCFNumber\"\n#else\n        let numberTypeName = \"NSNumber\"\n#endif\n        failsWithErrorMessage(\"expected to be an instance of NSString, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).to(beAnInstanceOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be an instance of NSNumber, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAnInstanceOf(Int))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAnInstanceOf(String))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAnInstanceOf(TestEnum))\n        }\n    }\n    \n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeCloseToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeCloseToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeCloseTo\", testBeCloseTo),\n            (\"testBeCloseToWithin\", testBeCloseToWithin),\n            (\"testBeCloseToWithNSNumber\", testBeCloseToWithNSNumber),\n            (\"testBeCloseToWithNSDate\", testBeCloseToWithNSDate),\n            (\"testBeCloseToOperator\", testBeCloseToOperator),\n            (\"testBeCloseToWithinOperator\", testBeCloseToWithinOperator),\n            (\"testPlusMinusOperator\", testPlusMinusOperator),\n            (\"testBeCloseToOperatorWithNSDate\", testBeCloseToOperatorWithNSDate),\n            (\"testBeCloseToWithinOperatorWithNSDate\", testBeCloseToWithinOperatorWithNSDate),\n            (\"testPlusMinusOperatorWithNSDate\", testPlusMinusOperatorWithNSDate),\n            (\"testBeCloseToArray\", testBeCloseToArray),\n        ]\n    }\n\n    func testBeCloseTo() {\n        expect(1.2).to(beCloseTo(1.2001))\n        expect(1.2 as CDouble).to(beCloseTo(1.2001))\n        expect(1.2 as Float).to(beCloseTo(1.2001))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 0.0001), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001))\n        }\n    }\n\n    func testBeCloseToWithin() {\n        expect(1.2).to(beCloseTo(9.300, within: 10))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n\n    func testBeCloseToWithNSNumber() {\n        expect(NSNumber(double:1.2)).to(beCloseTo(9.300, within: 10))\n        expect(NSNumber(double:1.2)).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        expect(1.2).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(NSNumber(double:1.2)).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n    \n    func testBeCloseToWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).to(beCloseTo(NSDate(dateTimeString: \"2015-08-26 11:43:05\"), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <2015-08-26 11:43:00.0050> (within 0.004), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).toNot(beCloseTo(expectedDate, within: 0.004))\n        }\n#endif\n    }\n    \n    func testBeCloseToOperator() {\n        expect(1.2) ≈ 1.2001\n        expect(1.2 as CDouble) ≈ 1.2001\n        \n        failsWithErrorMessage(\"expected to be close to <1.2002> (within 0.0001), got <1.2>\") {\n            expect(1.2) ≈ 1.2002\n        }\n    }\n\n    func testBeCloseToWithinOperator() {\n        expect(1.2) ≈ (9.300, 10)\n        expect(1.2) == (9.300, 10)\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ (1.0, 0.1)\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == (1.0, 0.1)\n        }\n    }\n    \n    func testPlusMinusOperator() {\n        expect(1.2) ≈ 9.300 ± 10\n        expect(1.2) == 9.300 ± 10\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ 1.0 ± 0.1\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == 1.0 ± 0.1\n        }\n    }\n\n    func testBeCloseToOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:00\")\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.0001), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate\n        }\n#endif\n    }\n\n    func testBeCloseToWithinOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (expectedDate, 0.006)\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (expectedDate, 0.006)\n        }\n#endif\n    }\n\n    func testPlusMinusOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate ± 0.006\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == expectedDate ± 0.006\n        }\n#endif\n    }\n\n    func testBeCloseToArray() {\n        expect([0.0, 1.1, 2.2]) ≈ [0.0001, 1.1001, 2.2001]\n        expect([0.0, 1.1, 2.2]).to(beCloseTo([0.1, 1.2, 2.3], within: 0.1))\n        \n        failsWithErrorMessage(\"expected to be close to <[0, 1]> (each within 0.0001), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]) ≈ [0.0, 1.0]\n        }\n        failsWithErrorMessage(\"expected to be close to <[0.2, 1.2]> (each within 0.1), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]).to(beCloseTo([0.2, 1.2], within: 0.1))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeEmptyTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeEmptyTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeEmptyPositive\", testBeEmptyPositive),\n            (\"testBeEmptyNegative\", testBeEmptyNegative),\n        ]\n    }\n\n    func testBeEmptyPositive() {\n        expect([] as [Int]).to(beEmpty())\n        expect([1]).toNot(beEmpty())\n\n        expect([] as [CInt]).to(beEmpty())\n        expect([1] as [CInt]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSDictionary() as? [Int:Int]).to(beEmpty())\n        expect(NSDictionary(object: 1, forKey: 1) as? [Int:Int]).toNot(beEmpty())\n#endif\n\n        expect(Dictionary<Int, Int>()).to(beEmpty())\n        expect([\"hi\": 1]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSArray() as? [Int]).to(beEmpty())\n        expect(NSArray(array: [1]) as? [Int]).toNot(beEmpty())\n#endif\n\n        expect(NSSet()).to(beEmpty())\n        expect(NSSet(array: [NSNumber(integer: 1)])).toNot(beEmpty())\n\n        expect(NSIndexSet()).to(beEmpty())\n        expect(NSIndexSet(index: 1)).toNot(beEmpty())\n\n        expect(NSString()).to(beEmpty())\n        expect(NSString(string: \"hello\")).toNot(beEmpty())\n\n        expect(\"\").to(beEmpty())\n        expect(\"foo\").toNot(beEmpty())\n    }\n\n    func testBeEmptyNegative() {\n        failsWithErrorMessageForNil(\"expected to be empty, got <nil>\") {\n            expect(nil as NSString?).to(beEmpty())\n        }\n        failsWithErrorMessageForNil(\"expected to not be empty, got <nil>\") {\n            expect(nil as [CInt]?).toNot(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSArray()).toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <[1]>\") {\n            expect([1]).to(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <{()}>\") {\n            expect(NSSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <{(1)}>\") {\n            expect(NSSet(object: NSNumber(int: 1))).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSIndexSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <(1)>\") {\n            expect(NSIndexSet(index: 1)).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <>\") {\n            expect(\"\").toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <foo>\") {\n            expect(\"foo\").to(beEmpty())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeGreaterThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThanOrEqualTo\", testGreaterThanOrEqualTo),\n            (\"testGreaterThanOrEqualToOperator\", testGreaterThanOrEqualToOperator),\n        ]\n    }\n\n    func testGreaterThanOrEqualTo() {\n        expect(10).to(beGreaterThanOrEqualTo(10))\n        expect(10).to(beGreaterThanOrEqualTo(2))\n        expect(1).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:1)).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:2)).to(beGreaterThanOrEqualTo(NSNumber(int:2)))\n#if _runtime(_ObjC)\n        expect(1).to(beGreaterThanOrEqualTo(NSNumber(int:0)))\n#endif\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <0>\") {\n            expect(0).to(beGreaterThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be greater than or equal to <1>, got <1>\") {\n            expect(1).toNot(beGreaterThanOrEqualTo(1))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThanOrEqualTo(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than or equal to <1>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThanOrEqualTo(1))\n        }\n    }\n\n    func testGreaterThanOrEqualToOperator() {\n        expect(0) >= 0\n        expect(1) >= 0\n        expect(NSNumber(int:1)) >= 1\n        expect(NSNumber(int:1)) >= NSNumber(int:1)\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <1>\") {\n            expect(1) >= 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeGreaterThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThan\", testGreaterThan),\n            (\"testGreaterThanOperator\", testGreaterThanOperator),\n        ]\n    }\n    \n    func testGreaterThan() {\n        expect(10).to(beGreaterThan(2))\n        expect(1).toNot(beGreaterThan(2))\n#if _runtime(_ObjC)\n        expect(NSNumber(int:3)).to(beGreaterThan(2))\n#endif\n        expect(NSNumber(int:1)).toNot(beGreaterThan(NSNumber(int:2)))\n\n        failsWithErrorMessage(\"expected to be greater than <2>, got <0>\") {\n            expect(0).to(beGreaterThan(2))\n        }\n        failsWithErrorMessage(\"expected to not be greater than <0>, got <1>\") {\n            expect(1).toNot(beGreaterThan(0))\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThan(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than <0>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThan(0))\n        }\n    }\n\n    func testGreaterThanOperator() {\n        expect(1) > 0\n        expect(NSNumber(int:1)) > NSNumber(int:0)\n#if _runtime(_ObjC)\n        expect(NSNumber(int:1)) > 0\n#endif\n        failsWithErrorMessage(\"expected to be greater than <2>, got <1>\") {\n            expect(1) > 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeIdenticalToObjectTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeIdenticalToObjectTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testFailsOnNils\", testFailsOnNils),\n            (\"testOperators\", testOperators),\n        ]\n    }\n\n    private class BeIdenticalToObjectTester {}\n    private let testObjectA = BeIdenticalToObjectTester()\n    private let testObjectB = BeIdenticalToObjectTester()\n\n    func testBeIdenticalToPositive() {\n        expect(self.testObjectA).to(beIdenticalTo(testObjectA))\n    }\n    \n    func testBeIdenticalToNegative() {\n        expect(self.testObjectA).toNot(beIdenticalTo(testObjectB))\n    }\n    \n    func testBeIdenticalToPositiveMessage() {\n        let message = String(NSString(format: \"expected to be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectB, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).to(beIdenticalTo(self.testObjectB))\n        }\n    }\n    \n    func testBeIdenticalToNegativeMessage() {\n        let message = String(NSString(format: \"expected to not be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectA, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n\n    func testFailsOnNils() {\n        let message1 = String(NSString(format: \"expected to be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message1) {\n            expect(nil as BeIdenticalToObjectTester?).to(beIdenticalTo(self.testObjectA))\n        }\n\n        let message2 = String(NSString(format: \"expected to not be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message2) {\n            expect(nil as BeIdenticalToObjectTester?).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n    \n    func testOperators() {\n        expect(self.testObjectA) === testObjectA\n        expect(self.testObjectA) !== testObjectB\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeIdenticalToTest.swift",
    "content": "import Foundation\nimport XCTest\n@testable import Nimble\n\nclass BeIdenticalToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testOperators\", testOperators),\n            (\"testBeAlias\", testBeAlias)\n        ]\n    }\n\n    func testBeIdenticalToPositive() {\n        let value = NSDate()\n        expect(value).to(beIdenticalTo(value))\n    }\n\n    func testBeIdenticalToNegative() {\n        expect(NSNumber(integer:1)).toNot(beIdenticalTo(NSString(string: \"yo\")))\n        expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n    }\n\n    func testBeIdenticalToPositiveMessage() {\n        let num1 = NSNumber(integer:1)\n        let num2 = NSNumber(integer:2)\n        let message = \"expected to be identical to \\(identityAsString(num2)), got \\(identityAsString(num1))\"\n        failsWithErrorMessage(message) {\n            expect(num1).to(beIdenticalTo(num2))\n        }\n    }\n\n    func testBeIdenticalToNegativeMessage() {\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(beIdenticalTo(value2))\n        }\n    }\n\n    func testOperators() {\n        let value = NSDate()\n        expect(value) === value\n        expect(NSNumber(integer:1)) !== NSNumber(integer:2)\n    }\n\n    func testBeAlias() {\n        let value = NSDate()\n        expect(value).to(be(value))\n        expect(NSNumber(integer:1)).toNot(be(NSString(stringLiteral: \"turtles\")))\n        #if _runtime(_ObjC)\n            expect([1]).toNot(be([1]))\n        #else\n            expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n        #endif\n\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(be(value2))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLessThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThanOrEqualTo\", testLessThanOrEqualTo),\n            (\"testLessThanOrEqualToOperator\", testLessThanOrEqualToOperator),\n        ]\n    }\n\n    func testLessThanOrEqualTo() {\n        expect(10).to(beLessThanOrEqualTo(10))\n        expect(2).to(beLessThanOrEqualTo(10))\n        expect(2).toNot(beLessThanOrEqualTo(1))\n\n        expect(NSNumber(int:2)).to(beLessThanOrEqualTo(10))\n        expect(NSNumber(int:2)).toNot(beLessThanOrEqualTo(1))\n#if _runtime(_ObjC)\n        expect(2).to(beLessThanOrEqualTo(NSNumber(int:10)))\n        expect(2).toNot(beLessThanOrEqualTo(NSNumber(int:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than or equal to <0>, got <2>\") {\n            expect(2).to(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be less than or equal to <0>, got <0>\") {\n            expect(0).toNot(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be less than or equal to <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThanOrEqualTo(-2))\n            return\n        }\n    }\n\n    func testLessThanOrEqualToOperator() {\n        expect(0) <= 1\n        expect(1) <= 1\n\n        failsWithErrorMessage(\"expected to be less than or equal to <1>, got <2>\") {\n            expect(2) <= 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLessThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThan\", testLessThan),\n            (\"testLessThanOperator\", testLessThanOperator),\n        ]\n    }\n\n    func testLessThan() {\n        expect(2).to(beLessThan(10))\n        expect(2).toNot(beLessThan(1))\n#if _runtime(_ObjC)\n        expect(NSNumber(integer:2)).to(beLessThan(10))\n        expect(NSNumber(integer:2)).toNot(beLessThan(1))\n\n        expect(2).to(beLessThan(NSNumber(integer:10)))\n        expect(2).toNot(beLessThan(NSNumber(integer:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than <0>, got <2>\") {\n            expect(2).to(beLessThan(0))\n        }\n        failsWithErrorMessage(\"expected to not be less than <1>, got <0>\") {\n            expect(0).toNot(beLessThan(1))\n        }\n\n        failsWithErrorMessageForNil(\"expected to be less than <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThan(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than <-1>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThan(-1))\n        }\n    }\n\n    func testLessThanOperator() {\n        expect(0) < 1\n#if _runtime(_ObjC)\n        expect(NSNumber(int:0)) < 1\n#endif\n        failsWithErrorMessage(\"expected to be less than <1>, got <2>\") {\n            expect(2) < 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLogicalTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum ConvertsToBool : BooleanType, CustomStringConvertible {\n    case TrueLike, FalseLike\n\n    var boolValue : Bool {\n        switch self {\n        case .TrueLike: return true\n        case .FalseLike: return false\n        }\n    }\n\n    var description : String {\n        switch self {\n        case .TrueLike: return \"TrueLike\"\n        case .FalseLike: return \"FalseLike\"\n        }\n    }\n}\n\nclass BeTruthyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNonNilTypes\", testShouldMatchNonNilTypes),\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchNilTypes\", testShouldNotMatchNilTypes),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n            (\"testShouldMatchBoolConvertibleTypesThatConvertToTrue\", testShouldMatchBoolConvertibleTypesThatConvertToTrue),\n            (\"testShouldNotMatchBoolConvertibleTypesThatConvertToFalse\", testShouldNotMatchBoolConvertibleTypesThatConvertToFalse),\n        ]\n    }\n\n    func testShouldMatchNonNilTypes() {\n        expect(true as Bool?).to(beTruthy())\n        expect(1 as Int?).to(beTruthy())\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <true>\") {\n            expect(true).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilTypes() {\n        expect(false as Bool?).toNot(beTruthy())\n        expect(nil as Bool?).toNot(beTruthy())\n        expect(nil as Int?).toNot(beTruthy())\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <false>\") {\n            expect(false).to(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        expect(nil as Bool?).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <nil>\") {\n            expect(nil as Bool?).to(beTruthy())\n        }\n    }\n\n    func testShouldMatchBoolConvertibleTypesThatConvertToTrue() {\n        expect(ConvertsToBool.TrueLike).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <TrueLike>\") {\n            expect(ConvertsToBool.TrueLike).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchBoolConvertibleTypesThatConvertToFalse() {\n        expect(ConvertsToBool.FalseLike).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <FalseLike>\") {\n            expect(ConvertsToBool.FalseLike).to(beTruthy())\n        }\n    }\n}\n\nclass BeTrueTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTrue())\n\n        failsWithErrorMessage(\"expected to not be true, got <true>\") {\n            expect(true).toNot(beTrue())\n        }\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTrue())\n\n        failsWithErrorMessage(\"expected to be true, got <false>\") {\n            expect(false).to(beTrue())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to not be true, got <nil>\") {\n            expect(nil as Bool?).toNot(beTrue())\n        }\n\n        failsWithErrorMessageForNil(\"expected to be true, got <nil>\") {\n            expect(nil as Bool?).to(beTrue())\n        }\n    }\n}\n\nclass BeFalsyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNilTypes\", testShouldMatchNilTypes),\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldNotMatchNonNilTypes\", testShouldNotMatchNonNilTypes),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldMatchNilBools\", testShouldMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchNilTypes() {\n        expect(false as Bool?).to(beFalsy())\n        expect(nil as Bool?).to(beFalsy())\n        expect(nil as Int?).to(beFalsy())\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalsy())\n\n        failsWithErrorMessage(\"expected to be falsy, got <true>\") {\n            expect(true).to(beFalsy())\n        }\n    }\n\n    func testShouldNotMatchNonNilTypes() {\n        expect(true as Bool?).toNot(beFalsy())\n        expect(1 as Int?).toNot(beFalsy())\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <false>\") {\n            expect(false).toNot(beFalsy())\n        }\n    }\n\n    func testShouldMatchNilBools() {\n        expect(nil as Bool?).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalsy())\n        }\n    }\n}\n\nclass BeFalseTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalse())\n\n        failsWithErrorMessage(\"expected to be false, got <true>\") {\n            expect(true).to(beFalse())\n        }\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalse())\n\n        failsWithErrorMessage(\"expected to not be false, got <false>\") {\n            expect(false).toNot(beFalse())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to be false, got <nil>\") {\n            expect(nil as Bool?).to(beFalse())\n        }\n\n        failsWithErrorMessageForNil(\"expected to not be false, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalse())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeNilTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeNilTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeNil\", testBeNil),\n        ]\n    }\n\n    func producesNil() -> Array<Int>? {\n        return nil\n    }\n\n    func testBeNil() {\n        expect(nil as Int?).to(beNil())\n        expect(1 as Int?).toNot(beNil())\n        expect(self.producesNil()).to(beNil())\n\n        failsWithErrorMessage(\"expected to not be nil, got <nil>\") {\n            expect(nil as Int?).toNot(beNil())\n        }\n\n        failsWithErrorMessage(\"expected to be nil, got <1>\") {\n            expect(1 as Int?).to(beNil())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeVoidTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeVoidTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeVoid\", testBeVoid),\n        ]\n    }\n\n    func testBeVoid() {\n        expect(()).to(beVoid())\n        expect(() as ()?).to(beVoid())\n        expect(nil as ()?).toNot(beVoid())\n\n        expect(()) == ()\n        expect(() as ()?) == ()\n        expect(nil as ()?) != ()\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(()).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(() as ()?).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to be void, got <nil>\") {\n            expect(nil as ()?).to(beVoid())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeginWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeginWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testNegativeMatches\", testNegativeMatches),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect([1, 2, 3]).to(beginWith(1))\n        expect([1, 2, 3]).toNot(beginWith(2))\n\n        expect(\"foobar\").to(beginWith(\"foo\"))\n        expect(\"foobar\").toNot(beginWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(beginWith(\"foo\"))\n        expect(NSString(string: \"foobar\").description).toNot(beginWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(beginWith(\"a\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(beginWith(\"b\"))\n#endif\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessageForNil(\"expected to begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).to(beginWith(NSString(string: \"b\")))\n        }\n        failsWithErrorMessageForNil(\"expected to not begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).toNot(beginWith(NSString(string: \"b\")))\n        }\n\n        failsWithErrorMessage(\"expected to begin with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(beginWith(2))\n        }\n        failsWithErrorMessage(\"expected to not begin with <1>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(beginWith(1))\n        }\n        failsWithErrorMessage(\"expected to begin with <atm>, got <batman>\") {\n            expect(\"batman\").to(beginWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not begin with <bat>, got <batman>\") {\n            expect(\"batman\").toNot(beginWith(\"bat\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/ContainTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass ContainTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testContain\", testContain),\n            (\"testContainSubstring\", testContainSubstring),\n            (\"testContainObjCSubstring\", testContainObjCSubstring),\n            (\"testVariadicArguments\", testVariadicArguments),\n            (\"testCollectionArguments\", testCollectionArguments),\n        ]\n    }\n\n    func testContain() {\n        expect([1, 2, 3]).to(contain(1))\n        expect([1, 2, 3] as [CInt]).to(contain(1 as CInt))\n        expect([1, 2, 3] as Array<CInt>).to(contain(1 as CInt))\n        expect([\"foo\", \"bar\", \"baz\"]).to(contain(\"baz\"))\n        expect([1, 2, 3]).toNot(contain(4))\n        expect([\"foo\", \"bar\", \"baz\"]).toNot(contain(\"ba\"))\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\"])).to(contain(NSString(string: \"a\")))\n        expect(NSArray(array: [\"a\"])).toNot(contain(NSString(string:\"b\")))\n        expect(NSArray(object: 1) as NSArray?).to(contain(1))\n#endif\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"b\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to contain <bar>, got <nil>\") {\n            expect(nil as [String]?).to(contain(\"bar\"))\n        }\n        failsWithErrorMessageForNil(\"expected to not contain <b>, got <nil>\") {\n            expect(nil as [String]?).toNot(contain(\"b\"))\n        }\n    }\n\n    func testContainSubstring() {\n        expect(\"foo\").to(contain(\"o\"))\n        expect(\"foo\").to(contain(\"oo\"))\n        expect(\"foo\").toNot(contain(\"z\"))\n        expect(\"foo\").toNot(contain(\"zz\"))\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <foo>\") {\n            expect(\"foo\").to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <oo>, got <foo>\") {\n            expect(\"foo\").toNot(contain(\"oo\"))\n        }\n    }\n\n    func testContainObjCSubstring() {\n        let str = NSString(string: \"foo\")\n        expect(str).to(contain(NSString(string: \"o\")))\n        expect(str).to(contain(NSString(string: \"oo\")))\n        expect(str).toNot(contain(NSString(string: \"z\")))\n        expect(str).toNot(contain(NSString(string: \"zz\")))\n    }\n\n    func testVariadicArguments() {\n        expect([1, 2, 3]).to(contain(1, 2))\n        expect([1, 2, 3]).toNot(contain(1, 4))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"a\", \"bar\"))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"bar\", \"b\"))\n        }\n    }\n\n    func testCollectionArguments() {\n        expect([1, 2, 3]).to(contain([1, 2]))\n        expect([1, 2, 3]).toNot(contain([1, 4]))\n\n        let collection = Array(1...10)\n        let slice = Array(collection[3...5])\n        expect(collection).to(contain(slice))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain([\"a\", \"bar\"]))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain([\"bar\", \"b\"]))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/EndWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EndWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEndWithPositives\", testEndWithPositives),\n            (\"testEndWithNegatives\", testEndWithNegatives),\n        ]\n    }\n\n    func testEndWithPositives() {\n        expect([1, 2, 3]).to(endWith(3))\n        expect([1, 2, 3]).toNot(endWith(2))\n\n        expect(\"foobar\").to(endWith(\"bar\"))\n        expect(\"foobar\").toNot(endWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(endWith(\"bar\"))\n        expect(NSString(string: \"foobar\").description).toNot(endWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(endWith(\"b\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(endWith(\"a\"))\n#endif\n    }\n\n    func testEndWithNegatives() {\n        failsWithErrorMessageForNil(\"expected to end with <2>, got <nil>\") {\n            expect(nil as [Int]?).to(endWith(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not end with <2>, got <nil>\") {\n            expect(nil as [Int]?).toNot(endWith(2))\n        }\n\n        failsWithErrorMessage(\"expected to end with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(endWith(2))\n        }\n        failsWithErrorMessage(\"expected to not end with <3>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(endWith(3))\n        }\n        failsWithErrorMessage(\"expected to end with <atm>, got <batman>\") {\n            expect(\"batman\").to(endWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not end with <man>, got <batman>\") {\n            expect(\"batman\").toNot(endWith(\"man\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/EqualTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EqualTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEquality\", testEquality),\n            (\"testArrayEquality\", testArrayEquality),\n            (\"testSetEquality\", testSetEquality),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n            (\"testDictionaryEquality\", testDictionaryEquality),\n            (\"testDataEquality\", testDataEquality),\n            (\"testNSObjectEquality\", testNSObjectEquality),\n            (\"testOperatorEquality\", testOperatorEquality),\n            (\"testOperatorEqualityWithArrays\", testOperatorEqualityWithArrays),\n            (\"testOperatorEqualityWithDictionaries\", testOperatorEqualityWithDictionaries),\n            (\"testOptionalEquality\", testOptionalEquality),\n            (\"testArrayOfOptionalsEquality\", testArrayOfOptionalsEquality),\n            (\"testDictionariesWithDifferentSequences\", testDictionariesWithDifferentSequences),\n        ]\n    }\n\n    func testEquality() {\n        expect(1 as CInt).to(equal(1 as CInt))\n        expect(1 as CInt).to(equal(1))\n        expect(1).to(equal(1))\n        expect(\"hello\").to(equal(\"hello\"))\n        expect(\"hello\").toNot(equal(\"world\"))\n\n        expect {\n            1\n        }.to(equal(1))\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\").to(equal(\"world\"))\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\").toNot(equal(\"hello\"))\n        }\n    }\n\n    func testArrayEquality() {\n        expect([1, 2, 3]).to(equal([1, 2, 3]))\n        expect([1, 2, 3]).toNot(equal([1, 2]))\n        expect([1, 2, 3]).toNot(equal([1, 2, 4]))\n\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        expect(array1).to(equal(array2))\n        expect(array1).to(equal([1, 2, 3]))\n        expect(array1).toNot(equal([1, 2] as Array<Int>))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [1, 2, 3])).to(equal(NSArray(array: [1, 2, 3])))\n#endif\n\n        failsWithErrorMessage(\"expected to equal <[1, 2]>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(equal([1, 2]))\n        }\n    }\n\n    func testSetEquality() {\n        expect(Set([1, 2])).to(equal(Set([1, 2])))\n        expect(Set<Int>()).to(equal(Set<Int>()))\n        expect(Set<Int>()) == Set<Int>()\n        expect(Set([1, 2])) != Set<Int>()\n\n        failsWithErrorMessageForNil(\"expected to equal <[1, 2]>, got <nil>\") {\n            expect(nil as Set<Int>?).to(equal(Set([1, 2])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3]>, missing <[1]>\") {\n            expect(Set([2, 3])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[1, 2, 3, 4]>, extra <[4]>\") {\n            expect(Set([1, 2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])) == Set([1, 2, 3])\n        }\n\n        failsWithErrorMessage(\"expected to not equal <[1, 2, 3]>, got <[1, 2, 3]>\") {\n            expect(Set([1, 2, 3])) != Set([1, 2, 3])\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as String?).to(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <foo>\") {\n            expect(\"foo\").toNot(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <bar>, got <nil>\") {\n            expect(nil as String?).toNot(equal(\"bar\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int]?).to(equal(nil as [Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1]>, got <nil>\") {\n            expect(nil as [Int]?).toNot(equal([1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1]>\") {\n            expect([1]).toNot(equal(nil as [Int]?))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int: Int]?).to(equal(nil as [Int: Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1: 1]>, got <nil>\") {\n            expect(nil as [Int: Int]?).toNot(equal([1: 1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1: 1]>\") {\n            expect([1: 1]).toNot(equal(nil as [Int: Int]?))\n        }\n    }\n\n    func testDictionaryEquality() {\n        expect([\"foo\": \"bar\"]).to(equal([\"foo\": \"bar\"]))\n        expect([\"foo\": \"bar\"]).toNot(equal([\"foo\": \"baz\"]))\n\n        let actual = [\"foo\": \"bar\"]\n        let expected = [\"foo\": \"bar\"]\n        let unexpected = [\"foo\": \"baz\"]\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n#if _runtime(_ObjC)\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal([\"foo\": \"bar\"]))\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal(expected))\n#endif\n    }\n\n    func testDataEquality() {\n        let actual = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let expected = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let unexpected = \"foobarfoo\".dataUsingEncoding(NSUTF8StringEncoding)\n\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11)\n            let expectedErrorMessage = \"expected to equal <NSData<length=9>>, got <NSData<length=6>>\"\n        #else\n            let expectedErrorMessage = \"expected to equal <NSData<hash=92856895,length=9>>,\"\n                + \" got <NSData<hash=114710658,length=6>>\"\n        #endif\n\n        failsWithErrorMessage(expectedErrorMessage) {\n            expect(actual).to(equal(unexpected))\n        }\n    }\n\n    func testNSObjectEquality() {\n        expect(NSNumber(integer:1)).to(equal(NSNumber(integer:1)))\n        expect(NSNumber(integer:1)) == NSNumber(integer:1)\n        expect(NSNumber(integer:1)) != NSNumber(integer:2)\n        expect { NSNumber(integer:1) }.to(equal(1))\n    }\n\n    func testOperatorEquality() {\n        expect(\"foo\") == \"foo\"\n        expect(\"foo\") != \"bar\"\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\") == \"world\"\n            return\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\") != \"hello\"\n            return\n        }\n    }\n\n    func testOperatorEqualityWithArrays() {\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        let array3: Array<Int> = [1, 2]\n        expect(array1) == array2\n        expect(array1) != array3\n    }\n\n    func testOperatorEqualityWithDictionaries() {\n        let dict1 = [\"foo\": \"bar\"]\n        let dict2 = [\"foo\": \"bar\"]\n        let dict3 = [\"foo\": \"baz\"]\n        expect(dict1) == dict2\n        expect(dict1) != dict3\n    }\n\n    func testOptionalEquality() {\n        expect(1 as CInt?).to(equal(1))\n        expect(1 as CInt?).to(equal(1 as CInt?))\n\n        expect(1).toNot(equal(nil))\n    }\n    \n    func testArrayOfOptionalsEquality() {\n        let array1: Array<Int?> = [1, nil, 3]\n        let array2: Array<Int?> = [nil, 2, 3]\n        let array3: Array<Int?> = [1, nil, 3]\n        \n        expect(array1).toNot(equal(array2))\n        expect(array1).to(equal(array3))\n        expect(array2).toNot(equal(array3))\n        \n        let allNils1: Array<String?> = [nil, nil, nil, nil]\n        let allNils2: Array<String?> = [nil, nil, nil, nil]\n        let notReallyAllNils: Array<String?> = [nil, nil, nil, \"turtles\"]\n        \n        expect(allNils1).to(equal(allNils2))\n        expect(allNils1).toNot(equal(notReallyAllNils))\n        \n        let noNils1: Array<Int?> = [1, 2, 3, 4, 5]\n        let noNils2: Array<Int?> = [1, 3, 5, 7, 9]\n        \n        expect(noNils1).toNot(equal(noNils2))\n        \n        failsWithErrorMessage(\"expected to equal <[Optional(1), nil]>, got <[nil, Optional(2)]>\") {\n            let arrayOfOptionalInts: Array<Int?> = [nil, 2]\n            let anotherArrayOfOptionalInts: Array<Int?> = [1, nil]\n            expect(arrayOfOptionalInts).to(equal(anotherArrayOfOptionalInts))\n            return\n        }\n    }\n\n    func testDictionariesWithDifferentSequences() {\n        // see: https://github.com/Quick/Nimble/issues/61\n        // these dictionaries generate different orderings of sequences.\n        let result = [\"how\":1, \"think\":1, \"didnt\":2, \"because\":1,\n            \"interesting\":1, \"always\":1, \"right\":1, \"such\":1,\n            \"to\":3, \"say\":1, \"cool\":1, \"you\":1,\n            \"weather\":3, \"be\":1, \"went\":1, \"was\":2,\n            \"sometimes\":1, \"and\":3, \"mind\":1, \"rain\":1,\n            \"whole\":1, \"everything\":1, \"weather.\":1, \"down\":1,\n            \"kind\":1, \"mood.\":1, \"it\":2, \"everyday\":1, \"might\":1,\n            \"more\":1, \"have\":2, \"person\":1, \"could\":1, \"tenth\":2,\n            \"night\":1, \"write\":1, \"Youd\":1, \"affects\":1, \"of\":3,\n            \"Who\":1, \"us\":1, \"an\":1, \"I\":4, \"my\":1, \"much\":2,\n            \"wrong.\":1, \"peacefully.\":1, \"amazing\":3, \"would\":4,\n            \"just\":1, \"grade.\":1, \"Its\":2, \"The\":2, \"had\":1, \"that\":1,\n            \"the\":5, \"best\":1, \"but\":1, \"essay\":1, \"for\":1, \"summer\":2,\n            \"your\":1, \"grade\":1, \"vary\":1, \"pretty\":1, \"at\":1, \"rain.\":1,\n            \"about\":1, \"allow\":1, \"thought\":1, \"in\":1, \"sleep\":1, \"a\":1,\n            \"hot\":1, \"really\":1, \"beach\":1, \"life.\":1, \"we\":1, \"although\":1]\n\n        let storyCount = [\"The\":2, \"summer\":2, \"of\":3, \"tenth\":2, \"grade\":1,\n            \"was\":2, \"the\":5, \"best\":1, \"my\":1, \"life.\":1, \"I\":4,\n            \"went\":1, \"to\":3, \"beach\":1, \"everyday\":1, \"and\":3,\n            \"we\":1, \"had\":1, \"amazing\":3, \"weather.\":1, \"weather\":3,\n            \"didnt\":2, \"really\":1, \"vary\":1, \"much\":2, \"always\":1,\n            \"pretty\":1, \"hot\":1, \"although\":1, \"sometimes\":1, \"at\":1,\n            \"night\":1, \"it\":2, \"would\":4, \"rain.\":1, \"mind\":1, \"rain\":1,\n            \"because\":1, \"cool\":1, \"everything\":1, \"down\":1, \"allow\":1,\n            \"us\":1, \"sleep\":1, \"peacefully.\":1, \"Its\":2, \"how\":1,\n            \"affects\":1, \"your\":1, \"mood.\":1, \"Who\":1, \"have\":2,\n            \"thought\":1, \"that\":1, \"could\":1, \"write\":1, \"a\":1,\n            \"whole\":1, \"essay\":1, \"just\":1, \"about\":1, \"in\":1,\n            \"grade.\":1, \"kind\":1, \"right\":1, \"Youd\":1, \"think\":1,\n            \"for\":1, \"such\":1, \"an\":1, \"interesting\":1, \"person\":1,\n            \"might\":1, \"more\":1, \"say\":1, \"but\":1, \"you\":1, \"be\":1, \"wrong.\":1]\n\n        expect(result).to(equal(storyCount))\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/HaveCountTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass HaveCountTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testHaveCountForArray\", testHaveCountForArray),\n            (\"testHaveCountForDictionary\", testHaveCountForDictionary),\n            (\"testHaveCountForSet\", testHaveCountForSet),\n        ]\n    }\n\n    func testHaveCountForArray() {\n        expect([1, 2, 3]).to(haveCount(3))\n        expect([1, 2, 3]).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Array<Int> with count 1, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Array<Int> with count 3, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForDictionary() {\n        let dictionary = [\"1\":1, \"2\":2, \"3\":3]\n        expect(dictionary).to(haveCount(3))\n        expect(dictionary).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Dictionary<String, Int> with count 1, got 3\\nActual Value: \\(stringify(dictionary))\") {\n            expect(dictionary).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Dictionary<String, Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(dictionary))\") {\n                expect(dictionary).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForSet() {\n        let set = Set([1, 2, 3])\n        expect(set).to(haveCount(3))\n        expect(set).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Set<Int> with count 1, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Set<Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).notTo(haveCount(3))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/MatchErrorTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass MatchErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchErrorPositive\", testMatchErrorPositive),\n            (\"testMatchErrorNegative\", testMatchErrorNegative),\n            (\"testMatchNSErrorPositive\", testMatchNSErrorPositive),\n            (\"testMatchNSErrorNegative\", testMatchNSErrorNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n        ]\n    }\n\n    func testMatchErrorPositive() {\n        expect(Error.Laugh).to(matchError(Error.Laugh))\n        expect(Error.Laugh).to(matchError(Error.self))\n        expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 1)))\n\n        expect(Error.Laugh as ErrorType).to(matchError(Error.Laugh))\n    }\n\n    func testMatchErrorNegative() {\n        expect(Error.Laugh).toNot(matchError(Error.Cry))\n        expect(Error.Laugh as ErrorType).toNot(matchError(Error.Cry))\n    }\n\n    func testMatchNSErrorPositive() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 0, userInfo: nil)\n\n        expect(error1).to(matchError(error2))\n    }\n\n    func testMatchNSErrorNegative() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n\n        expect(error1).toNot(matchError(error2))\n    }\n\n    func testMatchPositiveMessage() {\n        failsWithErrorMessage(\"expected to match error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 2)))\n        }\n        failsWithErrorMessage(\"expected to match error <Cry>, got <Laugh>\") {\n            expect(Error.Laugh).to(matchError(Error.Cry))\n        }\n        failsWithErrorMessage(\"expected to match error <code=1>, got <code=0>\") {\n            expect(CustomDebugStringConvertibleError.A).to(matchError(CustomDebugStringConvertibleError.B))\n        }\n\n        failsWithErrorMessage(\"expected to match error <Error Domain=err Code=1 \\\"(null)\\\">, got <Error Domain=err Code=0 \\\"(null)\\\">\") {\n            let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n            let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n            expect(error1).to(matchError(error2))\n        }\n    }\n\n    func testMatchNegativeMessage() {\n        failsWithErrorMessage(\"expected to not match error <Laugh>, got <Laugh>\") {\n            expect(Error.Laugh).toNot(matchError(Error.Laugh))\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).to(matchError(Error.Laugh))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).toNot(matchError(Error.Laugh))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/MatchTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass MatchTest:XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchPositive\", testMatchPositive),\n            (\"testMatchNegative\", testMatchNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testMatchNils\", testMatchNils),\n        ]\n    }\n\n    func testMatchPositive() {\n        expect(\"11:14\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchNegative() {\n        expect(\"hello\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchPositiveMessage() {\n        let message = \"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\"\n        failsWithErrorMessage(message) {\n            expect(\"hello\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n    \n    func testMatchNegativeMessage() {\n        let message = \"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:14>\"\n        failsWithErrorMessage(message) {\n            expect(\"11:14\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n\n    func testMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/PostNotificationTest.swift",
    "content": "import XCTest\nimport Nimble\nimport Foundation\n\nclass PostNotificationTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPassesWhenNoNotificationsArePosted\", testPassesWhenNoNotificationsArePosted),\n            (\"testPassesWhenExpectedNotificationIsPosted\", testPassesWhenExpectedNotificationIsPosted),\n            (\"testPassesWhenAllExpectedNotificationsArePosted\", testPassesWhenAllExpectedNotificationsArePosted),\n            (\"testFailsWhenNoNotificationsArePosted\", testFailsWhenNoNotificationsArePosted),\n            (\"testFailsWhenNotificationWithWrongNameIsPosted\", testFailsWhenNotificationWithWrongNameIsPosted),\n            (\"testFailsWhenNotificationWithWrongObjectIsPosted\", testFailsWhenNotificationWithWrongObjectIsPosted),\n            (\"testPassesWhenExpectedNotificationEventuallyIsPosted\", testPassesWhenExpectedNotificationEventuallyIsPosted),\n        ]\n    }\n\n    var notificationCenter: NSNotificationCenter!\n\n    #if _runtime(_ObjC)\n    override func setUp() {\n        _setUp()\n        super.setUp()\n    }\n    #else\n    func setUp() {\n        _setUp()\n    }\n    #endif\n\n\n    func _setUp() {\n        notificationCenter = NSNotificationCenter()\n    }\n\n    func testPassesWhenNoNotificationsArePosted() {\n        expect {\n            // no notifications here!\n            return nil\n        }.to(postNotifications(beEmpty(), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenExpectedNotificationIsPosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        expect {\n            self.notificationCenter.postNotification(testNotification)\n        }.to(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenAllExpectedNotificationsArePosted() {\n        let foo = NSNumber(int: 1)\n        let bar = NSNumber(int: 2)\n        let n1 = NSNotification(name: \"Foo\", object: foo)\n        let n2 = NSNotification(name: \"Bar\", object: bar)\n        expect {\n            self.notificationCenter.postNotification(n1)\n            self.notificationCenter.postNotification(n2)\n            return nil\n        }.to(postNotifications(equal([n1, n2]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testFailsWhenNoNotificationsArePosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(testNotification)]>, got no notifications\") {\n            expect {\n                // no notifications here!\n                return nil\n            }.to(postNotifications(equal([testNotification]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongNameIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name + \"a\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongObjectIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name, object: NSObject())\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testPassesWhenExpectedNotificationEventuallyIsPosted() {\n        #if _runtime(_ObjC)\n            let testNotification = NSNotification(name: \"Foo\", object: nil)\n            expect {\n                deferToMainQueue {\n                    self.notificationCenter.postNotification(testNotification)\n                }\n                return nil\n            }.toEventually(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n        #else\n            print(\"\\(#function) is missing because toEventually is not implement on this platform\")\n        #endif\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/RaisesExceptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\nclass RaisesExceptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutException\", testNegativeMatchesDoNotCallClosureWithoutException),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    var anException = NSException(name: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"])\n\n    func testPositiveMatches() {\n        expect { self.anException.raise() }.to(raiseException())\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n            expect(exception.name).to(equal(\"laugh\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"df\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessage(\"expected to raise exception with name <foo>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"foo\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <bar>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"bar\"))\n        }\n\n        failsWithErrorMessage(\n            \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{k = v;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"k\": \"v\"]))\n        }\n\n        failsWithErrorMessage(\"expected to raise any exception, got no exception\") {\n            expect { self.anException }.to(raiseException())\n        }\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <Lulz>, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <bar> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"bar\", reason: \"Lulz\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutException() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to raise exception with name <foo> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <ha> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"ha\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <Lulz> with userInfo <{}> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n                })\n        }\n\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        let innerFailureMessage = \"expected to begin with <fo>, got <laugh>\"\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <wrong> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"wrong\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <Lulz> with userInfo <{}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/SatisfyAnyOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass SatisfyAnyOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testSatisfyAnyOf\", testSatisfyAnyOf),\n            (\"testOperatorOr\", testOperatorOr),\n        ]\n    }\n\n    func testSatisfyAnyOf() {\n        expect(2).to(satisfyAnyOf(equal(2), equal(3)))\n#if _runtime(_ObjC)\n        expect(2).toNot(satisfyAnyOf(equal(3), equal(\"turtles\")))\n#endif\n        expect([1,2,3]).to(satisfyAnyOf(equal([1,2,3]), allPass({$0 < 4}), haveCount(3)))\n        expect(\"turtle\").toNot(satisfyAnyOf(contain(\"a\"), endWith(\"magic\")))\n        expect(82.0).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        expect(false).to(satisfyAnyOf(beTrue(), beFalse()))\n        expect(true).to(satisfyAnyOf(beTruthy(), beFalsy()))\n        \n        failsWithErrorMessage(\n            \"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\") {\n                expect(2).to(satisfyAnyOf(equal(3), equal(4), equal(5)))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {all be less than 4, but failed first at element <5> in <[5, 6, 7]>}, or {equal <[1, 2, 3, 4]>}, got [5, 6, 7]\") {\n                expect([5,6,7]).to(satisfyAnyOf(allPass(\"be less than 4\", {$0 < 4}), equal([1,2,3,4])))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {be true}, got false\") {\n                expect(false).to(satisfyAnyOf(beTrue()))\n        }\n        failsWithErrorMessage(\n            \"expected to not match one of: {be less than <10.5>}, or {be greater than <100.75>}, or {be close to <50.1> (within 0.0001)}, got 50.10001\") {\n                expect(50.10001).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        }\n    }\n    \n    func testOperatorOr() {\n        expect(2).to(equal(2) || equal(3))\n#if _runtime(_ObjC)\n        expect(2).toNot(equal(3) || equal(\"turtles\"))\n#endif\n        expect(\"turtle\").toNot(contain(\"a\") || endWith(\"magic\"))\n        expect(82.0).toNot(beLessThan(10.5) || beGreaterThan(100.75))\n        expect(false).to(beTrue() || beFalse())\n        expect(true).to(beTruthy() || beFalsy())\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/ThrowErrorTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum Error : ErrorType {\n    case Laugh\n    case Cry\n}\n\nenum EquatableError : ErrorType {\n    case Parameterized(x: Int)\n}\n\nextension EquatableError : Equatable {\n}\n\nfunc ==(lhs: EquatableError, rhs: EquatableError) -> Bool {\n    switch (lhs, rhs) {\n    case (.Parameterized(let l), .Parameterized(let r)):\n        return l == r\n    }\n}\n\nenum CustomDebugStringConvertibleError : ErrorType {\n    case A\n    case B\n}\n\nextension CustomDebugStringConvertibleError : CustomDebugStringConvertible {\n    var debugDescription : String {\n        return \"code=\\(_code)\"\n    }\n}\n\nclass ThrowErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testPositiveNegatedMatches\", testPositiveNegatedMatches),\n            (\"testNegativeNegatedMatches\", testNegativeNegatedMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutError\", testNegativeMatchesDoNotCallClosureWithoutError),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect { throw Error.Laugh }.to(throwError())\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh))\n        expect { throw Error.Laugh }.to(throwError(errorType: Error.self))\n        expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 1)))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        // Generic typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { error in\n            guard case EquatableError.Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Explicit typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { (error: EquatableError) in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over errorType argument\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError(errorType: EquatableError.self) { error in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).to(beginWith(\"Nim\"))\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Different case\n        failsWithErrorMessage(\"expected to throw error <Cry>, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry))\n        }\n        // Different case with closure\n        failsWithErrorMessage(\"expected to throw error <Cry> that satisfies block, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry) { _ in return })\n        }\n        // Different case, implementing CustomDebugStringConvertible\n        failsWithErrorMessage(\"expected to throw error <code=1>, got <code=0>\") {\n            expect { throw CustomDebugStringConvertibleError.A }.to(throwError(CustomDebugStringConvertibleError.B))\n        }\n    }\n\n    func testPositiveNegatedMatches() {\n        // No error at all\n        expect { return }.toNot(throwError())\n        // Different case\n        expect { throw Error.Laugh }.toNot(throwError(Error.Cry))\n    }\n\n    func testNegativeNegatedMatches() {\n        // No error at all\n        failsWithErrorMessage(\"expected to not throw any error, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError())\n        }\n        // Different error\n        failsWithErrorMessage(\"expected to not throw error <Laugh>, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError(Error.Laugh))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutError() {\n        failsWithErrorMessage(\"expected to throw error that satisfies block, got no error\") {\n            expect { return }.to(throwError { error in\n                fail()\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to throw error <Laugh> that satisfies block, got no error\") {\n            expect { return }.to(throwError(Error.Laugh) { error in\n                fail()\n            })\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n#if SWIFT_PACKAGE\n        let moduleName = \"Nimbletest\"\n#else\n        let moduleName = \"NimbleTests\"\n#endif\n        let innerFailureMessage = \"expected to equal <foo>, got <\\(moduleName).Error>\"\n        let closure = { (error: Error) in\n            print(\"** In closure! With domain \\(error._domain)\")\n            expect(error._domain).to(equal(\"foo\"))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error from type <Error> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(closure: closure))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error <Laugh> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(Error.Laugh, closure: closure))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/SynchronousTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass SynchronousTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testFailAlwaysFails\", testFailAlwaysFails),\n            (\"testUnexpectedErrorsThrownFails\", testUnexpectedErrorsThrownFails),\n            (\"testToMatchesIfMatcherReturnsTrue\", testToMatchesIfMatcherReturnsTrue),\n            (\"testToProvidesActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToMatchAgainstLazyProperties\", testToMatchAgainstLazyProperties),\n            (\"testToNotMatchesIfMatcherReturnsTrue\", testToNotMatchesIfMatcherReturnsTrue),\n            (\"testToNotProvidesActualValueExpression\", testToNotProvidesActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpression\", testToNotProvidesAMemoizedActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToNotNegativeMatches\", testToNotNegativeMatches),\n            (\"testNotToMatchesLikeToNot\", testNotToMatchesLikeToNot),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSCocoaErrorDomain, code: 42, userInfo: nil)\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testFailAlwaysFails() {\n        failsWithErrorMessage(\"My error message\") {\n            fail(\"My error message\")\n        }\n        failsWithErrorMessage(\"fail() always fails\") {\n            fail()\n        }\n    }\n\n    func testUnexpectedErrorsThrownFails() {\n#if _runtime(_ObjC) // This test triggers a weird segfault on Linux currently\n        failsWithErrorMessage(\"expected to equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.to(equal(1))\n        }\n        failsWithErrorMessage(\"expected to not equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toNot(equal(1))\n        }\n#endif\n    }\n\n    func testToMatchesIfMatcherReturnsTrue() {\n        expect(1).to(MatcherFunc { expr, failure in true })\n        expect{1}.to(MatcherFunc { expr, failure in true })\n    }\n\n    func testToProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).to(MatcherFunc { expr, failure in value = try expr.evaluate(); return true })\n        expect(value).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToMatchAgainstLazyProperties() {\n        expect(ObjectWithLazyProperty().value).to(equal(\"hello\"))\n        expect(ObjectWithLazyProperty().value).toNot(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).to(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).toNot(equal(\"hello\"))\n    }\n\n    // repeated tests from to() for toNot()\n    func testToNotMatchesIfMatcherReturnsTrue() {\n        expect(1).toNot(MatcherFunc { expr, failure in false })\n        expect{1}.toNot(MatcherFunc { expr, failure in false })\n    }\n\n    func testToNotProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).toNot(MatcherFunc { expr, failure in value = try expr.evaluate(); return false })\n        expect(value).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotNegativeMatches() {\n        failsWithErrorMessage(\"expected to not match, got <1>\") {\n            expect(1).toNot(MatcherFunc { expr, failure in true })\n        }\n    }\n\n\n    func testNotToMatchesLikeToNot() {\n        expect(1).notTo(MatcherFunc { expr, failure in false })\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/UserDescriptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass UserDescriptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToMatcher_CustomFailureMessage\", testToMatcher_CustomFailureMessage),\n            (\"testNotToMatcher_CustomFailureMessage\", testNotToMatcher_CustomFailureMessage),\n            (\"testToNotMatcher_CustomFailureMessage\", testToNotMatcher_CustomFailureMessage),\n            (\"testToEventuallyMatch_CustomFailureMessage\", testToEventuallyMatch_CustomFailureMessage),\n            (\"testToEventuallyNotMatch_CustomFailureMessage\", testToEventuallyNotMatch_CustomFailureMessage),\n            (\"testToNotEventuallyMatch_CustomFailureMessage\", testToNotEventuallyMatch_CustomFailureMessage),\n        ]\n    }\n    \n    func testToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to match, got <1>\") {\n                expect(1).to(MatcherFunc { expr, failure in false }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testNotToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).notTo(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToNotMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).toNot(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These aren't eventually equal!\\n\" +\n            \"expected to eventually equal <1>, got <0>\") {\n                expect { 0 }.toEventually(equal(1), description: \"These aren't eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToEventuallyNotMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToNotEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/NimbleSpecHelper.h",
    "content": "@import Nimble;\n#import \"NimbleTests-Swift.h\"\n\n// Use this when you want to verify the failure message for when an expectation fails\n#define expectFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessage:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n#define expectFailureMessages(MSGS, BLOCK) \\\n[NimbleHelper expectFailureMessages:(MSGS) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n\n// Use this when you want to verify the failure message with the nil message postfixed\n// to it: \" (use beNil() to match nils)\"\n#define expectNilFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessageForNil:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCAllPassTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAllPassTest : XCTestCase\n\n@end\n\n@implementation ObjCAllPassTest\n\n- (void)testPositiveMatches {\n    expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n    expect(@[@1, @2, @3,@4]).toNot(allPass(beGreaterThan(@5)));\n    \n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).to(allPass(beLessThan(@5)));\n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beGreaterThan(@5)));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to all be less than <3>, but failed first at element\"\n                         \" <3> in <[1, 2, 3, 4]>\", ^{\n                             expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@3)));\n                         });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect(@[@1, @2, @3,@4]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).to(allPass(beLessThan(@5)));\n                         });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).toNot(allPass(beLessThan(@5)));\n                         });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCAsyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAsyncTest : XCTestCase\n\n@end\n\n@implementation ObjCAsyncTest\n\n- (void)testAsync {\n    __block id obj = @1;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = nil;\n    });\n    expect(obj).toEventually(beNil());\n}\n\n\n- (void)testAsyncWithCustomTimeout {\n    __block id obj = nil;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = @1;\n    });\n    expect(obj).withTimeout(5).toEventuallyNot(beNil());\n}\n\n- (void)testAsyncCallback {\n    waitUntil(^(void (^done)(void)){\n        done();\n    });\n\n    expectFailureMessage(@\"Waited more than 1.0 second\", ^{\n        waitUntil(^(void (^done)(void)){ /* ... */ });\n    });\n\n    expectFailureMessage(@\"Waited more than 0.01 seconds\", ^{\n        waitUntilTimeout(0.01, ^(void (^done)(void)){\n            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n                [NSThread sleepForTimeInterval:0.1];\n                done();\n            });\n        });\n    });\n\n    expectFailureMessage(@\"expected to equal <goodbye>, got <hello>\", ^{\n        waitUntil(^(void (^done)(void)){\n            [NSThread sleepForTimeInterval:0.1];\n            expect(@\"hello\").to(equal(@\"goodbye\"));\n            done();\n        });\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeAnInstanceOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeAnInstanceOfTest : XCTestCase\n@end\n\n@implementation ObjCBeAnInstanceOfTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beAnInstanceOf([NSNull class]));\n    expect(@1).toNot(beAnInstanceOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be an instance of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAnInstanceOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be an instance of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be an instance of NSNull, got <nil>\", ^{\n        expect(nil).to(beAnInstanceOf([NSNull class]));\n    });\n\n    expectNilFailureMessage(@\"expected to not be an instance of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeCloseToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeCloseToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeCloseToTest\n\n- (void)testPositiveMatches {\n    expect(@1.2).to(beCloseTo(@1.2001));\n    expect(@1.2).to(beCloseTo(@2).within(10));\n    expect(@2).toNot(beCloseTo(@1));\n    expect(@1.00001).toNot(beCloseTo(@1).within(0.00000001));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be close to <0> (within 0.001), got <1>\", ^{\n        expect(@1).to(beCloseTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be close to <0> (within 0.001), got <0.0001>\", ^{\n        expect(@(0.0001)).toNot(beCloseTo(@0));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).to(beCloseTo(@0));\n    });\n    expectNilFailureMessage(@\"expected to not be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).toNot(beCloseTo(@0));\n    });\n}\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeEmptyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeEmptyTest : XCTestCase\n@end\n\n@implementation ObjCBeEmptyTest\n\n- (void)testPositiveMatches {\n    expect(@[]).to(beEmpty());\n    expect(@\"\").to(beEmpty());\n    expect(@{}).to(beEmpty());\n    expect([NSSet set]).to(beEmpty());\n    expect([NSIndexSet indexSet]).to(beEmpty());\n    expect([NSHashTable hashTableWithOptions:NSPointerFunctionsWeakMemory]).to(beEmpty());\n\n    expect(@[@1, @2]).toNot(beEmpty());\n    expect(@\"a\").toNot(beEmpty());\n    expect(@{@\"key\": @\"value\"}).toNot(beEmpty());\n    expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    expect(table).toNot(beEmpty());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be empty, got <foo>\", ^{\n        expect(@\"foo\").to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect(@[@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{key = value;}>\", ^{\n        expect(@{@\"key\": @\"value\"}).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).to(beEmpty());\n    });\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    NSString *tableString = [[table description] stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be empty, got <%@>\", tableString]), ^{\n        expect(table).to(beEmpty());\n    });\n\n    expectFailureMessage(@\"expected to not be empty, got <>\", ^{\n        expect(@\"\").toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <()>\", ^{\n        expect(@[]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{}>\", ^{\n        expect(@{}).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <NSHashTable {}>\", ^{\n        expect([NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory]).toNot(beEmpty());\n    });\n}\n\n- (void)testItDoesNotMatchNil {\n    expectNilFailureMessage(@\"expected to be empty, got <nil>\", ^{\n        expect(nil).to(beEmpty());\n    });\n    expectNilFailureMessage(@\"expected to not be empty, got <nil>\", ^{\n        expect(nil).toNot(beEmpty());\n    });\n}\n\n- (void)testItReportsTypesItMatchesAgainst {\n    expectFailureMessage(@\"expected to be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).toNot(beEmpty());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeFalseTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalseTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalseTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalse());\n    expect(@YES).toNot(beFalse());\n}\n\n- (void)testNegativeMatches {\n    expectNilFailureMessage(@\"expected to be false, got <nil>\", ^{\n        expect(nil).to(beFalse());\n    });\n    expectNilFailureMessage(@\"expected to not be false, got <nil>\", ^{\n        expect(nil).toNot(beFalse());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeFalsyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalsyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalsyTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalsy());\n    expect(@YES).toNot(beFalsy());\n    expect(nil).to(beFalsy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to not be falsy, got <nil>\", ^{\n        expect(nil).toNot(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be falsy, got <1>\", ^{\n        expect(@1).to(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThanOrEqualTo(@2));\n    expect(@2).toNot(beGreaterThanOrEqualTo(@3));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than or equal to <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThanOrEqualTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be greater than or equal to <1>, got <2>\", ^{\n        expect(@2).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than or equal to <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThanOrEqualTo(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than or equal to <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThan(@1));\n    expect(@2).toNot(beGreaterThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThan(@(0)));\n    });\n    expectFailureMessage(@\"expected to not be greater than <1>, got <0>\", ^{\n        expect(@0).toNot(beGreaterThan(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThan(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeIdenticalToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeIdenticalToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeIdenticalToTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beIdenticalTo([NSNull null]));\n    expect(@2).toNot(beIdenticalTo(@3));\n}\n\n- (void)testNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(beIdenticalTo(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(beIdenticalTo(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testAliasPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(be([NSNull null]));\n    expect(@2).toNot(be(@3));\n}\n\n- (void)testAliasNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(be(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(be(obj));\n    });\n}\n\n- (void)testAliasNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(be(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(be(obj));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeKindOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeKindOfTest : XCTestCase\n\n@end\n\n@implementation ObjCBeKindOfTest\n\n- (void)testPositiveMatches {\n    NSMutableArray *array = [NSMutableArray array];\n    expect(array).to(beAKindOf([NSArray class]));\n    expect(@1).toNot(beAKindOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be a kind of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAKindOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be a kind of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be a kind of NSNull, got <nil>\", ^{\n        expect(nil).to(beAKindOf([NSNull class]));\n    });\n    expectNilFailureMessage(@\"expected to not be a kind of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeLessThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThanOrEqualTo(@2));\n    expect(@2).toNot(beLessThanOrEqualTo(@1));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than or equal to <1>, got <2>\", ^{\n        expect(@2).to(beLessThanOrEqualTo(@1));\n    });\n    expectFailureMessage(@\"expected to not be less than or equal to <1>, got <1>\", ^{\n        expect(@1).toNot(beLessThanOrEqualTo(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than or equal to <1>, got <nil>\", ^{\n        expect(nil).to(beLessThanOrEqualTo(@1));\n    });\n    expectNilFailureMessage(@\"expected to not be less than or equal to <-1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThanOrEqualTo(@(-1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeLessThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThan(@3));\n    expect(@2).toNot(beLessThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beLessThan(@0));\n    });\n    expectFailureMessage(@\"expected to not be less than <1>, got <0>\", ^{\n        expect(@0).toNot(beLessThan(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than <-1>, got <nil>\", ^{\n        expect(nil).to(beLessThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be less than <1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThan(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeNilTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeNilTest : XCTestCase\n\n@end\n\n@implementation ObjCBeNilTest\n\n- (void)testPositiveMatches {\n    expect(nil).to(beNil());\n    expect(@NO).toNot(beNil());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be nil, got <1>\", ^{\n        expect(@1).to(beNil());\n    });\n    expectFailureMessage(@\"expected to not be nil, got <nil>\", ^{\n        expect(nil).toNot(beNil());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeTrueTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTrueTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTrueTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTrue());\n    expect(@NO).toNot(beTrue());\n    expect(nil).toNot(beTrue());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be true, got <0>\", ^{\n        expect(@NO).to(beTrue());\n    });\n    expectFailureMessage(@\"expected to be true, got <nil>\", ^{\n        expect(nil).to(beTrue());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeTruthyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTruthyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTruthyTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTruthy());\n    expect(@NO).toNot(beTruthy());\n    expect(nil).toNot(beTruthy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be truthy, got <nil>\", ^{\n        expect(nil).to(beTruthy());\n    });\n    expectFailureMessage(@\"expected to not be truthy, got <1>\", ^{\n        expect(@1).toNot(beTruthy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeginWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeginWithTest : XCTestCase\n\n@end\n\n@implementation ObjCBeginWithTest\n\n- (void)testPositiveMatches {\n    expect(@\"hello world!\").to(beginWith(@\"hello\"));\n    expect(@\"hello world!\").toNot(beginWith(@\"world\"));\n\n    NSArray *array = @[@1, @2];\n    expect(array).to(beginWith(@1));\n    expect(array).toNot(beginWith(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to begin with <bar>, got <foo>\", ^{\n        expect(@\"foo\").to(beginWith(@\"bar\"));\n    });\n    expectFailureMessage(@\"expected to not begin with <foo>, got <foo>\", ^{\n        expect(@\"foo\").toNot(beginWith(@\"foo\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to begin with <1>, got <nil>\", ^{\n        expect(nil).to(beginWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not begin with <1>, got <nil>\", ^{\n        expect(nil).toNot(beginWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCContainTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCContainTest : XCTestCase\n\n@end\n\n@implementation ObjCContainTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1));\n    expect(array).toNot(contain(@\"HI\"));\n    expect(@\"String\").to(contain(@\"Str\"));\n    expect(@\"Other\").toNot(contain(@\"Str\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to contain <3>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).to(contain(@3));\n    });\n    expectFailureMessage(@\"expected to not contain <2>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).toNot(contain(@2));\n    });\n\n    expectFailureMessage(@\"expected to contain <hi>, got <la>\", ^{\n        expect(@\"la\").to(contain(@\"hi\"));\n    });\n    expectFailureMessage(@\"expected to not contain <hi>, got <hihihi>\", ^{\n        expect(@\"hihihi\").toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to contain <3>, got <nil>\", ^{\n        expect(nil).to(contain(@3));\n    });\n    expectNilFailureMessage(@\"expected to not contain <3>, got <nil>\", ^{\n        expect(nil).toNot(contain(@3));\n    });\n\n    expectNilFailureMessage(@\"expected to contain <hi>, got <nil>\", ^{\n        expect(nil).to(contain(@\"hi\"));\n    });\n    expectNilFailureMessage(@\"expected to not contain <hi>, got <nil>\", ^{\n        expect(nil).toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testVariadicArguments {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1, @2));\n    expect(array).toNot(contain(@\"HI\", @\"whale\"));\n    expect(@\"String\").to(contain(@\"Str\", @\"ng\"));\n    expect(@\"Other\").toNot(contain(@\"Str\", @\"Oth\"));\n\n\n    expectFailureMessage(@\"expected to contain <Optional(a), Optional(bar)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).to(contain(@\"a\", @\"bar\"));\n    });\n\n    expectFailureMessage(@\"expected to not contain <Optional(bar), Optional(b)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).toNot(contain(@\"bar\", @\"b\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCEndWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEndWithTest : XCTestCase\n\n@end\n\n@implementation ObjCEndWithTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(@\"hello world!\").to(endWith(@\"world!\"));\n    expect(@\"hello world!\").toNot(endWith(@\"hello\"));\n    expect(array).to(endWith(@2));\n    expect(array).toNot(endWith(@1));\n    expect(@1).toNot(contain(@\"foo\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to end with <?>, got <hello world!>\", ^{\n        expect(@\"hello world!\").to(endWith(@\"?\"));\n    });\n    expectFailureMessage(@\"expected to not end with <!>, got <hello world!>\", ^{\n        expect(@\"hello world!\").toNot(endWith(@\"!\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to end with <1>, got <nil>\", ^{\n        expect(nil).to(endWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not end with <1>, got <nil>\", ^{\n        expect(nil).toNot(endWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCEqualTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEqualTest : XCTestCase\n\n@end\n\n@implementation ObjCEqualTest\n\n- (void)testPositiveMatches {\n    expect(@1).to(equal(@1));\n    expect(@1).toNot(equal(@2));\n    expect(@1).notTo(equal(@2));\n    expect(@\"hello\").to(equal(@\"hello\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to equal <2>, got <1>\", ^{\n        expect(@1).to(equal(@2));\n    });\n    expectFailureMessage(@\"expected to not equal <1>, got <1>\", ^{\n        expect(@1).toNot(equal(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to equal <nil>, got <nil>\", ^{\n        expect(nil).to(equal(nil));\n    });\n    expectNilFailureMessage(@\"expected to not equal <nil>, got <nil>\", ^{\n        expect(nil).toNot(equal(nil));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCHaveCount.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCHaveCountTest : XCTestCase\n\n@end\n\n@implementation ObjCHaveCountTest\n\n- (void)testHaveCountForNSArray {\n    expect(@[@1, @2, @3]).to(haveCount(@3));\n    expect(@[@1, @2, @3]).notTo(haveCount(@1));\n\n    expect(@[]).to(haveCount(@0));\n    expect(@[@1]).notTo(haveCount(@0));\n\n    expectFailureMessage(@\"expected to have NSArray with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSArray with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).notTo(haveCount(@3));\n    });\n\n}\n\n- (void)testHaveCountForNSDictionary {\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@3));\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSDictionary with count 1, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSDictionary with count 3, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSHashtable {\n    NSHashTable *const table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    [table addObject:@2];\n    [table addObject:@3];\n\n    expect(table).to(haveCount(@3));\n    expect(table).notTo(haveCount(@1));\n\n    NSString *msg = [NSString stringWithFormat:\n                     @\"expected to have NSHashTable with count 1, got 3\\nActual Value: %@\",\n                     [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).to(haveCount(@1));\n    });\n\n\n    msg = [NSString stringWithFormat:\n           @\"expected to not have NSHashTable with count 3, got 3\\nActual Value: %@\",\n           [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSSet {\n    NSSet *const set = [NSSet setWithArray:@[@1, @2, @3]];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSSet with count 1, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSSet with count 3, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSIndexSet {\n    NSIndexSet *const set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSIndexSet with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSIndexSet with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForUnsupportedTypes {\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFConstantString\", ^{\n        expect(@\"string\").to(haveCount(@6));\n    });\n\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFNumber\", ^{\n        expect(@1).to(haveCount(@6));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCMatchTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCMatchTest : XCTestCase\n\n@end\n\n@implementation ObjCMatchTest\n\n- (void)testPositiveMatches {\n    expect(@\"11:14\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    expect(@\"hello\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\", ^{\n        expect(@\"hello\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:22>\", ^{\n        expect(@\"11:22\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectNilFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCRaiseExceptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCRaiseExceptionTest : XCTestCase\n\n@end\n\n@implementation ObjCRaiseExceptionTest\n\n- (void)testPositiveMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ @throw exception; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException().named(NSInvalidArgumentException));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\"));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}));\n\n    expectAction(^{ }).toNot(raiseException());\n}\n\n- (void)testPositiveMatchesWithBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n}\n\n- (void)testNegativeMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n\n    expectFailureMessage(@\"expected to raise any exception, got no exception\", ^{\n        expectAction(^{ }).to(raiseException());\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <foo>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(@\"foo\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <cakes>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"cakes\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{k = v;}>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"No food\").\n                              userInfo(@{@\"k\": @\"v\"}));\n    });\n\n    expectFailureMessage(@\"expected to not raise any exception, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\", ^{\n        expectAction(^{ [exception raise]; }).toNot(raiseException());\n    });\n}\n\n- (void)testNegativeMatchesWithPassingBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectFailureMessage(@\"expected to raise exception that satisfies block, got no exception\", ^{\n        expect(exception).to(raiseException().\n                             satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"LOL\"));\n        }));\n    });\n\n    NSString *outerFailureMessage = @\"expected to raise exception that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <foo> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(@\"foo\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <bar> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"bar\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n}\n\n- (void)testNegativeMatchesWithNegativeBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    NSString *outerFailureMessage;\n\n    NSString const *innerFailureMessage = @\"expected to equal <foo>, got <NSInvalidArgumentException>\";\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{key = value;}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{@\"key\": @\"value\"}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCSatisfyAnyOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSatisfyAnyOfTest : XCTestCase\n\n@end\n\n@implementation ObjCSatisfyAnyOfTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(satisfyAnyOf(equal(@2), equal(@3)));\n    expect(@2).toNot(satisfyAnyOf(equal(@3), equal(@16)));\n    expect(@[@1, @2, @3]).to(satisfyAnyOf(equal(@[@1, @2, @3]), allPass(beLessThan(@4))));\n    expect(@NO).to(satisfyAnyOf(beTrue(), beFalse()));\n    expect(@YES).to(satisfyAnyOf(beTrue(), beFalse()));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\", ^{\n        expect(@2).to(satisfyAnyOf(equal(@3), equal(@4), equal(@5)));\n    });\n    \n    expectFailureMessage(@\"expected to match one of: {all be less than <4>, but failed first at element\"\n                         \" <5> in <[5, 6, 7]>}, or {equal <(1, 2, 3, 4)>}, got (5,6,7)\", ^{\n                             expect(@[@5, @6, @7]).to(satisfyAnyOf(allPass(beLessThan(@4)), equal(@[@1, @2, @3, @4])));\n                         });\n    \n    expectFailureMessage(@\"satisfyAnyOf must be called with at least one matcher\", ^{\n        expect(@\"turtles\").to(satisfyAnyOf());\n    });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCSyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSyncTest : XCTestCase\n\n@end\n\n@implementation ObjCSyncTest\n\n- (void)testFailureExpectation {\n    expectFailureMessage(@\"fail() always fails\", ^{\n        fail();\n    });\n\n    expectFailureMessage(@\"This always fails\", ^{\n        failWithMessage(@\"This always fails\");\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCUserDescriptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCUserDescriptionTest : XCTestCase\n\n@end\n\n@implementation ObjCUserDescriptionTest\n\n- (void)testToWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to equal <2>, got <1>\", ^{\n                             expect(@1).toWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).toNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testNotToWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).notToWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToEventuallyWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to eventually equal <2>, got <1>\", ^{\n                             expect(@1).toEventuallyWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToEventuallyNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toEventuallyNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToNotEventuallyWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toNotEventuallyWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjcStringersTest.m",
    "content": "@import XCTest;\n@import Nimble;\n\n@interface ObjcStringersTest : XCTestCase\n\n@end\n\n@implementation ObjcStringersTest\n\n- (void)testItCanStringifyArrays {\n    NSArray *array = @[@1, @2, @3];\n    NSString *result = NMBStringify(array);\n    \n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItCanStringifyIndexSets {\n    NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n    NSString *result = NMBStringify(indexSet);\n\n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItRoundsLongDecimals {\n    NSNumber *num = @291.123782163;\n    NSString *result = NMBStringify(num);\n    \n    expect(result).to(equal(@\"291.1238\"));\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ndependencies:\n  pre:\n    - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n\ntest:\n  override:\n    - NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 ./test ios\n    - NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 ./test osx\n    - eval \"$(swiftenv init -)\"; ./test swiftpm:\n        environment:\n          SWIFTENV_ROOT: $HOME/.swiftenv\n          PATH: $SWIFTENV_ROOT/bin:$PATH\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Nimble\nPODSPEC=Nimble.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"---------------- Released as $VERSION_TAG ----------------\"\necho \n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for GitHub styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Nimble/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Externals/Nimble/test",
    "content": "#!/bin/bash\n\nGREEN=\"\\033[0;32m\"\nCLEAR=\"\\033[0m\"\n\nif which xcodebuild > /dev/null; then\n    echo -e \"Gathering ${GREEN}xcodebuild sdk versions${CLEAR}...\"\n    BUILD_DIR=`pwd`/build\n    LATEST_IOS_SDK_VERSION=`xcodebuild -showsdks | grep iphonesimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_TVOS_SDK_VERSION=`xcodebuild -showsdks | grep appletvsimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_OSX_SDK_VERSION=`xcodebuild -showsdks | grep 'macosx' | cut -d ' ' -f 3 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    BUILD_IOS_SDK_VERSION=${NIMBLE_BUILD_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    RUNTIME_IOS_SDK_VERSION=${NIMBLE_RUNTIME_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    BUILD_TVOS_SDK_VERSION=${NIMBLE_BUILD_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    RUNTIME_TVOS_SDK_VERSION=${NIMBLE_RUNTIME_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    BUILD_OSX_SDK_VERSION=${NIMBLE_BUILD_OSX_SDK_VERSION:-$LATEST_OSX_SDK_VERSION}\nfi\n\nset -e\n\nfunction color_if_overridden {\n    local actual=$1\n    local env_var=$2\n    if [ -z \"$env_var\" ]; then\n        printf \"$actual\"\n    else\n        printf \"$GREEN$actual$CLEAR\"\n    fi\n}\n\nfunction print_env {\n    echo \"=== Environment ===\"\n    echo \" iOS:\"\n    echo \"   Latest iOS SDK: $LATEST_IOS_SDK_VERSION\"\n    echo \"   Building with iOS SDK: `color_if_overridden $BUILD_IOS_SDK_VERSION $NIMBLE_BUILD_IOS_SDK_VERSION`\"\n    echo \"   Running with iOS SDK: `color_if_overridden $RUNTIME_IOS_SDK_VERSION $NIMBLE_RUNTIME_IOS_SDK_VERSION`\"\n    echo\n    echo \" tvOS:\"\n    echo \"   Latest tvOS SDK: $LATEST_TVOS_SDK_VERSION\"\n    echo \"   Building with tvOS SDK: `color_if_overridden $BUILD_TVOS_SDK_VERSION $NIMBLE_BUILD_TVOS_SDK_VERSION`\"\n    echo \"   Running with tvOS SDK: `color_if_overridden $RUNTIME_TVOS_SDK_VERSION $NIMBLE_RUNTIME_TVOS_SDK_VERSION`\"\n    echo\n    echo \" Mac OS X:\"\n    echo \"   Latest OS X SDK: $LATEST_OSX_SDK_VERSION\"\n    echo \"   Building with OS X SDK: `color_if_overridden $BUILD_OSX_SDK_VERSION $NIMBLE_BUILD_OSX_SDK_VERSION`\"\n    echo\n    echo \"======= END =======\"\n    echo\n}\n\nfunction run {\n    echo -e \"$GREEN==>$CLEAR $@\"\n    \"$@\"\n}\n\nfunction test_ios {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPad Air,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPhone 5s,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n}\n\nfunction test_tvos {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-tvOS\" -configuration \"Debug\" -sdk \"appletvsimulator$BUILD_TVOS_SDK_VERSION\" -destination \"name=Apple TV 1080p,OS=$RUNTIME_TVOS_SDK_VERSION\" build test\n}\n\nfunction test_osx {\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-OSX\" -configuration \"Debug\" -sdk \"macosx$BUILD_OSX_SDK_VERSION\" build test\n}\n\nfunction test_podspec {\n    echo \"Gathering CocoaPods installation information...\"\n    run bundle exec pod --version\n    echo \"Linting podspec...\"\n    run bundle exec pod lib lint Nimble.podspec\n}\n\nfunction test_swiftpm {\n    run swift build --clean && swift build && swift test\n}\n\nfunction test() {\n    test_ios\n    test_tvos\n    test_osx\n\n    if which swift-test; then\n        test_swiftpm\n    else\n        echo \"Not testing with the Swift Package Manager because swift-test is not installed\"\n    fi\n}\n\nfunction clean {\n    run rm -rf ~/Library/Developer/Xcode/DerivedData\\; true\n}\n\nfunction help {\n    echo \"Usage: $0 COMMANDS\"\n    echo\n    echo \"COMMANDS:\"\n    echo \" clean        - Cleans the derived data directory of Xcode. Assumes default location\"\n    echo \" ios          - Runs the tests as an iOS device\"\n    echo \" tvos         - Runs the tests as an tvOS device\"\n    echo \" osx          - Runs the tests on Mac OS X 10.10 (Yosemite and newer only)\"\n    echo \" podspec      - Runs pod lib lint against the podspec to detect breaking changes\"\n    echo \" all          - Runs the all tests of ios, tvos and osx\"\n    echo \" swiftpm      - Runs the tests built by the Swift Package Manager\"\n    echo \" help         - Displays this help\"\n    echo\n    exit 1\n}\n\nfunction main {\n    print_env\n    for arg in $@\n    do\n        case \"$arg\" in\n            clean) clean ;;\n            ios) test_ios ;;\n            tvos) test_tvos ;;\n            osx) test_osx ;;\n            podspec) test_podspec ;;\n            test) test ;;\n            all) test ;;\n            swiftpm) test_swiftpm ;;\n            help) help ;;\n        esac\n    done\n\n    if [ $# -eq 0 ]; then\n        clean\n        test\n    fi\n}\n\nmain $@\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Gemfile",
    "content": "source \"https://rubygems.org\"\n\ngem 'cocoapods', '1.0'\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/LICENSE",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014, Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Quick\",\n    targets: [\n        Target(name: \"QuickTests\", dependencies: [.Target(name: \"Quick\"), .Target(name: \"QuickTestHelpers\")]),\n        Target(name: \"QuickFocusedTests\", dependencies: [.Target(name: \"Quick\"), .Target(name: \"QuickTestHelpers\")]),\n        Target(name: \"QuickTestHelpers\", dependencies: [.Target(name: \"Quick\")]),\n    ],\n    // TODO: Once the `test` command has been implemented in the Swift Package Manager, this should be changed to\n    // be `testDependencies:` instead. For now it has to be done like this for the library to get linked with the test targets.\n    // See: https://github.com/apple/swift-evolution/blob/master/proposals/0019-package-manager-testing.md\n    dependencies: [ \n        .Package(url: \"https://github.com/briancroom/Nimble\", majorVersion: 3)\n    ]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Objective-C/___FILEBASENAME___.h",
    "content": "@import Quick;\n\n@interface ___FILEBASENAMEASIDENTIFIER___ : QuickConfiguration\n\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Objective-C/___FILEBASENAME___.m",
    "content": "#import \"___FILEBASENAMEASIDENTIFIER___.h\"\n\n@implementation ___FILEBASENAMEASIDENTIFIER___\n\n+ (void)configure:(Configuration *)configuration {\n\n}\n\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Swift/___FILEBASENAME___.swift",
    "content": "import Quick\n\nclass ___FILEBASENAMEASIDENTIFIER___: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n\n    }\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/TemplateInfo.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>Kind</key>\n\t<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>\n\t<key>Description</key>\n\t<string>A QuickConfiguration subclass.</string>\n\t<key>Summary</key>\n  <string>A QuickConfiguration subclass, overload +configure: to configure the behaviour when running specs, shared examples that are used across spec files.</string>\n\t<key>SortOrder</key>\n\t<integer>1</integer>\n\t<key>BuildableType</key>\n\t<string>Test</string>\n\t<key>DefaultCompletionName</key>\n\t<string>Spec</string>\n\t<key>Options</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>Description</key>\n\t\t\t<string>Name of the Quick Configuration</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>productName</string>\n\t\t\t<key>Name</key>\n\t\t\t<string>QuickConfiguration Name:</string>\n\t\t\t<key>NotPersisted</key>\n\t\t\t<true/>\n\t\t\t<key>Required</key>\n\t\t\t<true/>\n\t\t\t<key>Type</key>\n\t\t\t<string>text</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>AllowedTypes</key>\n\t\t\t<dict>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.swift-source</string>\n\t\t\t\t</array>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.objective-c-source</string>\n\t\t\t\t\t<string>public.objective-c-plus-plus-source</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t\t<key>Default</key>\n\t\t\t<string>Swift</string>\n\t\t\t<key>Description</key>\n\t\t\t<string>The implementation language</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>languageChoice</string>\n\t\t\t<key>MainTemplateFiles</key>\n\t\t\t<dict>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<string>___FILEBASENAME___.m</string>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<string>___FILEBASENAME___.swift</string>\n\t\t\t</dict>\n\t\t\t<key>Name</key>\n\t\t\t<string>Language:</string>\n\t\t\t<key>Required</key>\n\t\t\t<string>Yes</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>popup</string>\n\t\t\t<key>Values</key>\n\t\t\t<array>\n\t\t\t\t<string>Swift</string>\n\t\t\t\t<string>Objective-C</string>\n\t\t\t</array>\n\t\t</dict>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/Objective-C/___FILEBASENAME___.m",
    "content": "#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\nQuickSpecBegin(___FILEBASENAMEASIDENTIFIER___)\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/Swift/___FILEBASENAME___.swift",
    "content": "import Quick\nimport Nimble\n\nclass ___FILEBASENAMEASIDENTIFIER___: QuickSpec {\n    override func spec() {\n\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/TemplateInfo.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>Kind</key>\n\t<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>\n\t<key>Description</key>\n\t<string>A class implementing a Quick spec.</string>\n\t<key>Summary</key>\n\t<string>A class implementing a Quick spec</string>\n\t<key>SortOrder</key>\n\t<integer>1</integer>\n\t<key>BuildableType</key>\n\t<string>Test</string>\n\t<key>DefaultCompletionName</key>\n\t<string>Spec</string>\n\t<key>Options</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>Description</key>\n\t\t\t<string>Name of the Quick spec class</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>productName</string>\n\t\t\t<key>Name</key>\n\t\t\t<string>Spec Name:</string>\n\t\t\t<key>NotPersisted</key>\n\t\t\t<true/>\n\t\t\t<key>Required</key>\n\t\t\t<true/>\n\t\t\t<key>Type</key>\n\t\t\t<string>text</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>AllowedTypes</key>\n\t\t\t<dict>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.swift-source</string>\n\t\t\t\t</array>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.objective-c-source</string>\n\t\t\t\t\t<string>public.objective-c-plus-plus-source</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t\t<key>Default</key>\n\t\t\t<string>Swift</string>\n\t\t\t<key>Description</key>\n\t\t\t<string>The implementation language</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>languageChoice</string>\n\t\t\t<key>MainTemplateFiles</key>\n\t\t\t<dict>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<string>___FILEBASENAME___.m</string>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<string>___FILEBASENAME___.swift</string>\n\t\t\t</dict>\n\t\t\t<key>Name</key>\n\t\t\t<string>Language:</string>\n\t\t\t<key>Required</key>\n\t\t\t<string>Yes</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>popup</string>\n\t\t\t<key>Values</key>\n\t\t\t<array>\n\t\t\t\t<string>Swift</string>\n\t\t\t\t<string>Objective-C</string>\n\t\t\t</array>\n\t\t</dict>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Quick\"\n  s.version      = \"0.9.3\"\n  s.summary      = \"The Swift (and Objective-C) testing framework.\"\n\n  s.description  = <<-DESC\n                   Quick is a behavior-driven development framework for Swift and Objective-C. Inspired by RSpec, Specta, and Ginkgo.\n                   DESC\n\n  s.homepage     = \"https://github.com/Quick/Quick\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE\" }\n\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = '9.0'\n\n  s.source       = { :git => \"https://github.com/Quick/Quick.git\", :tag => \"v#{s.version}\" }\n  s.source_files = \"Sources/Quick/**/*.{swift,h,m}\"\n\n  s.public_header_files = [\n    'Sources/Quick/Configuration/QuickConfiguration.h',\n    'Sources/Quick/DSL/QCKDSL.h',\n    'Sources/Quick/Quick.h',\n    'Sources/Quick/QuickSpec.h',\n  ]\n\n  s.exclude_files = [\n    'Sources/Quick/Configuration/QuickConfiguration.swift',\n    'Sources/Quick/QuickSpec.swift',\n    'Sources/Quick/QuickMain.swift',\n  ]\n\n  s.framework = \"XCTest\"\n  s.requires_arc = true\n  s.user_target_xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '$(PLATFORM_DIR)/Developer/Library/Frameworks' }\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F118CDF1BDCA4AB005013A2 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118CD51BDCA4AB005013A2 /* Quick.framework */; };\n\t\t1F118CF51BDCA4BB005013A2 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118CD51BDCA4AB005013A2 /* Quick.framework */; };\n\t\t1F118CFB1BDCA536005013A2 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\t1F118CFC1BDCA536005013A2 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\t1F118CFD1BDCA536005013A2 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\t1F118CFE1BDCA536005013A2 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\t1F118CFF1BDCA536005013A2 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\t1F118D001BDCA536005013A2 /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\t1F118D011BDCA536005013A2 /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\t1F118D021BDCA536005013A2 /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\t1F118D031BDCA536005013A2 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t1F118D041BDCA536005013A2 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t1F118D051BDCA536005013A2 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\t1F118D061BDCA536005013A2 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t1F118D071BDCA536005013A2 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t1F118D081BDCA536005013A2 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\t1F118D091BDCA536005013A2 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t1F118D0A1BDCA536005013A2 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t1F118D0C1BDCA543005013A2 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\t1F118D0D1BDCA547005013A2 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\t1F118D0E1BDCA547005013A2 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\t1F118D0F1BDCA54B005013A2 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\t1F118D101BDCA556005013A2 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\t1F118D111BDCA556005013A2 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\t1F118D121BDCA556005013A2 /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\t1F118D131BDCA556005013A2 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t1F118D141BDCA556005013A2 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\t1F118D151BDCA556005013A2 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\t1F118D161BDCA556005013A2 /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\t1F118D171BDCA556005013A2 /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t1F118D181BDCA556005013A2 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\t1F118D191BDCA556005013A2 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t1F118D1A1BDCA556005013A2 /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\t1F118D1B1BDCA556005013A2 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t1F118D1C1BDCA556005013A2 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\t1F118D1D1BDCA556005013A2 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t1F118D1E1BDCA556005013A2 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\t1F118D1F1BDCA556005013A2 /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t1F118D201BDCA556005013A2 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\t1F118D211BDCA556005013A2 /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t1F118D221BDCA556005013A2 /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\t1F118D231BDCA556005013A2 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t1F118D241BDCA561005013A2 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\t1F118D251BDCA561005013A2 /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n\t\t1F118D261BDCA5AF005013A2 /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\t1F118D271BDCA5AF005013A2 /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\t1F118D281BDCA5AF005013A2 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t1F118D291BDCA5B6005013A2 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2A1BDCA5B6005013A2 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2B1BDCA5B6005013A2 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2C1BDCA5B6005013A2 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D351BDCA657005013A2 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118D341BDCA657005013A2 /* Nimble.framework */; };\n\t\t1F118D371BDCA65C005013A2 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118D361BDCA65C005013A2 /* Nimble.framework */; };\n\t\t1F118D381BDCA6E1005013A2 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\t1F118D391BDCA6E6005013A2 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\t1FD0CFAD1AFA0B8C00874CC1 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\t34C586011C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586021C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586031C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586041C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586051C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586061C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586081C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34C586091C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34C5860A1C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34F375A719515CA700CE1B99 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t34F375A819515CA700CE1B99 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t34F375AB19515CA700CE1B99 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t34F375AC19515CA700CE1B99 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t34F375AD19515CA700CE1B99 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t34F375AE19515CA700CE1B99 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t34F375AF19515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t34F375B019515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t34F375B119515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t34F375B219515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t34F375B719515CA700CE1B99 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t34F375B819515CA700CE1B99 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t34F375B919515CA700CE1B99 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t34F375BA19515CA700CE1B99 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t34F375BB19515CA700CE1B99 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t34F375BC19515CA700CE1B99 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t470D6ECB1A43442400043E50 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t470D6ECC1A43442900043E50 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t471590401A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t471590411A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t4728253B1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t4728253C1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t4748E8941A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t4748E8951A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t4772173A1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t4772173B1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t47876F7D1A49AD63002575C7 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t47876F7E1A49AD71002575C7 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t479C31E31A36171B00DA8718 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t479C31E41A36172700DA8718 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t47FAEA361A3F49E6005A1D2F /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t47FAEA371A3F49EB005A1D2F /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t5A5D118719473F2100F6D13D /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A5D117C19473F2100F6D13D /* Quick.framework */; };\n\t\t5A5D11A7194740E000F6D13D /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7B44ADBE1C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B44ADBF1C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B44ADC01C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B5358CE1C3D4FBC00A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t7B5358CF1C3D4FBE00A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t7B5358D01C3D4FC000A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t8D010A571C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t8D010A581C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t8D010A591C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t96327C631C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C641C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C651C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C661C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\t96327C671C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\t96327C681C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\tAE4E58131C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58141C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58151C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58161C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58171C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58181C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAED9C8631CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tAED9C8641CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tAED9C8651CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tCE57CEDD1C430BD200D63004 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE57CEDE1C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE57CEDF1C430BD200D63004 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE57CEE01C430BD200D63004 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE57CEE11C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tCE590E1A1C431FE300253D19 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE590E1B1C431FE300253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE590E1C1C431FE300253D19 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE590E1D1C431FE300253D19 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE590E1E1C431FE300253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tCE590E1F1C431FE400253D19 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE590E201C431FE400253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE590E211C431FE400253D19 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE590E221C431FE400253D19 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE590E231C431FE400253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tDA02C91919A8073100093156 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\tDA02C91A19A8073100093156 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\tDA05D61019F73A3800771050 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\tDA05D61119F73A3800771050 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\tDA07722E1A4E5B7B0098839D /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA07722F1A4E5B7C0098839D /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA169E4819FF5DF100619816 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\tDA169E4919FF5DF100619816 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\tDA3124E619FCAEE8002858A7 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\tDA3124E719FCAEE8002858A7 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\tDA3124E819FCAEE8002858A7 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDA3124E919FCAEE8002858A7 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDA3124EA19FCAEE8002858A7 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\tDA3124EB19FCAEE8002858A7 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\tDA3124EC19FCAEE8002858A7 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\tDA3124ED19FCAEE8002858A7 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\tDA3E7A341A1E66C600CCE408 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDA3E7A351A1E66CB00CCE408 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDA408BE219FF5599005DF92A /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\tDA408BE319FF5599005DF92A /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\tDA408BE419FF5599005DF92A /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\tDA408BE519FF5599005DF92A /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\tDA408BE619FF5599005DF92A /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\tDA408BE719FF5599005DF92A /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\tDA5663EE1A4C8D8500193C88 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAEB6B8E1943873100289F44 /* Quick.framework */; };\n\t\tDA5663F41A4C8D9A00193C88 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\tDA6B30181A4DB0D500FFB148 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\tDA6B30191A4DB0D500FFB148 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\tDA7AE6F119FC493F000AFDCE /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\tDA7AE6F219FC493F000AFDCE /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\tDA8940F01B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\tDA8940F11B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\tDA8C00211A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\tDA8C00221A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\tDA8F919919F31680006F6675 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA8F919A19F31680006F6675 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA8F919D19F31921006F6675 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\tDA8F919E19F31921006F6675 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\tDA8F91A519F3208B006F6675 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\tDA8F91A619F3208B006F6675 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\tDA8F91A819F32556006F6675 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\tDA8F91A919F32556006F6675 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\tDA8F91AB19F3299E006F6675 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\tDA8F91AC19F3299E006F6675 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\tDA8F91AE19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\tDA8F91AF19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\tDA9876B81A4C70EB0004AA17 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A5D117C19473F2100F6D13D /* Quick.framework */; };\n\t\tDA9876C11A4C87200004AA17 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\tDAA63EA319F7637300CD0A3B /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\tDAA63EA419F7637300CD0A3B /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\tDAA7C0D719F777EB0093D1D9 /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\tDAB0136F19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\tDAB0137019FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\tDAB067E919F7801C00F970AC /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\tDAD297651AA8129D001D25CD /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDAE714F019FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\tDAE714F119FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\tDAE714F319FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\tDAE714F419FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\tDAE714F719FF6812005905B8 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\tDAE714F819FF6812005905B8 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\tDAE714FA19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\tDAE714FB19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\tDAE714FE19FF6A62005905B8 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAE714FF19FF6A62005905B8 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAE7150019FF6A62005905B8 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\tDAE7150119FF6A62005905B8 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\tDAEB6B941943873100289F44 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAEB6B9A1943873100289F44 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAEB6B8E1943873100289F44 /* Quick.framework */; };\n\t\tDAED1EC41B1105BC006F61EC /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\tDAED1EC51B1105BC006F61EC /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\tDAED1ECA1B110699006F61EC /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\tDAED1ECB1B110699006F61EC /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\tDAF28BC31A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n\t\tDAF28BC41A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t047655511949F4CB00B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t047655531949F4CB00B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04765555194A327000B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E4194B4A6000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E6194B4A6000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E8194B4B7E00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97EA194B4B9B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F0194B82DB00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97F2194B82DE00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F6194B831200CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F8194B834000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97FA194B834100CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97FC194B834B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97FE194B835E00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9800194B836100CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC9802194B836300CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9804194B838400CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC9806194B838700CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9808194B838B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t1F118CE01BDCA4AB005013A2 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F118CD41BDCA4AB005013A2;\n\t\t\tremoteInfo = \"Quick-tvOS\";\n\t\t};\n\t\t1F118CF61BDCA4BB005013A2 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F118CD41BDCA4AB005013A2;\n\t\t\tremoteInfo = \"Quick-tvOS\";\n\t\t};\n\t\t5A5D118819473F2100F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t5A5D11EF194741B500F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t5A5D11F1194741B500F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t93625F381951DDC8006B1FE1 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\tDA5663EF1A4C8D8500193C88 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = \"Quick-OSX\";\n\t\t};\n\t\tDA9876B91A4C70EB0004AA17 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\tDAEB6B9B1943873100289F44 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F118CD51BDCA4AB005013A2 /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118D341BDCA657005013A2 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = \"Externals/Nimble/build/Debug-appletvos/Nimble.framework\"; sourceTree = \"<group>\"; };\n\t\t1F118D361BDCA65C005013A2 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = \"Externals/Nimble/build/Debug-appletvos/Nimble.framework\"; sourceTree = \"<group>\"; };\n\t\t34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t34C586071C4AC5E500D4F057 /* ErrorUtility.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ErrorUtility.swift; sourceTree = \"<group>\"; };\n\t\t34F3759C19515CA700CE1B99 /* Callsite.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Callsite.swift; sourceTree = \"<group>\"; };\n\t\t34F3759E19515CA700CE1B99 /* Example.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Example.swift; sourceTree = \"<group>\"; };\n\t\t34F3759F19515CA700CE1B99 /* ExampleGroup.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleGroup.swift; sourceTree = \"<group>\"; };\n\t\t34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSString+QCKSelectorName.h\"; sourceTree = \"<group>\"; };\n\t\t34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSString+QCKSelectorName.m\"; sourceTree = \"<group>\"; };\n\t\t34F375A419515CA700CE1B99 /* QuickSpec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickSpec.h; sourceTree = \"<group>\"; };\n\t\t34F375A519515CA700CE1B99 /* QuickSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickSpec.m; sourceTree = \"<group>\"; };\n\t\t34F375A619515CA700CE1B99 /* World.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = World.swift; sourceTree = \"<group>\"; };\n\t\t470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"AfterEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"PendingTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"SharedExamplesTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"SharedExamples+BeforeEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"AfterSuiteTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"BeforeSuiteTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t479C31E11A36156E00DA8718 /* ItTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"ItTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"BeforeEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t5A5D117C19473F2100F6D13D /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t7B44ADBD1C5444940007AF2E /* HooksPhase.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HooksPhase.swift; sourceTree = \"<group>\"; };\n\t\t7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContextTests.swift; sourceTree = \"<group>\"; };\n\t\t8D010A561C11726F00633E2B /* DescribeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DescribeTests.swift; sourceTree = \"<group>\"; };\n\t\t96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"QuickSpec+QuickSpec_MethodList.h\"; sourceTree = \"<group>\"; };\n\t\t96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"QuickSpec+QuickSpec_MethodList.m\"; sourceTree = \"<group>\"; };\n\t\tAEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+QCKSuspendObservation.m\"; sourceTree = \"<group>\"; };\n\t\tAED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CrossReferencingSpecs.swift; sourceTree = \"<group>\"; };\n\t\tCE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"NSBundle+CurrentTestBundle.swift\"; sourceTree = \"<group>\"; };\n\t\tCE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickSelectedTestSuiteBuilder.swift; sourceTree = \"<group>\"; };\n\t\tCE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickTestSuite.swift; sourceTree = \"<group>\"; };\n\t\tCE57CEDB1C430BD200D63004 /* String+FileName.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"String+FileName.swift\"; sourceTree = \"<group>\"; };\n\t\tCE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestSuite+QuickTestSuiteBuilder.m\"; sourceTree = \"<group>\"; };\n\t\tDA02C91819A8073100093156 /* ExampleMetadata.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleMetadata.swift; sourceTree = \"<group>\"; };\n\t\tDA05D60F19F73A3800771050 /* AfterEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AfterEachTests.swift; sourceTree = \"<group>\"; };\n\t\tDA169E4719FF5DF100619816 /* Configuration.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = \"<group>\"; };\n\t\tDA3124E219FCAEE8002858A7 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\tDA3124E319FCAEE8002858A7 /* QCKDSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QCKDSL.h; sourceTree = \"<group>\"; };\n\t\tDA3124E419FCAEE8002858A7 /* QCKDSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QCKDSL.m; sourceTree = \"<group>\"; };\n\t\tDA3124E519FCAEE8002858A7 /* World+DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"World+DSL.swift\"; sourceTree = \"<group>\"; };\n\t\tDA408BDF19FF5599005DF92A /* Closures.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Closures.swift; sourceTree = \"<group>\"; };\n\t\tDA408BE019FF5599005DF92A /* ExampleHooks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleHooks.swift; sourceTree = \"<group>\"; };\n\t\tDA408BE119FF5599005DF92A /* SuiteHooks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SuiteHooks.swift; sourceTree = \"<group>\"; };\n\t\tDA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-OSXTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDA6B30171A4DB0D500FFB148 /* Filter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Filter.swift; sourceTree = \"<group>\"; };\n\t\tDA7AE6F019FC493F000AFDCE /* ItTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ItTests.swift; sourceTree = \"<group>\"; };\n\t\tDA87078219F48775008C04AC /* BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeforeEachTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FailureUsingXCTAssertTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tDA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickConfigurationTests.m; sourceTree = \"<group>\"; };\n\t\tDA8F919519F31680006F6675 /* QCKSpecRunner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QCKSpecRunner.h; sourceTree = \"<group>\"; };\n\t\tDA8F919619F31680006F6675 /* QCKSpecRunner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QCKSpecRunner.m; sourceTree = \"<group>\"; };\n\t\tDA8F919719F31680006F6675 /* QuickTestsBridgingHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickTestsBridgingHeader.h; sourceTree = \"<group>\"; };\n\t\tDA8F919819F31680006F6675 /* XCTestObservationCenter+QCKSuspendObservation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"XCTestObservationCenter+QCKSuspendObservation.h\"; sourceTree = \"<group>\"; };\n\t\tDA8F919C19F31921006F6675 /* FailureTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FailureTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tDA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeforeSuiteTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91A719F32556006F6675 /* AfterSuiteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AfterSuiteTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SharedExamplesTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FunctionalTests_SharedExamplesTests_SharedExamples.swift; sourceTree = \"<group>\"; };\n\t\tDA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDA9876BF1A4C87200004AA17 /* FocusedTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FocusedTests.swift; sourceTree = \"<group>\"; };\n\t\tDA9876C01A4C87200004AA17 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAA63EA219F7637300CD0A3B /* PendingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PendingTests.swift; sourceTree = \"<group>\"; };\n\t\tDAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"SharedExamples+BeforeEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+BeforeEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+BeforeEach.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+AfterEach.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+AfterEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714FC19FF6A62005905B8 /* QuickConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickConfiguration.h; sourceTree = \"<group>\"; };\n\t\tDAE714FD19FF6A62005905B8 /* QuickConfiguration.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickConfiguration.m; sourceTree = \"<group>\"; };\n\t\tDAEB6B8E1943873100289F44 /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDAEB6B921943873100289F44 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAEB6B931943873100289F44 /* Quick.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Quick.h; sourceTree = \"<group>\"; };\n\t\tDAEB6B991943873100289F44 /* Quick-OSXTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-OSXTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDAEB6B9F1943873100289F44 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAED1EC21B1105BC006F61EC /* World.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = World.h; sourceTree = \"<group>\"; };\n\t\tDAED1EC81B110699006F61EC /* World+DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"World+DSL.h\"; sourceTree = \"<group>\"; };\n\t\tDAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FocusedTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tF8100E901A1E4447007595ED /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F118CD11BDCA4AB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDB1BDCA4AB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118CDF1BDCA4AB005013A2 /* Quick.framework in Frameworks */,\n\t\t\t\t1F118D351BDCA657005013A2 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CED1BDCA4BB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118CF51BDCA4BB005013A2 /* Quick.framework in Frameworks */,\n\t\t\t\t1F118D371BDCA65C005013A2 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117819473F2100F6D13D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118319473F2100F6D13D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t5A5D118719473F2100F6D13D /* Quick.framework in Frameworks */,\n\t\t\t\tDA3E7A351A1E66CB00CCE408 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E51A4C8D8500193C88 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA5663EE1A4C8D8500193C88 /* Quick.framework in Frameworks */,\n\t\t\t\t1FD0CFAD1AFA0B8C00874CC1 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876AF1A4C70EB0004AA17 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA9876B81A4C70EB0004AA17 /* Quick.framework in Frameworks */,\n\t\t\t\tDAD297651AA8129D001D25CD /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8A1943873100289F44 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B961943873100289F44 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA3E7A341A1E66C600CCE408 /* Nimble.framework in Frameworks */,\n\t\t\t\tDAEB6B9A1943873100289F44 /* Quick.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F118D331BDCA645005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F118D361BDCA65C005013A2 /* Nimble.framework */,\n\t\t\t\t1F118D341BDCA657005013A2 /* Nimble.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA169E4619FF5DF100619816 /* Configuration */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714FC19FF6A62005905B8 /* QuickConfiguration.h */,\n\t\t\t\tDAE714FD19FF6A62005905B8 /* QuickConfiguration.m */,\n\t\t\t\tDA169E4719FF5DF100619816 /* Configuration.swift */,\n\t\t\t);\n\t\t\tpath = Configuration;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA3124E119FCAEE8002858A7 /* DSL */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA3124E519FCAEE8002858A7 /* World+DSL.swift */,\n\t\t\t\tDAED1EC81B110699006F61EC /* World+DSL.h */,\n\t\t\t\tDA3124E219FCAEE8002858A7 /* DSL.swift */,\n\t\t\t\tDA3124E319FCAEE8002858A7 /* QCKDSL.h */,\n\t\t\t\tDA3124E419FCAEE8002858A7 /* QCKDSL.m */,\n\t\t\t);\n\t\t\tpath = DSL;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA408BDE19FF5599005DF92A /* Hooks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA408BDF19FF5599005DF92A /* Closures.swift */,\n\t\t\t\tDA408BE019FF5599005DF92A /* ExampleHooks.swift */,\n\t\t\t\tDA408BE119FF5599005DF92A /* SuiteHooks.swift */,\n\t\t\t\t7B44ADBD1C5444940007AF2E /* HooksPhase.swift */,\n\t\t\t);\n\t\t\tpath = Hooks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA8F919419F31680006F6675 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8F919719F31680006F6675 /* QuickTestsBridgingHeader.h */,\n\t\t\t\tDA8F919519F31680006F6675 /* QCKSpecRunner.h */,\n\t\t\t\tDA8F919619F31680006F6675 /* QCKSpecRunner.m */,\n\t\t\t\t34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */,\n\t\t\t\tDA8F919819F31680006F6675 /* XCTestObservationCenter+QCKSuspendObservation.h */,\n\t\t\t\t96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */,\n\t\t\t\t96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */,\n\t\t\t\tAEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA8F919B19F3189D006F6675 /* FunctionalTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714E919FF65A6005905B8 /* Configuration */,\n\t\t\t\tDA7AE6F019FC493F000AFDCE /* ItTests.swift */,\n\t\t\t\t479C31E11A36156E00DA8718 /* ItTests+ObjC.m */,\n\t\t\t\t8D010A561C11726F00633E2B /* DescribeTests.swift */,\n\t\t\t\tDA8F919C19F31921006F6675 /* FailureTests+ObjC.m */,\n\t\t\t\tDA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */,\n\t\t\t\tDA87078219F48775008C04AC /* BeforeEachTests.swift */,\n\t\t\t\t47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */,\n\t\t\t\tDA05D60F19F73A3800771050 /* AfterEachTests.swift */,\n\t\t\t\t470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */,\n\t\t\t\tDAA63EA219F7637300CD0A3B /* PendingTests.swift */,\n\t\t\t\t4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */,\n\t\t\t\tDA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */,\n\t\t\t\t47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */,\n\t\t\t\tDA8F91A719F32556006F6675 /* AfterSuiteTests.swift */,\n\t\t\t\t477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */,\n\t\t\t\tDA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */,\n\t\t\t\t4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */,\n\t\t\t\tDAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */,\n\t\t\t\t4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */,\n\t\t\t\t7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */,\n\t\t\t\tAED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */,\n\t\t\t);\n\t\t\tpath = FunctionalTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA9876BE1A4C87200004AA17 /* QuickFocusedTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA9876BF1A4C87200004AA17 /* FocusedTests.swift */,\n\t\t\t\tDAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */,\n\t\t\t\tDA9876C31A4C87310004AA17 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = QuickFocusedTests;\n\t\t\tpath = Sources/QuickFocusedTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA9876C31A4C87310004AA17 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA9876C01A4C87200004AA17 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714E919FF65A6005905B8 /* Configuration */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F519FF67FF005905B8 /* AfterEach */,\n\t\t\t\tDAE714EA19FF65A6005905B8 /* BeforeEach */,\n\t\t\t);\n\t\t\tpath = Configuration;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714EA19FF65A6005905B8 /* BeforeEach */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */,\n\t\t\t\tDAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */,\n\t\t\t);\n\t\t\tpath = BeforeEach;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714F519FF67FF005905B8 /* AfterEach */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */,\n\t\t\t\tDAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */,\n\t\t\t);\n\t\t\tpath = AfterEach;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B841943873100289F44 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B901943873100289F44 /* Quick */,\n\t\t\t\tDAEB6B9D1943873100289F44 /* QuickTests */,\n\t\t\t\tDA9876BE1A4C87200004AA17 /* QuickFocusedTests */,\n\t\t\t\tDAEB6B8F1943873100289F44 /* Products */,\n\t\t\t\t1F118D331BDCA645005013A2 /* Frameworks */,\n\t\t\t);\n\t\t\tindentWidth = 4;\n\t\t\tsourceTree = \"<group>\";\n\t\t\ttabWidth = 4;\n\t\t};\n\t\tDAEB6B8F1943873100289F44 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B8E1943873100289F44 /* Quick.framework */,\n\t\t\t\tDAEB6B991943873100289F44 /* Quick-OSXTests.xctest */,\n\t\t\t\t5A5D117C19473F2100F6D13D /* Quick.framework */,\n\t\t\t\t5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */,\n\t\t\t\tDA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */,\n\t\t\t\tDA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */,\n\t\t\t\t1F118CD51BDCA4AB005013A2 /* Quick.framework */,\n\t\t\t\t1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */,\n\t\t\t\t1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B901943873100289F44 /* Quick */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA169E4619FF5DF100619816 /* Configuration */,\n\t\t\t\tDA3124E119FCAEE8002858A7 /* DSL */,\n\t\t\t\tDA408BDE19FF5599005DF92A /* Hooks */,\n\t\t\t\tDAEB6B931943873100289F44 /* Quick.h */,\n\t\t\t\t34F375A619515CA700CE1B99 /* World.swift */,\n\t\t\t\tDAED1EC21B1105BC006F61EC /* World.h */,\n\t\t\t\t34F3759E19515CA700CE1B99 /* Example.swift */,\n\t\t\t\tDA02C91819A8073100093156 /* ExampleMetadata.swift */,\n\t\t\t\t34F3759F19515CA700CE1B99 /* ExampleGroup.swift */,\n\t\t\t\t34F3759C19515CA700CE1B99 /* Callsite.swift */,\n\t\t\t\tDA6B30171A4DB0D500FFB148 /* Filter.swift */,\n\t\t\t\t34F375A419515CA700CE1B99 /* QuickSpec.h */,\n\t\t\t\t34F375A519515CA700CE1B99 /* QuickSpec.m */,\n\t\t\t\tCE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */,\n\t\t\t\tCE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */,\n\t\t\t\tCE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */,\n\t\t\t\t34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */,\n\t\t\t\t34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */,\n\t\t\t\tCE57CEDB1C430BD200D63004 /* String+FileName.swift */,\n\t\t\t\tCE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */,\n\t\t\t\t34C586071C4AC5E500D4F057 /* ErrorUtility.swift */,\n\t\t\t\tDAEB6B911943873100289F44 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = Quick;\n\t\t\tpath = Sources/Quick;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B911943873100289F44 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B921943873100289F44 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B9D1943873100289F44 /* QuickTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */,\n\t\t\t\tDA8F919419F31680006F6675 /* Helpers */,\n\t\t\t\tDAEB6BCD194387D700289F44 /* Fixtures */,\n\t\t\t\tDA8F919B19F3189D006F6675 /* FunctionalTests */,\n\t\t\t\tF8100E941A1E4469007595ED /* Frameworks */,\n\t\t\t\tDAEB6B9E1943873100289F44 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = QuickTests;\n\t\t\tpath = Sources/QuickTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B9E1943873100289F44 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B9F1943873100289F44 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6BCD194387D700289F44 /* Fixtures */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */,\n\t\t\t);\n\t\t\tpath = Fixtures;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF8100E941A1E4469007595ED /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8100E901A1E4447007595ED /* Nimble.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F118CD21BDCA4AB005013A2 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D2B1BDCA5B6005013A2 /* Quick.h in Headers */,\n\t\t\t\t1F118D261BDCA5AF005013A2 /* World+DSL.h in Headers */,\n\t\t\t\t96327C651C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\t1F118D271BDCA5AF005013A2 /* World.h in Headers */,\n\t\t\t\t1F118D2A1BDCA5B6005013A2 /* QCKDSL.h in Headers */,\n\t\t\t\t1F118D2C1BDCA5B6005013A2 /* QuickSpec.h in Headers */,\n\t\t\t\t1F118D281BDCA5AF005013A2 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\t1F118D291BDCA5B6005013A2 /* QuickConfiguration.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117919473F2100F6D13D /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t34F375B019515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\tDAE714FF19FF6A62005905B8 /* QuickConfiguration.h in Headers */,\n\t\t\t\t96327C641C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\tDA3124E919FCAEE8002858A7 /* QCKDSL.h in Headers */,\n\t\t\t\tDAED1ECB1B110699006F61EC /* World+DSL.h in Headers */,\n\t\t\t\tDAED1EC51B1105BC006F61EC /* World.h in Headers */,\n\t\t\t\t34F375B819515CA700CE1B99 /* QuickSpec.h in Headers */,\n\t\t\t\t5A5D11A7194740E000F6D13D /* Quick.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8B1943873100289F44 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t34F375AF19515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\tDAE714FE19FF6A62005905B8 /* QuickConfiguration.h in Headers */,\n\t\t\t\t96327C631C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\tDA3124E819FCAEE8002858A7 /* QCKDSL.h in Headers */,\n\t\t\t\tDAED1ECA1B110699006F61EC /* World+DSL.h in Headers */,\n\t\t\t\tDAED1EC41B1105BC006F61EC /* World.h in Headers */,\n\t\t\t\t34F375B719515CA700CE1B99 /* QuickSpec.h in Headers */,\n\t\t\t\tDAEB6B941943873100289F44 /* Quick.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F118CD41BDCA4AB005013A2 /* Quick-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CE61BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CD01BDCA4AB005013A2 /* Sources */,\n\t\t\t\t1F118CD11BDCA4AB005013A2 /* Frameworks */,\n\t\t\t\t1F118CD21BDCA4AB005013A2 /* Headers */,\n\t\t\t\t1F118CD31BDCA4AB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-tvOS\";\n\t\t\tproductName = \"Quick-tvOS\";\n\t\t\tproductReference = 1F118CD51BDCA4AB005013A2 /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F118CDD1BDCA4AB005013A2 /* Quick-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CE91BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CDA1BDCA4AB005013A2 /* Sources */,\n\t\t\t\t1F118CDB1BDCA4AB005013A2 /* Frameworks */,\n\t\t\t\t1F118CDC1BDCA4AB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F118CE11BDCA4AB005013A2 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-tvOSTests\";\n\t\t\tproductName = \"Quick-tvOSTests\";\n\t\t\tproductReference = 1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F118CEF1BDCA4BB005013A2 /* QuickFocused-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CF81BDCA4BC005013A2 /* Build configuration list for PBXNativeTarget \"QuickFocused-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CEC1BDCA4BB005013A2 /* Sources */,\n\t\t\t\t1F118CED1BDCA4BB005013A2 /* Frameworks */,\n\t\t\t\t1F118CEE1BDCA4BB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F118CF71BDCA4BB005013A2 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-tvOSTests\";\n\t\t\tproductName = \"QuickFocused-tvOSTests\";\n\t\t\tproductReference = 1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t5A5D117B19473F2100F6D13D /* Quick-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 5A5D119319473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t5A5D117719473F2100F6D13D /* Sources */,\n\t\t\t\t5A5D117819473F2100F6D13D /* Frameworks */,\n\t\t\t\t5A5D117919473F2100F6D13D /* Headers */,\n\t\t\t\t5A5D117A19473F2100F6D13D /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-iOS\";\n\t\t\tproductName = \"Quick-iOS\";\n\t\t\tproductReference = 5A5D117C19473F2100F6D13D /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t5A5D118519473F2100F6D13D /* Quick-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 5A5D119419473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t5A5D118219473F2100F6D13D /* Sources */,\n\t\t\t\t5A5D118319473F2100F6D13D /* Frameworks */,\n\t\t\t\t5A5D118419473F2100F6D13D /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t5A5D118919473F2100F6D13D /* PBXTargetDependency */,\n\t\t\t\t5A5D11F0194741B500F6D13D /* PBXTargetDependency */,\n\t\t\t\t5A5D11F2194741B500F6D13D /* PBXTargetDependency */,\n\t\t\t\t04DC97E9194B4B7E00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97EB194B4B9B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F3194B82DE00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F7194B831200CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FB194B834100CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FF194B835E00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9803194B836300CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9807194B838700CE00B6 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-iOSTests\";\n\t\t\tproductName = \"Quick-iOSTests\";\n\t\t\tproductReference = 5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDA5663E71A4C8D8500193C88 /* QuickFocused-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DA5663F31A4C8D8500193C88 /* Build configuration list for PBXNativeTarget \"QuickFocused-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDA5663E41A4C8D8500193C88 /* Sources */,\n\t\t\t\tDA5663E51A4C8D8500193C88 /* Frameworks */,\n\t\t\t\tDA5663E61A4C8D8500193C88 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDA5663F01A4C8D8500193C88 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-OSXTests\";\n\t\t\tproductName = \"QuickFocused-OSXTests\";\n\t\t\tproductReference = DA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDA9876B11A4C70EB0004AA17 /* QuickFocused-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DA9876BD1A4C70EB0004AA17 /* Build configuration list for PBXNativeTarget \"QuickFocused-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDA9876AE1A4C70EB0004AA17 /* Sources */,\n\t\t\t\tDA9876AF1A4C70EB0004AA17 /* Frameworks */,\n\t\t\t\tDA9876B01A4C70EB0004AA17 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDA9876BA1A4C70EB0004AA17 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-iOSTests\";\n\t\t\tproductName = \"QuickFocused-iOSTests\";\n\t\t\tproductReference = DA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDAEB6B8D1943873100289F44 /* Quick-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DAEB6BA41943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDAEB6B891943873100289F44 /* Sources */,\n\t\t\t\tDAEB6B8A1943873100289F44 /* Frameworks */,\n\t\t\t\tDAEB6B8B1943873100289F44 /* Headers */,\n\t\t\t\tDAEB6B8C1943873100289F44 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-OSX\";\n\t\t\tproductName = Quick;\n\t\t\tproductReference = DAEB6B8E1943873100289F44 /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tDAEB6B981943873100289F44 /* Quick-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DAEB6BA71943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDAEB6B951943873100289F44 /* Sources */,\n\t\t\t\tDAEB6B961943873100289F44 /* Frameworks */,\n\t\t\t\tDAEB6B971943873100289F44 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDAEB6B9C1943873100289F44 /* PBXTargetDependency */,\n\t\t\t\t047655521949F4CB00B288BB /* PBXTargetDependency */,\n\t\t\t\t047655541949F4CB00B288BB /* PBXTargetDependency */,\n\t\t\t\t04765556194A327000B288BB /* PBXTargetDependency */,\n\t\t\t\t04DC97E5194B4A6000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97E7194B4A6000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F1194B82DB00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F9194B834000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FD194B834B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9801194B836100CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9805194B838400CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9809194B838B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t93625F391951DDC8006B1FE1 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-OSXTests\";\n\t\t\tproductName = QuickTests;\n\t\t\tproductReference = DAEB6B991943873100289F44 /* Quick-OSXTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tDAEB6B851943873100289F44 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0710;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = \"Brian Ivan Gesiak\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F118CD41BDCA4AB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F118CDD1BDCA4AB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F118CEF1BDCA4BB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t5A5D117B19473F2100F6D13D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t5A5D118519473F2100F6D13D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 5A5D117B19473F2100F6D13D;\n\t\t\t\t\t};\n\t\t\t\t\tDA5663E71A4C8D8500193C88 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDA9876B11A4C70EB0004AA17 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDAEB6B8D1943873100289F44 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDAEB6B981943873100289F44 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = DAEB6B8D1943873100289F44;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = DAEB6B881943873100289F44 /* Build configuration list for PBXProject \"Quick\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = DAEB6B841943873100289F44;\n\t\t\tproductRefGroup = DAEB6B8F1943873100289F44 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tDAEB6B8D1943873100289F44 /* Quick-OSX */,\n\t\t\t\tDAEB6B981943873100289F44 /* Quick-OSXTests */,\n\t\t\t\tDA5663E71A4C8D8500193C88 /* QuickFocused-OSXTests */,\n\t\t\t\t5A5D117B19473F2100F6D13D /* Quick-iOS */,\n\t\t\t\t5A5D118519473F2100F6D13D /* Quick-iOSTests */,\n\t\t\t\tDA9876B11A4C70EB0004AA17 /* QuickFocused-iOSTests */,\n\t\t\t\t1F118CD41BDCA4AB005013A2 /* Quick-tvOS */,\n\t\t\t\t1F118CDD1BDCA4AB005013A2 /* Quick-tvOSTests */,\n\t\t\t\t1F118CEF1BDCA4BB005013A2 /* QuickFocused-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F118CD31BDCA4AB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDC1BDCA4AB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CEE1BDCA4BB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117A19473F2100F6D13D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118419473F2100F6D13D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E61A4C8D8500193C88 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876B01A4C70EB0004AA17 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8C1943873100289F44 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B971943873100289F44 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F118CD01BDCA4AB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C681C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t1F118D031BDCA536005013A2 /* World.swift in Sources */,\n\t\t\t\tCE590E201C431FE400253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\t1F118CFC1BDCA536005013A2 /* Configuration.swift in Sources */,\n\t\t\t\t1F118D021BDCA536005013A2 /* SuiteHooks.swift in Sources */,\n\t\t\t\t1F118CFB1BDCA536005013A2 /* QuickConfiguration.m in Sources */,\n\t\t\t\t34C5860A1C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\t1F118D041BDCA536005013A2 /* Example.swift in Sources */,\n\t\t\t\t1F118CFF1BDCA536005013A2 /* QCKDSL.m in Sources */,\n\t\t\t\tCE590E211C431FE400253D19 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\t1F118D071BDCA536005013A2 /* Callsite.swift in Sources */,\n\t\t\t\tCE590E231C431FE400253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\t1F118D081BDCA536005013A2 /* Filter.swift in Sources */,\n\t\t\t\t1F118CFD1BDCA536005013A2 /* World+DSL.swift in Sources */,\n\t\t\t\tCE590E221C431FE400253D19 /* String+FileName.swift in Sources */,\n\t\t\t\t1F118D0A1BDCA536005013A2 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\t1F118CFE1BDCA536005013A2 /* DSL.swift in Sources */,\n\t\t\t\t7B44ADC01C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\t1F118D001BDCA536005013A2 /* Closures.swift in Sources */,\n\t\t\t\t1F118D051BDCA536005013A2 /* ExampleMetadata.swift in Sources */,\n\t\t\t\t1F118D061BDCA536005013A2 /* ExampleGroup.swift in Sources */,\n\t\t\t\tCE590E1F1C431FE400253D19 /* QuickTestSuite.swift in Sources */,\n\t\t\t\t1F118D091BDCA536005013A2 /* QuickSpec.m in Sources */,\n\t\t\t\t1F118D011BDCA536005013A2 /* ExampleHooks.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDA1BDCA4AB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D381BDCA6E1005013A2 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\t1F118D121BDCA556005013A2 /* ItTests.swift in Sources */,\n\t\t\t\t1F118D1C1BDCA556005013A2 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\t1F118D1D1BDCA556005013A2 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t1F118D0E1BDCA547005013A2 /* QCKSpecRunner.m in Sources */,\n\t\t\t\t1F118D141BDCA556005013A2 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\t1F118D0F1BDCA54B005013A2 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\t1F118D101BDCA556005013A2 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\t1F118D1F1BDCA556005013A2 /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t1F118D1A1BDCA556005013A2 /* PendingTests.swift in Sources */,\n\t\t\t\t1F118D171BDCA556005013A2 /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D231BDCA556005013A2 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D151BDCA556005013A2 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t1F118D131BDCA556005013A2 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t1F118D191BDCA556005013A2 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D221BDCA556005013A2 /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tAE4E58171C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8651CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t1F118D211BDCA556005013A2 /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\t1F118D201BDCA556005013A2 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\t1F118D0C1BDCA543005013A2 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\t1F118D391BDCA6E6005013A2 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\t1F118D181BDCA556005013A2 /* AfterEachTests.swift in Sources */,\n\t\t\t\t1F118D1B1BDCA556005013A2 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\t34C586051C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A591C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t1F118D1E1BDCA556005013A2 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t1F118D111BDCA556005013A2 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\t1F118D161BDCA556005013A2 /* BeforeEachTests.swift in Sources */,\n\t\t\t\t7B5358D01C3D4FC000A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CEC1BDCA4BB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D0D1BDCA547005013A2 /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586061C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F118D241BDCA561005013A2 /* FocusedTests.swift in Sources */,\n\t\t\t\t1F118D251BDCA561005013A2 /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58181C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117719473F2100F6D13D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C671C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t34F375B219515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\tCE590E1B1C431FE300253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\tDA3124EB19FCAEE8002858A7 /* QCKDSL.m in Sources */,\n\t\t\t\tDA408BE319FF5599005DF92A /* Closures.swift in Sources */,\n\t\t\t\tDA02C91A19A8073100093156 /* ExampleMetadata.swift in Sources */,\n\t\t\t\t34C586091C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\tDA408BE719FF5599005DF92A /* SuiteHooks.swift in Sources */,\n\t\t\t\t34F375BA19515CA700CE1B99 /* QuickSpec.m in Sources */,\n\t\t\t\tCE590E1C1C431FE300253D19 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\tDAE7150119FF6A62005905B8 /* QuickConfiguration.m in Sources */,\n\t\t\t\tCE590E1E1C431FE300253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\t34F375A819515CA700CE1B99 /* Callsite.swift in Sources */,\n\t\t\t\t34F375AE19515CA700CE1B99 /* ExampleGroup.swift in Sources */,\n\t\t\t\tCE590E1D1C431FE300253D19 /* String+FileName.swift in Sources */,\n\t\t\t\t34F375BC19515CA700CE1B99 /* World.swift in Sources */,\n\t\t\t\tDA169E4919FF5DF100619816 /* Configuration.swift in Sources */,\n\t\t\t\t7B44ADBF1C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\tDA3124ED19FCAEE8002858A7 /* World+DSL.swift in Sources */,\n\t\t\t\tDA408BE519FF5599005DF92A /* ExampleHooks.swift in Sources */,\n\t\t\t\t34F375AC19515CA700CE1B99 /* Example.swift in Sources */,\n\t\t\t\tCE590E1A1C431FE300253D19 /* QuickTestSuite.swift in Sources */,\n\t\t\t\tDA3124E719FCAEE8002858A7 /* DSL.swift in Sources */,\n\t\t\t\tDA6B30191A4DB0D500FFB148 /* Filter.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118219473F2100F6D13D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDAE714F819FF6812005905B8 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\tDAA7C0D719F777EB0093D1D9 /* BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F919A19F31680006F6675 /* QCKSpecRunner.m in Sources */,\n\t\t\t\tDA8940F11B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t4728253C1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F119FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA05D61119F73A3800771050 /* AfterEachTests.swift in Sources */,\n\t\t\t\tDAB0137019FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F91A619F3208B006F6675 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\tDA8C00221A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\tDAA63EA419F7637300CD0A3B /* PendingTests.swift in Sources */,\n\t\t\t\tDA8F91AC19F3299E006F6675 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\tDA7AE6F219FC493F000AFDCE /* ItTests.swift in Sources */,\n\t\t\t\t4748E8951A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\tDA8F91AF19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\tDAE714FB19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\tAE4E58151C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8641CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t471590411A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\tDA8F919E19F31921006F6675 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F419FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\tDA8F91A919F32556006F6675 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t4772173B1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t479C31E41A36172700DA8718 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t34C586031C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A581C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t47FAEA371A3F49EB005A1D2F /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t470D6ECC1A43442900043E50 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t47876F7E1A49AD71002575C7 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t7B5358CF1C3D4FBE00A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E41A4C8D8500193C88 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA07722E1A4E5B7B0098839D /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586021C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\tDA5663F41A4C8D9A00193C88 /* FocusedTests.swift in Sources */,\n\t\t\t\tDAF28BC31A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58141C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876AE1A4C70EB0004AA17 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA07722F1A4E5B7C0098839D /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586041C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\tDA9876C11A4C87200004AA17 /* FocusedTests.swift in Sources */,\n\t\t\t\tDAF28BC41A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58161C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B891943873100289F44 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C661C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t34F375B119515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\tCE57CEDE1C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\tDA3124EA19FCAEE8002858A7 /* QCKDSL.m in Sources */,\n\t\t\t\tDA408BE219FF5599005DF92A /* Closures.swift in Sources */,\n\t\t\t\tCE57CEDD1C430BD200D63004 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\tDA02C91919A8073100093156 /* ExampleMetadata.swift in Sources */,\n\t\t\t\tCE57CEDF1C430BD200D63004 /* QuickTestSuite.swift in Sources */,\n\t\t\t\t34C586081C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\tDA408BE619FF5599005DF92A /* SuiteHooks.swift in Sources */,\n\t\t\t\t34F375B919515CA700CE1B99 /* QuickSpec.m in Sources */,\n\t\t\t\tCE57CEE11C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\tDAE7150019FF6A62005905B8 /* QuickConfiguration.m in Sources */,\n\t\t\t\t34F375A719515CA700CE1B99 /* Callsite.swift in Sources */,\n\t\t\t\tCE57CEE01C430BD200D63004 /* String+FileName.swift in Sources */,\n\t\t\t\t34F375AD19515CA700CE1B99 /* ExampleGroup.swift in Sources */,\n\t\t\t\t34F375BB19515CA700CE1B99 /* World.swift in Sources */,\n\t\t\t\tDA169E4819FF5DF100619816 /* Configuration.swift in Sources */,\n\t\t\t\t7B44ADBE1C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\tDA3124EC19FCAEE8002858A7 /* World+DSL.swift in Sources */,\n\t\t\t\tDA408BE419FF5599005DF92A /* ExampleHooks.swift in Sources */,\n\t\t\t\t34F375AB19515CA700CE1B99 /* Example.swift in Sources */,\n\t\t\t\tDA3124E619FCAEE8002858A7 /* DSL.swift in Sources */,\n\t\t\t\tDA6B30181A4DB0D500FFB148 /* Filter.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B951943873100289F44 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDAE714F719FF6812005905B8 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\tDAB067E919F7801C00F970AC /* BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F919919F31680006F6675 /* QCKSpecRunner.m in Sources */,\n\t\t\t\tDA8940F01B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t4728253B1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F019FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA05D61019F73A3800771050 /* AfterEachTests.swift in Sources */,\n\t\t\t\tDAB0136F19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F91A519F3208B006F6675 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\tDA8C00211A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\tDAA63EA319F7637300CD0A3B /* PendingTests.swift in Sources */,\n\t\t\t\tDA8F91AB19F3299E006F6675 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\tDA7AE6F119FC493F000AFDCE /* ItTests.swift in Sources */,\n\t\t\t\t4748E8941A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\tDA8F91AE19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\tDAE714FA19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\tAE4E58131C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8631CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t471590401A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\tDA8F919D19F31921006F6675 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F319FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\tDA8F91A819F32556006F6675 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t4772173A1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t479C31E31A36171B00DA8718 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t34C586011C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A571C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t47FAEA361A3F49E6005A1D2F /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t470D6ECB1A43442400043E50 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t47876F7D1A49AD63002575C7 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t7B5358CE1C3D4FBC00A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t047655521949F4CB00B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 047655511949F4CB00B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t047655541949F4CB00B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 047655531949F4CB00B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t04765556194A327000B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04765555194A327000B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E5194B4A6000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97E4194B4A6000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E7194B4A6000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97E6194B4A6000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E9194B4B7E00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97E8194B4B7E00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97EB194B4B9B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97EA194B4B9B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F1194B82DB00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97F0194B82DB00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F3194B82DE00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97F2194B82DE00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F7194B831200CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97F6194B831200CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F9194B834000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97F8194B834000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FB194B834100CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97FA194B834100CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FD194B834B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97FC194B834B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FF194B835E00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97FE194B835E00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9801194B836100CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9800194B836100CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9803194B836300CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC9802194B836300CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9805194B838400CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9804194B838400CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9807194B838700CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC9806194B838700CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9809194B838B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9808194B838B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F118CE11BDCA4AB005013A2 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F118CD41BDCA4AB005013A2 /* Quick-tvOS */;\n\t\t\ttargetProxy = 1F118CE01BDCA4AB005013A2 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F118CF71BDCA4BB005013A2 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F118CD41BDCA4AB005013A2 /* Quick-tvOS */;\n\t\t\ttargetProxy = 1F118CF61BDCA4BB005013A2 /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D118919473F2100F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D118819473F2100F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D11F0194741B500F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D11EF194741B500F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D11F2194741B500F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D11F1194741B500F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t93625F391951DDC8006B1FE1 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 93625F381951DDC8006B1FE1 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDA5663F01A4C8D8500193C88 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = DA5663EF1A4C8D8500193C88 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDA9876BA1A4C70EB0004AA17 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = DA9876B91A4C70EB0004AA17 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDAEB6B9C1943873100289F44 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = DAEB6B9B1943873100289F44 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F118CE71BDCA4AB005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CE81BDCA4AB005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F118CEA1BDCA4AB005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CEB1BDCA4AB005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F118CF91BDCA4BC005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CFA1BDCA4BC005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t5A5D118F19473F2100F6D13D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t5A5D119019473F2100F6D13D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t5A5D119119473F2100F6D13D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t5A5D119219473F2100F6D13D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDA5663F11A4C8D8500193C88 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDA5663F21A4C8D8500193C88 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDA9876BB1A4C70EB0004AA17 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDA9876BC1A4C70EB0004AA17 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA21943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA31943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA51943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA61943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA81943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA91943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F118CE61BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CE71BDCA4AB005013A2 /* Debug */,\n\t\t\t\t1F118CE81BDCA4AB005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F118CE91BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CEA1BDCA4AB005013A2 /* Debug */,\n\t\t\t\t1F118CEB1BDCA4AB005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F118CF81BDCA4BC005013A2 /* Build configuration list for PBXNativeTarget \"QuickFocused-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CF91BDCA4BC005013A2 /* Debug */,\n\t\t\t\t1F118CFA1BDCA4BC005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t5A5D119319473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t5A5D118F19473F2100F6D13D /* Debug */,\n\t\t\t\t5A5D119019473F2100F6D13D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t5A5D119419473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t5A5D119119473F2100F6D13D /* Debug */,\n\t\t\t\t5A5D119219473F2100F6D13D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDA5663F31A4C8D8500193C88 /* Build configuration list for PBXNativeTarget \"QuickFocused-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDA5663F11A4C8D8500193C88 /* Debug */,\n\t\t\t\tDA5663F21A4C8D8500193C88 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDA9876BD1A4C70EB0004AA17 /* Build configuration list for PBXNativeTarget \"QuickFocused-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDA9876BB1A4C70EB0004AA17 /* Debug */,\n\t\t\t\tDA9876BC1A4C70EB0004AA17 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6B881943873100289F44 /* Build configuration list for PBXProject \"Quick\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA21943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA31943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6BA41943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA51943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA61943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6BA71943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA81943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA91943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = DAEB6B851943873100289F44 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Quick.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-OSX\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DAEB6B981943873100289F44\"\n               BuildableName = \"Quick-OSXTests.xctest\"\n               BlueprintName = \"Quick-OSXTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DA5663E71A4C8D8500193C88\"\n               BuildableName = \"QuickFocused-OSXTests.xctest\"\n               BlueprintName = \"QuickFocused-OSXTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-iOS\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"5A5D118519473F2100F6D13D\"\n               BuildableName = \"Quick-iOSTests.xctest\"\n               BlueprintName = \"Quick-iOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DA9876B11A4C70EB0004AA17\"\n               BuildableName = \"QuickFocused-iOSTests.xctest\"\n               BlueprintName = \"QuickFocused-iOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-tvOS\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CDD1BDCA4AB005013A2\"\n               BuildableName = \"Quick-tvOSTests.xctest\"\n               BlueprintName = \"Quick-tvOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CEF1BDCA4BB005013A2\"\n               BuildableName = \"QuickFocused-tvOSTests.xctest\"\n               BlueprintName = \"QuickFocused-tvOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Quick.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Quick.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Externals/Nimble/Nimble.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/README.md",
    "content": "![](http://f.cl.ly/items/0r1E192C1R0b2g2Q3h2w/QuickLogo_Color.png)\n\nQuick is a behavior-driven development framework for Swift and Objective-C.\nInspired by [RSpec](https://github.com/rspec/rspec), [Specta](https://github.com/specta/specta), and [Ginkgo](https://github.com/onsi/ginkgo).\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/QuickSpec%20screenshot.png)\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass TableOfContentsSpec: QuickSpec {\n  override func spec() {\n    describe(\"the 'Documentation' directory\") {\n      it(\"has everything you need to get started\") {\n        let sections = Directory(\"Documentation\").sections\n        expect(sections).to(contain(\"Organized Tests with Quick Examples and Example Groups\"))\n        expect(sections).to(contain(\"Installing Quick\"))\n      }\n\n      context(\"if it doesn't have what you're looking for\") {\n        it(\"needs to be updated\") {\n          let you = You(awesome: true)\n          expect{you.submittedAnIssue}.toEventually(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n#### Nimble\nQuick comes together with [Nimble](https://github.com/Quick/Nimble) — a matcher framework for your tests. You can learn why `XCTAssert()` statements make your expectations unclear and how to fix that using Nimble assertions [here](./Documentation/en-us/NimbleAssertions.md).\n\n## Documentation\n\nAll documentation can be found in the [Documentation folder](./Documentation), including [detailed installation instructions](./Documentation/en-us/InstallingQuick.md) for CocoaPods, Carthage, Git submodules, and more. For example, you can install Quick and [Nimble](https://github.com/Quick/Nimble) using CocoaPods by adding the following to your Podfile:\n\n```rb\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick'\n    pod 'Nimble'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\n## License\n\nApache 2.0 license. See the `LICENSE` file for details.\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Rakefile",
    "content": "def run(command)\n  system(command) or raise \"RAKE TASK FAILED: #{command}\"\nend\n\ndef has_xcodebuild\n  system \"which xcodebuild >/dev/null\"\nend\n\ndef xcode_action\n  ENV[\"XCODE_ACTION\"] || \"build test\"\nend\n\nnamespace \"podspec\" do\n  desc \"Run lint for podspec\"\n  task :lint do\n    run \"bundle exec pod lib lint\"\n  end\nend\n\nnamespace \"test\" do\n  desc \"Run unit tests for all iOS targets\"\n  task :ios do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-iOS -destination 'platform=iOS Simulator,name=iPhone 6' clean #{xcode_action}\"\n  end\n\n  desc \"Run unit tests for all tvOS targets\"\n  task :tvos do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-tvOS -destination 'platform=tvOS Simulator,name=Apple TV 1080p' clean #{xcode_action}\"\n  end\n\n  desc \"Run unit tests for all OS X targets\"\n  task :osx do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-OSX clean #{xcode_action}\"\n  end\n\n  desc \"Run unit tests for the current platform built by the Swift Package Manager\"\n  task :swiftpm do |t|\n    run \"swift build --clean && swift build\"\n    run \".build/debug/QuickTests\"\n    run \".build/debug/QuickFocusedTests\"\n  end\nend\n\nnamespace \"templates\" do\n  install_dir = File.expand_path(\"~/Library/Developer/Xcode/Templates/File Templates/Quick\")\n  src_dir = File.expand_path(\"../Quick Templates\", __FILE__)\n\n  desc \"Install Quick templates\"\n  task :install do\n    if File.exists? install_dir\n      raise \"RAKE TASK FAILED: Quick templates are already installed at #{install_dir}\"\n    else\n      mkdir_p install_dir\n      cp_r src_dir, install_dir\n    end\n  end\n\n  desc \"Uninstall Quick templates\"\n  task :uninstall do\n    rm_rf install_dir\n  end\nend\n\nif has_xcodebuild then\n  task default: [\"test:ios\", \"test:tvos\", \"test:osx\"]\nelse\n  task default: [\"test:swiftpm\"]\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Callsite.swift",
    "content": "import Foundation\n\n/**\n    An object encapsulating the file and line number at which\n    a particular example is defined.\n*/\nfinal public class Callsite: NSObject {\n    /**\n        The absolute path of the file in which an example is defined.\n    */\n    public let file: String\n\n    /**\n        The line number on which an example is defined.\n    */\n    public let line: UInt\n\n    internal init(file: String, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n}\n\n/**\n    Returns a boolean indicating whether two Callsite objects are equal.\n    If two callsites are in the same file and on the same line, they must be equal.\n*/\npublic func ==(lhs: Callsite, rhs: Callsite) -> Bool {\n    return lhs.file == rhs.file && lhs.line == rhs.line\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Configuration/Configuration.swift",
    "content": "import Foundation\n\n/**\n    A closure that temporarily exposes a Configuration object within\n    the scope of the closure.\n*/\npublic typealias QuickConfigurer = (configuration: Configuration) -> ()\n\n/**\n    A closure that, given metadata about an example, returns a boolean value\n    indicating whether that example should be run.\n*/\npublic typealias ExampleFilter = (example: Example) -> Bool\n\n/**\n    A configuration encapsulates various options you can use\n    to configure Quick's behavior.\n*/\nfinal public class Configuration: NSObject {\n    internal let exampleHooks = ExampleHooks()\n    internal let suiteHooks = SuiteHooks()\n    internal var exclusionFilters: [ExampleFilter] = [{ example in\n        if let pending = example.filterFlags[Filter.pending] {\n            return pending\n        } else {\n            return false\n        }\n    }]\n    internal var inclusionFilters: [ExampleFilter] = [{ example in\n        if let focused = example.filterFlags[Filter.focused] {\n            return focused\n        } else {\n            return false\n        }\n    }]\n\n    /**\n        Run all examples if none match the configured filters. True by default.\n    */\n    public var runAllWhenEverythingFiltered = true\n\n    /**\n        Registers an inclusion filter.\n\n        All examples are filtered using all inclusion filters.\n        The remaining examples are run. If no examples remain, all examples are run.\n\n        - parameter filter: A filter that, given an example, returns a value indicating\n                       whether that example should be included in the examples\n                       that are run.\n    */\n    public func include(filter: ExampleFilter) {\n        inclusionFilters.append(filter)\n    }\n\n    /**\n        Registers an exclusion filter.\n\n        All examples that remain after being filtered by the inclusion filters are\n        then filtered via all exclusion filters.\n\n        - parameter filter: A filter that, given an example, returns a value indicating\n                       whether that example should be excluded from the examples\n                       that are run.\n    */\n    public func exclude(filter: ExampleFilter) {\n        exclusionFilters.append(filter)\n    }\n\n    /**\n        Identical to Quick.Configuration.beforeEach, except the closure is\n        provided with metadata on the example that the closure is being run\n        prior to.\n    */\n#if _runtime(_ObjC)\n    @objc(beforeEachWithMetadata:)\n    public func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n#else\n    public func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n#endif\n\n    /**\n        Like Quick.DSL.beforeEach, this configures Quick to execute the\n        given closure before each example that is run. The closure\n        passed to this method is executed before each example Quick runs,\n        globally across the test suite. You may call this method multiple\n        times across mulitple +[QuickConfigure configure:] methods in order\n        to define several closures to run before each example.\n\n        Note that, since Quick makes no guarantee as to the order in which\n        +[QuickConfiguration configure:] methods are evaluated, there is no\n        guarantee as to the order in which beforeEach closures are evaluated\n        either. Mulitple beforeEach defined on a single configuration, however,\n        will be executed in the order they're defined.\n\n        - parameter closure: The closure to be executed before each example\n                        in the test suite.\n    */\n    public func beforeEach(closure: BeforeExampleClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n\n    /**\n        Identical to Quick.Configuration.afterEach, except the closure\n        is provided with metadata on the example that the closure is being\n        run after.\n    */\n#if _runtime(_ObjC)\n    @objc(afterEachWithMetadata:)\n    public func afterEach(closure: AfterExampleWithMetadataClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n#else\n    public func afterEach(closure: AfterExampleWithMetadataClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n#endif\n\n    /**\n        Like Quick.DSL.afterEach, this configures Quick to execute the\n        given closure after each example that is run. The closure\n        passed to this method is executed after each example Quick runs,\n        globally across the test suite. You may call this method multiple\n        times across mulitple +[QuickConfigure configure:] methods in order\n        to define several closures to run after each example.\n\n        Note that, since Quick makes no guarantee as to the order in which\n        +[QuickConfiguration configure:] methods are evaluated, there is no\n        guarantee as to the order in which afterEach closures are evaluated\n        either. Mulitple afterEach defined on a single configuration, however,\n        will be executed in the order they're defined.\n\n        - parameter closure: The closure to be executed before each example\n                        in the test suite.\n    */\n    public func afterEach(closure: AfterExampleClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n\n    /**\n        Like Quick.DSL.beforeSuite, this configures Quick to execute\n        the given closure prior to any and all examples that are run.\n        The two methods are functionally equivalent.\n    */\n    public func beforeSuite(closure: BeforeSuiteClosure) {\n        suiteHooks.appendBefore(closure)\n    }\n\n    /**\n        Like Quick.DSL.afterSuite, this configures Quick to execute\n        the given closure after all examples have been run.\n        The two methods are functionally equivalent.\n    */\n    public func afterSuite(closure: AfterSuiteClosure) {\n        suiteHooks.appendAfter(closure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class Configuration;\n\n/**\n Subclass QuickConfiguration and override the +[QuickConfiguration configure:]\n method in order to configure how Quick behaves when running specs, or to define\n shared examples that are used across spec files.\n */\n@interface QuickConfiguration : NSObject\n\n/**\n This method is executed on each subclass of this class before Quick runs\n any examples. You may override this method on as many subclasses as you like, but\n there is no guarantee as to the order in which these methods are executed.\n\n You can override this method in order to:\n\n 1. Configure how Quick behaves, by modifying properties on the Configuration object.\n    Setting the same properties in several methods has undefined behavior.\n\n 2. Define shared examples using `sharedExamples`.\n\n @param configuration A mutable object that is used to configure how Quick behaves on\n                      a framework level. For details on all the options, see the\n                      documentation in Configuration.swift.\n */\n+ (void)configure:(Configuration *)configuration;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.m",
    "content": "#import \"QuickConfiguration.h\"\n#import \"World.h\"\n#import <objc/runtime.h>\n\ntypedef void (^QCKClassEnumerationBlock)(Class klass);\n\n/**\n Finds all direct subclasses of the given class and passes them to the block provided.\n The classes are iterated over in the order that objc_getClassList returns them.\n\n @param klass The base class to find subclasses of.\n @param block A block that takes a Class. This block will be executed once for each subclass of klass.\n */\nvoid qck_enumerateSubclasses(Class klass, QCKClassEnumerationBlock block) {\n    Class *classes = NULL;\n    int classesCount = objc_getClassList(NULL, 0);\n\n    if (classesCount > 0) {\n        classes = (Class *)calloc(sizeof(Class), classesCount);\n        classesCount = objc_getClassList(classes, classesCount);\n\n        Class subclass, superclass;\n        for(int i = 0; i < classesCount; i++) {\n            subclass = classes[i];\n            superclass = class_getSuperclass(subclass);\n            if (superclass == klass && block) {\n                block(subclass);\n            }\n        }\n\n        free(classes);\n    }\n}\n\n@implementation QuickConfiguration\n\n#pragma mark - Object Lifecycle\n\n/**\n QuickConfiguration is not meant to be instantiated; it merely provides a hook\n for users to configure how Quick behaves. Raise an exception if an instance of\n QuickConfiguration is created.\n */\n- (instancetype)init {\n    NSString *className = NSStringFromClass([self class]);\n    NSString *selectorName = NSStringFromSelector(@selector(configure:));\n    [NSException raise:NSInternalInconsistencyException\n                format:@\"%@ is not meant to be instantiated; \"\n     @\"subclass %@ and override %@ to configure Quick.\",\n     className, className, selectorName];\n    return nil;\n}\n\n#pragma mark - NSObject Overrides\n\n/**\n Hook into when QuickConfiguration is initialized in the runtime in order to\n call +[QuickConfiguration configure:] on each of its subclasses.\n */\n+ (void)initialize {\n    // Only enumerate over the subclasses of QuickConfiguration, not any of its subclasses.\n    if ([self class] == [QuickConfiguration class]) {\n\n        // Only enumerate over subclasses once, even if +[QuickConfiguration initialize]\n        // were to be called several times. This is necessary because +[QuickSpec initialize]\n        // manually calls +[QuickConfiguration initialize].\n        static dispatch_once_t onceToken;\n        dispatch_once(&onceToken, ^{\n            qck_enumerateSubclasses([QuickConfiguration class], ^(__unsafe_unretained Class klass) {\n                [[World sharedWorld] configure:^(Configuration *configuration) {\n                    [klass configure:configuration];\n                }];\n            });\n            [[World sharedWorld] finalizeConfiguration];\n        });\n    }\n}\n\n#pragma mark - Public Interface\n\n+ (void)configure:(Configuration *)configuration { }\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\npublic class QuickConfiguration {\n    public class func configure(configuration: Configuration) {}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/DSL/DSL.swift",
    "content": "/**\n    Defines a closure to be run prior to any examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n\n    If the test suite crashes before the first example is run, this closure\n    will not be executed.\n\n    - parameter closure: The closure to be run prior to any examples in the test suite.\n*/\npublic func beforeSuite(closure: BeforeSuiteClosure) {\n    World.sharedWorld.beforeSuite(closure)\n}\n\n/**\n    Defines a closure to be run after all of the examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n\n    If the test suite crashes before all examples are run, this closure\n    will not be executed.\n\n    - parameter closure: The closure to be run after all of the examples in the test suite.\n*/\npublic func afterSuite(closure: AfterSuiteClosure) {\n    World.sharedWorld.afterSuite(closure)\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n\n    - parameter name: The name of the shared example group. This must be unique across all shared example\n                 groups defined in a test suite.\n    - parameter closure: A closure containing the examples. This behaves just like an example group defined\n                    using `describe` or `context`--the closure may contain any number of `beforeEach`\n                    and `afterEach` closures, as well as any number of examples (defined using `it`).\n*/\npublic func sharedExamples(name: String, closure: () -> ()) {\n    World.sharedWorld.sharedExamples(name, closure: { (NSDictionary) in closure() })\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n\n    - parameter name: The name of the shared example group. This must be unique across all shared example\n                 groups defined in a test suite.\n    - parameter closure: A closure containing the examples. This behaves just like an example group defined\n                    using `describe` or `context`--the closure may contain any number of `beforeEach`\n                    and `afterEach` closures, as well as any number of examples (defined using `it`).\n\n                    The closure takes a SharedExampleContext as an argument. This context is a function\n                    that can be executed to retrieve parameters passed in via an `itBehavesLike` function.\n*/\npublic func sharedExamples(name: String, closure: SharedExampleClosure) {\n    World.sharedWorld.sharedExamples(name, closure: closure)\n}\n\n/**\n    Defines an example group. Example groups are logical groupings of examples.\n    Example groups can share setup and teardown code.\n\n    - parameter description: An arbitrary string describing the example group.\n    - parameter closure: A closure that can contain other examples.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n*/\npublic func describe(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.describe(description, flags: flags, closure: closure)\n}\n\n/**\n    Defines an example group. Equivalent to `describe`.\n*/\npublic func context(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.context(description, flags: flags, closure: closure)\n}\n\n/**\n    Defines a closure to be run prior to each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of beforeEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n\n    - parameter closure: The closure to be run prior to each example.\n*/\npublic func beforeEach(closure: BeforeExampleClosure) {\n    World.sharedWorld.beforeEach(closure)\n}\n\n/**\n    Identical to Quick.DSL.beforeEach, except the closure is provided with\n    metadata on the example that the closure is being run prior to.\n*/\npublic func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n    World.sharedWorld.beforeEach(closure: closure)\n}\n\n/**\n    Defines a closure to be run after each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of afterEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n\n    - parameter closure: The closure to be run after each example.\n*/\npublic func afterEach(closure: AfterExampleClosure) {\n    World.sharedWorld.afterEach(closure)\n}\n\n/**\n    Identical to Quick.DSL.afterEach, except the closure is provided with\n    metadata on the example that the closure is being run after.\n*/\npublic func afterEach(closure: AfterExampleWithMetadataClosure) {\n    World.sharedWorld.afterEach(closure: closure)\n}\n\n/**\n    Defines an example. Examples use assertions to demonstrate how code should\n    behave. These are like \"tests\" in XCTest.\n\n    - parameter description: An arbitrary string describing what the example is meant to specify.\n    - parameter closure: A closure that can contain assertions.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the example. A sensible default is provided.\n    - parameter line: The line containing the example. A sensible default is provided.\n*/\npublic func it(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.it(description, flags: flags, file: file, line: line, closure: closure)\n}\n\n/**\n    Inserts the examples defined using a `sharedExamples` function into the current example group.\n    The shared examples are executed at this location, as if they were written out manually.\n\n    - parameter name: The name of the shared examples group to be executed. This must be identical to the\n                 name of a shared examples group defined using `sharedExamples`. If there are no shared\n                 examples that match the name given, an exception is thrown and the test suite will crash.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the current example group. A sensible default is provided.\n    - parameter line: The line containing the current example group. A sensible default is provided.\n*/\npublic func itBehavesLike(name: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line) {\n    itBehavesLike(name, flags: flags, file: file, line: line, sharedExampleContext: { return [:] })\n}\n\n/**\n    Inserts the examples defined using a `sharedExamples` function into the current example group.\n    The shared examples are executed at this location, as if they were written out manually.\n    This function also passes those shared examples a context that can be evaluated to give the shared\n    examples extra information on the subject of the example.\n\n    - parameter name: The name of the shared examples group to be executed. This must be identical to the\n                 name of a shared examples group defined using `sharedExamples`. If there are no shared\n                 examples that match the name given, an exception is thrown and the test suite will crash.\n    - parameter sharedExampleContext: A closure that, when evaluated, returns key-value pairs that provide the\n                                 shared examples with extra information on the subject of the example.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the current example group. A sensible default is provided.\n    - parameter line: The line containing the current example group. A sensible default is provided.\n*/\npublic func itBehavesLike(name: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, sharedExampleContext: SharedExampleContext) {\n    World.sharedWorld.itBehavesLike(name, sharedExampleContext: sharedExampleContext, flags: flags, file: file, line: line)\n}\n\n/**\n    Defines an example or example group that should not be executed. Use `pending` to temporarily disable\n    examples or groups that should not be run yet.\n\n    - parameter description: An arbitrary string describing the example or example group.\n    - parameter closure: A closure that will not be evaluated.\n*/\npublic func pending(description: String, closure: () -> ()) {\n    World.sharedWorld.pending(description, closure: closure)\n}\n\n/**\n    Use this to quickly mark a `describe` closure as pending.\n    This disables all examples within the closure.\n*/\npublic func xdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n    World.sharedWorld.xdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly mark a `context` closure as pending.\n    This disables all examples within the closure.\n*/\npublic func xcontext(description: String, flags: FilterFlags, closure: () -> ()) {\n    xdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly mark an `it` closure as pending.\n    This disables the example and ensures the code within the closure is never run.\n*/\npublic func xit(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.xit(description, flags: flags, file: file, line: line, closure: closure)\n}\n\n/**\n    Use this to quickly focus a `describe` closure, focusing the examples in the closure.\n    If any examples in the test suite are focused, only those examples are executed.\n    This trumps any explicitly focused or unfocused examples within the closure--they are all treated as focused.\n*/\npublic func fdescribe(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.fdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly focus a `context` closure. Equivalent to `fdescribe`.\n*/\npublic func fcontext(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    fdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly focus an `it` closure, focusing the example.\n    If any examples in the test suite are focused, only those examples are executed.\n*/\npublic func fit(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.fit(description, flags: flags, file: file, line: line, closure: closure)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/DSL/QCKDSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class ExampleMetadata;\n\n/**\n Provides a hook for Quick to be configured before any examples are run.\n Within this scope, override the +[QuickConfiguration configure:] method\n to set properties on a configuration object to customize Quick behavior.\n For details, see the documentation for Configuraiton.swift.\n\n @param name The name of the configuration class. Like any Objective-C\n             class name, this must be unique to the current runtime\n             environment.\n */\n#define QuickConfigurationBegin(name) \\\n    @interface name : QuickConfiguration; @end \\\n    @implementation name \\\n\n\n/**\n Marks the end of a Quick configuration.\n Make sure you put this after `QuickConfigurationBegin`.\n */\n#define QuickConfigurationEnd \\\n    @end \\\n\n\n/**\n Defines a new QuickSpec. Define examples and example groups within the space\n between this and `QuickSpecEnd`.\n\n @param name The name of the spec class. Like any Objective-C class name, this\n             must be unique to the current runtime environment.\n */\n#define QuickSpecBegin(name) \\\n    @interface name : QuickSpec; @end \\\n    @implementation name \\\n    - (void)spec { \\\n\n\n/**\n Marks the end of a QuickSpec. Make sure you put this after `QuickSpecBegin`.\n */\n#define QuickSpecEnd \\\n    } \\\n    @end \\\n\ntypedef NSDictionary *(^QCKDSLSharedExampleContext)(void);\ntypedef void (^QCKDSLSharedExampleBlock)(QCKDSLSharedExampleContext);\ntypedef void (^QCKDSLEmptyBlock)(void);\ntypedef void (^QCKDSLExampleMetadataBlock)(ExampleMetadata *exampleMetadata);\n\n#define QUICK_EXPORT FOUNDATION_EXPORT\n\nQUICK_EXPORT void qck_beforeSuite(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_afterSuite(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure);\nQUICK_EXPORT void qck_describe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_context(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_beforeEach(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure);\nQUICK_EXPORT void qck_afterEach(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_afterEachWithMetadata(QCKDSLExampleMetadataBlock closure);\nQUICK_EXPORT void qck_pending(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_xdescribe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_xcontext(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_fdescribe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_fcontext(NSString *description, QCKDSLEmptyBlock closure);\n\n#ifndef QUICK_DISABLE_SHORT_SYNTAX\n/**\n    Defines a closure to be run prior to any examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n \n    If the test suite crashes before the first example is run, this closure\n    will not be executed.\n \n    @param closure The closure to be run prior to any examples in the test suite.\n */\nstatic inline void beforeSuite(QCKDSLEmptyBlock closure) {\n    qck_beforeSuite(closure);\n}\n\n\n/**\n    Defines a closure to be run after all of the examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n     \n    If the test suite crashes before all examples are run, this closure\n    will not be executed.\n \n    @param closure The closure to be run after all of the examples in the test suite.\n */\nstatic inline void afterSuite(QCKDSLEmptyBlock closure) {\n    qck_afterSuite(closure);\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n \n    @param name The name of the shared example group. This must be unique across all shared example\n                groups defined in a test suite.\n    @param closure A closure containing the examples. This behaves just like an example group defined\n                   using `describe` or `context`--the closure may contain any number of `beforeEach`\n                   and `afterEach` closures, as well as any number of examples (defined using `it`).\n */\nstatic inline void sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure) {\n    qck_sharedExamples(name, closure);\n}\n\n/**\n    Defines an example group. Example groups are logical groupings of examples.\n    Example groups can share setup and teardown code.\n \n    @param description An arbitrary string describing the example group.\n    @param closure A closure that can contain other examples.\n */\nstatic inline void describe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_describe(description, closure);\n}\n\n/**\n    Defines an example group. Equivalent to `describe`.\n */\nstatic inline void context(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_context(description, closure);\n}\n\n/**\n    Defines a closure to be run prior to each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of beforeEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n \n    @param closure The closure to be run prior to each example.\n */\nstatic inline void beforeEach(QCKDSLEmptyBlock closure) {\n    qck_beforeEach(closure);\n}\n\n/**\n    Identical to QCKDSL.beforeEach, except the closure is provided with\n    metadata on the example that the closure is being run prior to.\n */\nstatic inline void beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    qck_beforeEachWithMetadata(closure);\n}\n\n/**\n    Defines a closure to be run after each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of afterEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n \n    @param closure The closure to be run after each example.\n */\nstatic inline void afterEach(QCKDSLEmptyBlock closure) {\n    qck_afterEach(closure);\n}\n\n/**\n    Identical to QCKDSL.afterEach, except the closure is provided with\n    metadata on the example that the closure is being run after.\n */\nstatic inline void afterEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    qck_afterEachWithMetadata(closure);\n}\n\n/**\n    Defines an example or example group that should not be executed. Use `pending` to temporarily disable\n    examples or groups that should not be run yet.\n \n    @param description An arbitrary string describing the example or example group.\n    @param closure A closure that will not be evaluated.\n */\nstatic inline void pending(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_pending(description, closure);\n}\n\n/**\n    Use this to quickly mark a `describe` block as pending.\n    This disables all examples within the block.\n */\nstatic inline void xdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xdescribe(description, closure);\n}\n\n/**\n    Use this to quickly mark a `context` block as pending.\n    This disables all examples within the block.\n */\nstatic inline void xcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xcontext(description, closure);\n}\n\n/**\n    Use this to quickly focus a `describe` block, focusing the examples in the block.\n    If any examples in the test suite are focused, only those examples are executed.\n    This trumps any explicitly focused or unfocused examples within the block--they are all treated as focused.\n */\nstatic inline void fdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fdescribe(description, closure);\n}\n\n/**\n    Use this to quickly focus a `context` block. Equivalent to `fdescribe`.\n */\nstatic inline void fcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fcontext(description, closure);\n}\n\n#define it qck_it\n#define xit qck_xit\n#define fit qck_fit\n#define itBehavesLike qck_itBehavesLike\n#define xitBehavesLike qck_xitBehavesLike\n#define fitBehavesLike qck_fitBehavesLike\n#endif\n\n#define qck_it qck_it_builder(@{}, @(__FILE__), __LINE__)\n#define qck_xit qck_it_builder(@{Filter.pending: @YES}, @(__FILE__), __LINE__)\n#define qck_fit qck_it_builder(@{Filter.focused: @YES}, @(__FILE__), __LINE__)\n#define qck_itBehavesLike qck_itBehavesLike_builder(@{}, @(__FILE__), __LINE__)\n#define qck_xitBehavesLike qck_itBehavesLike_builder(@{Filter.pending: @YES}, @(__FILE__), __LINE__)\n#define qck_fitBehavesLike qck_itBehavesLike_builder(@{Filter.focused: @YES}, @(__FILE__), __LINE__)\n\ntypedef void (^QCKItBlock)(NSString *description, QCKDSLEmptyBlock closure);\ntypedef void (^QCKItBehavesLikeBlock)(NSString *description, QCKDSLSharedExampleContext context);\n\nQUICK_EXPORT QCKItBlock qck_it_builder(NSDictionary *flags, NSString *file, NSUInteger line);\nQUICK_EXPORT QCKItBehavesLikeBlock qck_itBehavesLike_builder(NSDictionary *flags, NSString *file, NSUInteger line);\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/DSL/QCKDSL.m",
    "content": "#import \"QCKDSL.h\"\n#import \"World.h\"\n#import \"World+DSL.h\"\n\nvoid qck_beforeSuite(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] beforeSuite:closure];\n}\n\nvoid qck_afterSuite(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] afterSuite:closure];\n}\n\nvoid qck_sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure) {\n    [[World sharedWorld] sharedExamples:name closure:closure];\n}\n\nvoid qck_describe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] describe:description flags:@{} closure:closure];\n}\n\nvoid qck_context(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_describe(description, closure);\n}\n\nvoid qck_beforeEach(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] beforeEach:closure];\n}\n\nvoid qck_beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    [[World sharedWorld] beforeEachWithMetadata:closure];\n}\n\nvoid qck_afterEach(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] afterEach:closure];\n}\n\nvoid qck_afterEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    [[World sharedWorld] afterEachWithMetadata:closure];\n}\n\nQCKItBlock qck_it_builder(NSDictionary *flags, NSString *file, NSUInteger line) {\n    return ^(NSString *description, QCKDSLEmptyBlock closure) {\n        [[World sharedWorld] itWithDescription:description\n                                         flags:flags\n                                          file:file\n                                          line:line\n                                       closure:closure];\n    };\n}\n\nQCKItBehavesLikeBlock qck_itBehavesLike_builder(NSDictionary *flags, NSString *file, NSUInteger line) {\n    return ^(NSString *name, QCKDSLSharedExampleContext context) {\n        [[World sharedWorld] itBehavesLikeSharedExampleNamed:name\n                                        sharedExampleContext:context\n                                                       flags:flags\n                                                        file:file\n                                                        line:line];\n    };\n}\n\nvoid qck_pending(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] pending:description closure:closure];\n}\n\nvoid qck_xdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] xdescribe:description flags:@{} closure:closure];\n}\n\nvoid qck_xcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xdescribe(description, closure);\n}\n\nvoid qck_fdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] fdescribe:description flags:@{} closure:closure];\n}\n\nvoid qck_fcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fdescribe(description, closure);\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/DSL/World+DSL.h",
    "content": "#import <Quick/Quick-Swift.h>\n\n@interface World (SWIFT_EXTENSION(Quick))\n- (void)beforeSuite:(void (^ __nonnull)(void))closure;\n- (void)afterSuite:(void (^ __nonnull)(void))closure;\n- (void)sharedExamples:(NSString * __nonnull)name closure:(void (^ __nonnull)(NSDictionary * __nonnull (^ __nonnull)(void)))closure;\n- (void)describe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)context:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)fdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)xdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)beforeEach:(void (^ __nonnull)(void))closure;\n- (void)beforeEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure;\n- (void)afterEach:(void (^ __nonnull)(void))closure;\n- (void)afterEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure;\n- (void)itWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)fitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)xitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)itBehavesLikeSharedExampleNamed:(NSString * __nonnull)name sharedExampleContext:(NSDictionary * __nonnull (^ __nonnull)(void))sharedExampleContext flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line;\n- (void)pending:(NSString * __nonnull)description closure:(void (^ __nonnull)(void))closure;\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/DSL/World+DSL.swift",
    "content": "import Foundation\n\n/**\n    Adds methods to World to support top-level DSL functions (Swift) and\n    macros (Objective-C). These functions map directly to the DSL that test\n    writers use in their specs.\n*/\nextension World {\n    internal func beforeSuite(closure: BeforeSuiteClosure) {\n        suiteHooks.appendBefore(closure)\n    }\n\n    internal func afterSuite(closure: AfterSuiteClosure) {\n        suiteHooks.appendAfter(closure)\n    }\n\n    internal func sharedExamples(name: String, closure: SharedExampleClosure) {\n        registerSharedExample(name, closure: closure)\n    }\n\n    internal func describe(description: String, flags: FilterFlags, closure: () -> ()) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'describe' cannot be used inside '\\(currentPhase)', 'describe' may only be used inside 'context' or 'describe'. \")\n        }\n        guard currentExampleGroup != nil else {\n            raiseError(\"Error: example group was not created by its parent QuickSpec spec. Check that describe() or context() was used in QuickSpec.spec() and not a more general context (i.e. an XCTestCase test)\")\n        }\n        let group = ExampleGroup(description: description, flags: flags)\n        currentExampleGroup.appendExampleGroup(group)\n        performWithCurrentExampleGroup(group, closure: closure)\n    }\n\n    internal func context(description: String, flags: FilterFlags, closure: () -> ()) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'context' cannot be used inside '\\(currentPhase)', 'context' may only be used inside 'context' or 'describe'. \")\n        }\n        self.describe(description, flags: flags, closure: closure)\n    }\n\n    internal func fdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n        var focusedFlags = flags\n        focusedFlags[Filter.focused] = true\n        self.describe(description, flags: focusedFlags, closure: closure)\n    }\n\n    internal func xdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n        var pendingFlags = flags\n        pendingFlags[Filter.pending] = true\n        self.describe(description, flags: pendingFlags, closure: closure)\n    }\n\n    internal func beforeEach(closure: BeforeExampleClosure) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'beforeEach' cannot be used inside '\\(currentPhase)', 'beforeEach' may only be used inside 'context' or 'describe'. \")\n        }\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n\n#if _runtime(_ObjC)\n    @objc(beforeEachWithMetadata:)\n    internal func beforeEach(closure closure: BeforeExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n#else\n    internal func beforeEach(closure closure: BeforeExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n#endif\n\n    internal func afterEach(closure: AfterExampleClosure) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'afterEach' cannot be used inside '\\(currentPhase)', 'afterEach' may only be used inside 'context' or 'describe'. \")\n        }\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n\n#if _runtime(_ObjC)\n    @objc(afterEachWithMetadata:)\n    internal func afterEach(closure closure: AfterExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n#else\n    internal func afterEach(closure closure: AfterExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n#endif\n\n    internal func it(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        if beforesCurrentlyExecuting {\n            raiseError(\"'it' cannot be used inside 'beforeEach', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        if aftersCurrentlyExecuting {\n            raiseError(\"'it' cannot be used inside 'afterEach', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'it' cannot be used inside 'it', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        let callsite = Callsite(file: file, line: line)\n        let example = Example(description: description, callsite: callsite, flags: flags, closure: closure)\n        currentExampleGroup.appendExample(example)\n    }\n\n    internal func fit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        var focusedFlags = flags\n        focusedFlags[Filter.focused] = true\n        self.it(description, flags: focusedFlags, file: file, line: line, closure: closure)\n    }\n\n    internal func xit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        var pendingFlags = flags\n        pendingFlags[Filter.pending] = true\n        self.it(description, flags: pendingFlags, file: file, line: line, closure: closure)\n    }\n\n    internal func itBehavesLike(name: String, sharedExampleContext: SharedExampleContext, flags: FilterFlags, file: String, line: UInt) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'itBehavesLike' cannot be used inside '\\(currentPhase)', 'itBehavesLike' may only be used inside 'context' or 'describe'. \")\n        }\n        let callsite = Callsite(file: file, line: line)\n        let closure = World.sharedWorld.sharedExample(name)\n\n        let group = ExampleGroup(description: name, flags: flags)\n        currentExampleGroup.appendExampleGroup(group)\n        performWithCurrentExampleGroup(group) {\n            closure(sharedExampleContext)\n        }\n\n        group.walkDownExamples { (example: Example) in\n            example.isSharedExample = true\n            example.callsite = callsite\n        }\n    }\n\n#if _runtime(_ObjC)\n    @objc(itWithDescription:flags:file:line:closure:)\n    private func objc_it(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        it(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(fitWithDescription:flags:file:line:closure:)\n    private func objc_fit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        fit(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(xitWithDescription:flags:file:line:closure:)\n    private func objc_xit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        xit(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(itBehavesLikeSharedExampleNamed:sharedExampleContext:flags:file:line:)\n    private func objc_itBehavesLike(name: String, sharedExampleContext: SharedExampleContext, flags: FilterFlags, file: String, line: UInt) {\n        itBehavesLike(name, sharedExampleContext: sharedExampleContext, flags: flags, file: file, line: line)\n    }\n#endif\n\n    internal func pending(description: String, closure: () -> ()) {\n        print(\"Pending: \\(description)\")\n    }\n\n    private var currentPhase: String {\n        if beforesCurrentlyExecuting {\n            return \"beforeEach\"\n        } else if aftersCurrentlyExecuting {\n            return \"afterEach\"\n        }\n\n        return \"it\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/ErrorUtility.swift",
    "content": "import Foundation\n\n@noreturn internal func raiseError(message: String) {\n#if _runtime(_ObjC)\n    NSException(name: NSInternalInconsistencyException, reason: message, userInfo: nil).raise()\n#endif\n\n    // This won't be reached when ObjC is available and the exception above is raisd\n    fatalError(message)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Example.swift",
    "content": "import Foundation\n\nprivate var numberOfExamplesRun = 0\n\n/**\n    Examples, defined with the `it` function, use assertions to\n    demonstrate how code should behave. These are like \"tests\" in XCTest.\n*/\nfinal public class Example: NSObject {\n    /**\n        A boolean indicating whether the example is a shared example;\n        i.e.: whether it is an example defined with `itBehavesLike`.\n    */\n    public var isSharedExample = false\n\n    /**\n        The site at which the example is defined.\n        This must be set correctly in order for Xcode to highlight\n        the correct line in red when reporting a failure.\n    */\n    public var callsite: Callsite\n\n    weak internal var group: ExampleGroup?\n\n    private let internalDescription: String\n    private let closure: () -> ()\n    private let flags: FilterFlags\n\n    internal init(description: String, callsite: Callsite, flags: FilterFlags, closure: () -> ()) {\n        self.internalDescription = description\n        self.closure = closure\n        self.callsite = callsite\n        self.flags = flags\n    }\n    \n    public override var description: String {\n        return internalDescription\n    }\n\n    /**\n        The example name. A name is a concatenation of the name of\n        the example group the example belongs to, followed by the\n        description of the example itself.\n\n        The example name is used to generate a test method selector\n        to be displayed in Xcode's test navigator.\n    */\n    public var name: String {\n        switch group!.name {\n        case .Some(let groupName): return \"\\(groupName), \\(description)\"\n        case .None: return description\n        }\n    }\n\n    /**\n        Executes the example closure, as well as all before and after\n        closures defined in the its surrounding example groups.\n    */\n    public func run() {\n        let world = World.sharedWorld\n\n        if numberOfExamplesRun == 0 {\n            world.suiteHooks.executeBefores()\n        }\n\n        let exampleMetadata = ExampleMetadata(example: self, exampleIndex: numberOfExamplesRun)\n        world.currentExampleMetadata = exampleMetadata\n\n        world.exampleHooks.executeBefores(exampleMetadata)\n        group!.phase = .BeforesExecuting\n        for before in group!.befores {\n            before(exampleMetadata: exampleMetadata)\n        }\n        group!.phase = .BeforesFinished\n\n        closure()\n\n        group!.phase = .AftersExecuting\n        for after in group!.afters {\n            after(exampleMetadata: exampleMetadata)\n        }\n        group!.phase = .AftersFinished\n        world.exampleHooks.executeAfters(exampleMetadata)\n\n        numberOfExamplesRun += 1\n\n        if !world.isRunningAdditionalSuites && numberOfExamplesRun >= world.includedExampleCount {\n            world.suiteHooks.executeAfters()\n        }\n    }\n\n    /**\n        Evaluates the filter flags set on this example and on the example groups\n        this example belongs to. Flags set on the example are trumped by flags on\n        the example group it belongs to. Flags on inner example groups are trumped\n        by flags on outer example groups.\n    */\n    internal var filterFlags: FilterFlags {\n        var aggregateFlags = flags\n        for (key, value) in group!.filterFlags {\n            aggregateFlags[key] = value\n        }\n        return aggregateFlags\n    }\n}\n\n/**\n    Returns a boolean indicating whether two Example objects are equal.\n    If two examples are defined at the exact same callsite, they must be equal.\n*/\npublic func ==(lhs: Example, rhs: Example) -> Bool {\n    return lhs.callsite == rhs.callsite\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/ExampleGroup.swift",
    "content": "import Foundation\n\n/**\n    Example groups are logical groupings of examples, defined with\n    the `describe` and `context` functions. Example groups can share\n    setup and teardown code.\n*/\nfinal public class ExampleGroup: NSObject {\n    weak internal var parent: ExampleGroup?\n    internal let hooks = ExampleHooks()\n    \n    internal var phase: HooksPhase = .NothingExecuted\n\n    private let internalDescription: String\n    private let flags: FilterFlags\n    private let isInternalRootExampleGroup: Bool\n    private var childGroups = [ExampleGroup]()\n    private var childExamples = [Example]()\n\n    internal init(description: String, flags: FilterFlags, isInternalRootExampleGroup: Bool = false) {\n        self.internalDescription = description\n        self.flags = flags\n        self.isInternalRootExampleGroup = isInternalRootExampleGroup\n    }\n\n    public override var description: String {\n        return internalDescription\n    }\n\n    /**\n        Returns a list of examples that belong to this example group,\n        or to any of its descendant example groups.\n    */\n    public var examples: [Example] {\n        var examples = childExamples\n        for group in childGroups {\n            examples.appendContentsOf(group.examples)\n        }\n        return examples\n    }\n\n    internal var name: String? {\n        if let parent = parent {\n            switch(parent.name) {\n            case .Some(let name): return \"\\(name), \\(description)\"\n            case .None: return description\n            }\n        } else {\n            return isInternalRootExampleGroup ? nil : description\n        }\n    }\n\n    internal var filterFlags: FilterFlags {\n        var aggregateFlags = flags\n        walkUp() { (group: ExampleGroup) -> () in\n            for (key, value) in group.flags {\n                aggregateFlags[key] = value\n            }\n        }\n        return aggregateFlags\n    }\n\n    internal var befores: [BeforeExampleWithMetadataClosure] {\n        var closures = Array(hooks.befores.reverse())\n        walkUp() { (group: ExampleGroup) -> () in\n            closures.appendContentsOf(Array(group.hooks.befores.reverse()))\n        }\n        return Array(closures.reverse())\n    }\n\n    internal var afters: [AfterExampleWithMetadataClosure] {\n        var closures = hooks.afters\n        walkUp() { (group: ExampleGroup) -> () in\n            closures.appendContentsOf(group.hooks.afters)\n        }\n        return closures\n    }\n\n    internal func walkDownExamples(callback: (example: Example) -> ()) {\n        for example in childExamples {\n            callback(example: example)\n        }\n        for group in childGroups {\n            group.walkDownExamples(callback)\n        }\n    }\n\n    internal func appendExampleGroup(group: ExampleGroup) {\n        group.parent = self\n        childGroups.append(group)\n    }\n\n    internal func appendExample(example: Example) {\n        example.group = self\n        childExamples.append(example)\n    }\n\n    private func walkUp(callback: (group: ExampleGroup) -> ()) {\n        var group = self\n        while let parent = group.parent {\n            callback(group: parent)\n            group = parent\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/ExampleMetadata.swift",
    "content": "import Foundation\n\n/**\n    A class that encapsulates information about an example,\n    including the index at which the example was executed, as\n    well as the example itself.\n*/\nfinal public class ExampleMetadata: NSObject {\n    /**\n        The example for which this metadata was collected.\n    */\n    public let example: Example\n\n    /**\n        The index at which this example was executed in the\n        test suite.\n    */\n    public let exampleIndex: Int\n\n    internal init(example: Example, exampleIndex: Int) {\n        self.example = example\n        self.exampleIndex = exampleIndex\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Filter.swift",
    "content": "import Foundation\n\n/**\n    A mapping of string keys to booleans that can be used to\n    filter examples or example groups. For example, a \"focused\"\n    example would have the flags [Focused: true].\n*/\npublic typealias FilterFlags = [String: Bool]\n\n/**\n    A namespace for filter flag keys, defined primarily to make the\n    keys available in Objective-C.\n*/\nfinal public class Filter: NSObject {\n    /**\n        Example and example groups with [Focused: true] are included in test runs,\n        excluding all other examples without this flag. Use this to only run one or\n        two tests that you're currently focusing on.\n    */\n    public class var focused: String {\n        return \"focused\"\n    }\n\n    /**\n        Example and example groups with [Pending: true] are excluded from test runs.\n        Use this to temporarily suspend examples that you know do not pass yet.\n    */\n    public class var pending: String {\n        return \"pending\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Hooks/Closures.swift",
    "content": "// MARK: Example Hooks\n\n/**\n    A closure executed before an example is run.\n*/\npublic typealias BeforeExampleClosure = () -> ()\n\n/**\n    A closure executed before an example is run. The closure is given example metadata,\n    which contains information about the example that is about to be run.\n*/\npublic typealias BeforeExampleWithMetadataClosure = (exampleMetadata: ExampleMetadata) -> ()\n\n/**\n    A closure executed after an example is run.\n*/\npublic typealias AfterExampleClosure = BeforeExampleClosure\n\n/**\n    A closure executed after an example is run. The closure is given example metadata,\n    which contains information about the example that has just finished running.\n*/\npublic typealias AfterExampleWithMetadataClosure = BeforeExampleWithMetadataClosure\n\n// MARK: Suite Hooks\n\n/**\n    A closure executed before any examples are run.\n*/\npublic typealias BeforeSuiteClosure = () -> ()\n\n/**\n    A closure executed after all examples have finished running.\n*/\npublic typealias AfterSuiteClosure = BeforeSuiteClosure\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Hooks/ExampleHooks.swift",
    "content": "/**\n    A container for closures to be executed before and after each example.\n*/\nfinal internal class ExampleHooks {\n    internal var befores: [BeforeExampleWithMetadataClosure] = []\n    internal var afters: [AfterExampleWithMetadataClosure] = []\n    internal var phase: HooksPhase = .NothingExecuted\n\n    internal func appendBefore(closure: BeforeExampleWithMetadataClosure) {\n        befores.append(closure)\n    }\n\n    internal func appendBefore(closure: BeforeExampleClosure) {\n        befores.append { (exampleMetadata: ExampleMetadata) in closure() }\n    }\n\n    internal func appendAfter(closure: AfterExampleWithMetadataClosure) {\n        afters.append(closure)\n    }\n\n    internal func appendAfter(closure: AfterExampleClosure) {\n        afters.append { (exampleMetadata: ExampleMetadata) in closure() }\n    }\n\n    internal func executeBefores(exampleMetadata: ExampleMetadata) {\n        phase = .BeforesExecuting\n        for before in befores {\n            before(exampleMetadata: exampleMetadata)\n        }\n        \n        phase = .BeforesFinished\n    }\n\n    internal func executeAfters(exampleMetadata: ExampleMetadata) {\n        phase = .AftersExecuting\n        for after in afters {\n            after(exampleMetadata: exampleMetadata)\n        }\n\n        phase = .AftersFinished\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Hooks/HooksPhase.swift",
    "content": "/**\n A description of the execution cycle of the current example with\n respect to the hooks of that example.\n */\ninternal enum HooksPhase: Int {\n    case NothingExecuted = 0\n    case BeforesExecuting\n    case BeforesFinished\n    case AftersExecuting\n    case AftersFinished\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Hooks/SuiteHooks.swift",
    "content": "/**\n    A container for closures to be executed before and after all examples.\n*/\nfinal internal class SuiteHooks {\n    internal var befores: [BeforeSuiteClosure] = []\n    internal var afters: [AfterSuiteClosure] = []\n    internal var phase: HooksPhase = .NothingExecuted\n\n    internal func appendBefore(closure: BeforeSuiteClosure) {\n        befores.append(closure)\n    }\n\n    internal func appendAfter(closure: AfterSuiteClosure) {\n        afters.append(closure)\n    }\n\n    internal func executeBefores() {\n        phase = .BeforesExecuting\n        for before in befores {\n            before()\n        }\n        phase = .BeforesFinished\n    }\n\n    internal func executeAfters() {\n        phase = .AftersExecuting\n        for after in afters {\n            after()\n        }\n        phase = .AftersFinished\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 - present, Quick Team. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/NSBundle+CurrentTestBundle.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\nimport Foundation\n\nextension NSBundle {\n\n    /**\n     Locates the first bundle with a '.xctest' file extension.\n     */\n    internal static var currentTestBundle: NSBundle? {\n        return allBundles().lazy\n            .filter {\n                $0.bundlePath.hasSuffix(\".xctest\")\n            }\n            .first\n    }\n\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/NSString+QCKSelectorName.h",
    "content": "#import <Foundation/Foundation.h>\n\n/**\n QuickSpec converts example names into test methods.\n Those test methods need valid selector names, which means no whitespace,\n control characters, etc. This category gives NSString objects an easy way\n to replace those illegal characters with underscores.\n */\n@interface NSString (QCKSelectorName)\n\n/**\n Returns a string with underscores in place of all characters that cannot\n be included in a selector (SEL) name.\n */\n@property (nonatomic, readonly) NSString *qck_selectorName;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/NSString+QCKSelectorName.m",
    "content": "#import \"NSString+QCKSelectorName.h\"\n\n@implementation NSString (QCKSelectorName)\n\n- (NSString *)qck_selectorName {\n    static NSMutableCharacterSet *invalidCharacters = nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        invalidCharacters = [NSMutableCharacterSet new];\n\n        NSCharacterSet *whitespaceCharacterSet = [NSCharacterSet whitespaceCharacterSet];\n        NSCharacterSet *newlineCharacterSet = [NSCharacterSet newlineCharacterSet];\n        NSCharacterSet *illegalCharacterSet = [NSCharacterSet illegalCharacterSet];\n        NSCharacterSet *controlCharacterSet = [NSCharacterSet controlCharacterSet];\n        NSCharacterSet *punctuationCharacterSet = [NSCharacterSet punctuationCharacterSet];\n        NSCharacterSet *nonBaseCharacterSet = [NSCharacterSet nonBaseCharacterSet];\n        NSCharacterSet *symbolCharacterSet = [NSCharacterSet symbolCharacterSet];\n\n        [invalidCharacters formUnionWithCharacterSet:whitespaceCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:newlineCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:illegalCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:controlCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:punctuationCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:nonBaseCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:symbolCharacterSet];\n    });\n\n    NSArray *validComponents = [self componentsSeparatedByCharactersInSet:invalidCharacters];\n\n    NSString *result = [validComponents componentsJoinedByString:@\"_\"];\n    \n    return ([result length] == 0\n            ? @\"_\"\n            : result);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/Quick.h",
    "content": "#import <Foundation/Foundation.h>\n\n//! Project version number for Quick.\nFOUNDATION_EXPORT double QuickVersionNumber;\n\n//! Project version string for Quick.\nFOUNDATION_EXPORT const unsigned char QuickVersionString[];\n\n#import \"QuickSpec.h\"\n#import \"QCKDSL.h\"\n#import \"QuickConfiguration.h\"\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickMain.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\n/// When using Quick with swift-corelibs-xctest, automatic discovery of specs and\n/// configurations is not available. Instead, you should create a standalone\n/// executable and call this function from its main.swift file. This will execute\n/// the specs and then terminate the process with an exit code of 0 if the tests\n/// passed, or 1 if there were any failures.\n///\n/// Quick is known to work with the DEVELOPMENT-SNAPSHOT-2016-02-08-a Swift toolchain.\n@noreturn public func QCKMain(specs: [XCTestCase], configurations: [QuickConfiguration.Type] = []) {\n    // Perform all configuration (ensures that shared examples have been discovered)\n    World.sharedWorld.configure { configuration in\n        for configurationClass in configurations {\n            configurationClass.configure(configuration)\n        }\n    }\n    World.sharedWorld.finalizeConfiguration()\n\n    // Gather all examples (ensures suite hooks have been discovered)\n    for case let spec as QuickSpec in specs {\n        spec.gatherExamplesIfNeeded()\n    }\n\n    XCTMain(specs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickSelectedTestSuiteBuilder.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\n/**\n Responsible for building a \"Selected tests\" suite. This corresponds to a single\n spec, and all its examples.\n */\ninternal class QuickSelectedTestSuiteBuilder: QuickTestSuiteBuilder {\n\n    /**\n     The test spec class to run.\n     */\n    let testCaseClass: AnyClass!\n\n    /**\n     For Objective-C classes, returns the class name. For Swift classes without,\n     an explicit Objective-C name, returns a module-namespaced class name\n     (e.g., \"FooTests.FooSpec\").\n     */\n    var testSuiteClassName: String {\n        return NSStringFromClass(testCaseClass)\n    }\n\n    /**\n     Given a test case name:\n\n        FooSpec/testFoo\n\n     Optionally constructs a test suite builder for the named test case class\n     in the running test bundle.\n\n     If no test bundle can be found, or the test case class can't be found,\n     initialization fails and returns `nil`.\n     */\n    init?(forTestCaseWithName name: String) {\n        guard let testCaseClass = testCaseClassForTestCaseWithName(name) else {\n            self.testCaseClass = nil\n            return nil\n        }\n\n        self.testCaseClass = testCaseClass\n    }\n\n    /**\n     Returns a `QuickTestSuite` that runs the associated test case class.\n     */\n    func buildTestSuite() -> QuickTestSuite {\n        return QuickTestSuite(forTestCaseClass: testCaseClass)\n    }\n\n}\n\n/**\n Searches `NSBundle.allBundles()` for an xctest bundle, then looks up the named\n test case class in that bundle.\n\n Returns `nil` if a bundle or test case class cannot be found.\n */\nprivate func testCaseClassForTestCaseWithName(name: String) -> AnyClass? {\n    func extractClassName(name: String) -> String? {\n        return name.characters.split(\"/\").first.map(String.init)\n    }\n\n    guard let className = extractClassName(name) else { return nil }\n    guard let bundle = NSBundle.currentTestBundle else { return nil }\n\n    if let testCaseClass = bundle.classNamed(className) { return testCaseClass }\n\n    guard let moduleName = bundle.bundlePath.fileName else { return nil }\n\n    return NSClassFromString(\"\\(moduleName).\\(className)\")\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.h",
    "content": "#import <XCTest/XCTest.h>\n\n/**\n QuickSpec is a base class all specs written in Quick inherit from.\n They need to inherit from QuickSpec, a subclass of XCTestCase, in\n order to be discovered by the XCTest framework.\n\n XCTest automatically compiles a list of XCTestCase subclasses included\n in the test target. It iterates over each class in that list, and creates\n a new instance of that class for each test method. It then creates an\n \"invocation\" to execute that test method. The invocation is an instance of\n NSInvocation, which represents a single message send in Objective-C.\n The invocation is set on the XCTestCase instance, and the test is run.\n\n Most of the code in QuickSpec is dedicated to hooking into XCTest events.\n First, when the spec is first loaded and before it is sent any messages,\n the +[NSObject initialize] method is called. QuickSpec overrides this method\n to call +[QuickSpec spec]. This builds the example group stacks and\n registers them with Quick.World, a global register of examples.\n\n Then, XCTest queries QuickSpec for a list of test methods. Normally, XCTest\n automatically finds all methods whose selectors begin with the string \"test\".\n However, QuickSpec overrides this default behavior by implementing the\n +[XCTestCase testInvocations] method. This method iterates over each example\n registered in Quick.World, defines a new method for that example, and\n returns an invocation to call that method to XCTest. Those invocations are\n the tests that are run by XCTest. Their selector names are displayed in\n the Xcode test navigation bar.\n */\n@interface QuickSpec : XCTestCase\n\n/**\n Override this method in your spec to define a set of example groups\n and examples.\n\n @code\n override func spec() {\n     describe(\"winter\") {\n         it(\"is coming\") {\n             // ...\n         }\n     }\n }\n @endcode\n\n See DSL.swift for more information on what syntax is available.\n */\n- (void)spec;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.m",
    "content": "#import \"QuickSpec.h\"\n#import \"QuickConfiguration.h\"\n#import \"NSString+QCKSelectorName.h\"\n#import \"World.h\"\n#import <objc/runtime.h>\n\nstatic QuickSpec *currentSpec = nil;\n\nconst void * const QCKExampleKey = &QCKExampleKey;\n\n@interface QuickSpec ()\n@property (nonatomic, strong) Example *example;\n@end\n\n@implementation QuickSpec\n\n#pragma mark - XCTestCase Overrides\n\n/**\n The runtime sends initialize to each class in a program just before the class, or any class\n that inherits from it, is sent its first message from within the program. QuickSpec hooks into\n this event to compile the example groups for this spec subclass.\n\n If an exception occurs when compiling the examples, report it to the user. Chances are they\n included an expectation outside of a \"it\", \"describe\", or \"context\" block.\n */\n+ (void)initialize {\n    [QuickConfiguration initialize];\n\n    World *world = [World sharedWorld];\n    [world performWithCurrentExampleGroup:[world rootExampleGroupForSpecClass:self] closure:^{\n        QuickSpec *spec = [self new];\n\n        @try {\n            [spec spec];\n        }\n        @catch (NSException *exception) {\n            [NSException raise:NSInternalInconsistencyException\n                        format:@\"An exception occurred when building Quick's example groups.\\n\"\n             @\"Some possible reasons this might happen include:\\n\\n\"\n             @\"- An 'expect(...).to' expectation was evaluated outside of \"\n             @\"an 'it', 'context', or 'describe' block\\n\"\n             @\"- 'sharedExamples' was called twice with the same name\\n\"\n             @\"- 'itBehavesLike' was called with a name that is not registered as a shared example\\n\\n\"\n             @\"Here's the original exception: '%@', reason: '%@', userInfo: '%@'\",\n             exception.name, exception.reason, exception.userInfo];\n        }\n        [self testInvocations];\n    }];\n}\n\n/**\n Invocations for each test method in the test case. QuickSpec overrides this method to define a\n new method for each example defined in +[QuickSpec spec].\n\n @return An array of invocations that execute the newly defined example methods.\n */\n+ (NSArray *)testInvocations {\n    NSArray *examples = [[World sharedWorld] examplesForSpecClass:[self class]];\n    NSMutableArray *invocations = [NSMutableArray arrayWithCapacity:[examples count]];\n    \n    NSMutableSet<NSString*> *selectorNames = [NSMutableSet set];\n    \n    for (Example *example in examples) {\n        SEL selector = [self addInstanceMethodForExample:example classSelectorNames:selectorNames];\n        NSInvocation *invocation = [self invocationForInstanceMethodWithSelector:selector\n                                                                         example:example];\n        [invocations addObject:invocation];\n    }\n\n    return invocations;\n}\n\n/**\n XCTest sets the invocation for the current test case instance using this setter.\n QuickSpec hooks into this event to give the test case a reference to the current example.\n It will need this reference to correctly report its name to XCTest.\n */\n- (void)setInvocation:(NSInvocation *)invocation {\n    self.example = objc_getAssociatedObject(invocation, QCKExampleKey);\n    [super setInvocation:invocation];\n}\n\n#pragma mark - Public Interface\n\n- (void)spec { }\n\n#pragma mark - Internal Methods\n\n/**\n QuickSpec uses this method to dynamically define a new instance method for the\n given example. The instance method runs the example, catching any exceptions.\n The exceptions are then reported as test failures.\n\n In order to report the correct file and line number, examples must raise exceptions\n containing following keys in their userInfo:\n\n - \"SenTestFilenameKey\": A String representing the file name\n - \"SenTestLineNumberKey\": An Int representing the line number\n\n These keys used to be used by SenTestingKit, and are still used by some testing tools\n in the wild. See: https://github.com/Quick/Quick/pull/41\n\n @return The selector of the newly defined instance method.\n */\n+ (SEL)addInstanceMethodForExample:(Example *)example classSelectorNames:(NSMutableSet<NSString*> *)selectorNames {\n    IMP implementation = imp_implementationWithBlock(^(QuickSpec *self){\n        currentSpec = self;\n        [example run];\n    });\n    NSCharacterSet *characterSet = [NSCharacterSet alphanumericCharacterSet];\n    NSMutableString *sanitizedFileName = [NSMutableString string];\n    for (NSUInteger i = 0; i < example.callsite.file.length; i++) {\n        unichar ch = [example.callsite.file characterAtIndex:i];\n        if ([characterSet characterIsMember:ch]) {\n            [sanitizedFileName appendFormat:@\"%c\", ch];\n        }\n    }\n\n    const char *types = [[NSString stringWithFormat:@\"%s%s%s\", @encode(id), @encode(id), @encode(SEL)] UTF8String];\n    \n    NSString *originalName = example.name.qck_selectorName;\n    NSString *selectorName = originalName;\n    NSUInteger i = 2;\n    \n    while ([selectorNames containsObject:selectorName]) {\n        selectorName = [NSString stringWithFormat:@\"%@_%tu\", originalName, i++];\n    }\n    \n    [selectorNames addObject:selectorName];\n    \n    SEL selector = NSSelectorFromString(selectorName);\n    class_addMethod(self, selector, implementation, types);\n\n    return selector;\n}\n\n+ (NSInvocation *)invocationForInstanceMethodWithSelector:(SEL)selector\n                                                  example:(Example *)example {\n    NSMethodSignature *signature = [self instanceMethodSignatureForSelector:selector];\n    NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];\n    invocation.selector = selector;\n    objc_setAssociatedObject(invocation,\n                             QCKExampleKey,\n                             example,\n                             OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n    return invocation;\n}\n\n/**\n This method is used to record failures, whether they represent example\n expectations that were not met, or exceptions raised during test setup\n and teardown. By default, the failure will be reported as an\n XCTest failure, and the example will be highlighted in Xcode.\n */\n- (void)recordFailureWithDescription:(NSString *)description\n                              inFile:(NSString *)filePath\n                              atLine:(NSUInteger)lineNumber\n                            expected:(BOOL)expected {\n    if (self.example.isSharedExample) {\n        filePath = self.example.callsite.file;\n        lineNumber = self.example.callsite.line;\n    }\n    [currentSpec.testRun recordFailureWithDescription:description\n                                               inFile:filePath\n                                               atLine:lineNumber\n                                             expected:expected];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\npublic class QuickSpec: XCTestCase, XCTestCaseProvider {\n    public func spec() {}\n\n    public required init() {}\n\n    public var allTests : [(String, () throws -> Void)] {\n        gatherExamplesIfNeeded()\n\n        let examples = World.sharedWorld.examples(self.dynamicType)\n        return examples.map({ example -> (String, () -> Void) in\n            return (example.name, { example.run() })\n        })\n    }\n\n    internal func gatherExamplesIfNeeded() {\n        let world = World.sharedWorld\n        let rootExampleGroup = world.rootExampleGroupForSpecClass(self.dynamicType)\n        if rootExampleGroup.examples.isEmpty {\n            world.currentExampleGroup =  rootExampleGroup\n            spec()\n            world.currentExampleGroup = nil\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/QuickTestSuite.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\nimport XCTest\n\n/**\n This protocol defines the role of an object that builds test suites.\n */\ninternal protocol QuickTestSuiteBuilder {\n\n    /**\n     Construct a `QuickTestSuite` instance with the appropriate test cases added as tests.\n\n     Subsequent calls to this method should return equivalent test suites.\n     */\n    func buildTestSuite() -> QuickTestSuite\n\n}\n\n/**\n A base class for a class cluster of Quick test suites, that should correctly\n build dynamic test suites for XCTest to execute.\n */\npublic class QuickTestSuite: XCTestSuite {\n\n    private static var builtTestSuites: Set<String> = Set()\n\n    /**\n     Construct a test suite for a specific, selected subset of test cases (rather\n     than the default, which as all test cases).\n\n     If this method is called multiple times for the same test case class, e.g..\n\n        FooSpec/testFoo\n        FooSpec/testBar\n\n     It is expected that the first call should return a valid test suite, and\n     all subsequent calls should return `nil`.\n     */\n    public static func selectedTestSuite(forTestCaseWithName name: String) -> QuickTestSuite? {\n        guard let builder = QuickSelectedTestSuiteBuilder(forTestCaseWithName: name) else { return nil }\n\n        if builtTestSuites.contains(builder.testSuiteClassName) {\n            return nil\n        } else {\n            builtTestSuites.insert(builder.testSuiteClassName)\n            return builder.buildTestSuite()\n        }\n    }\n\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/String+FileName.swift",
    "content": "import Foundation\n\nextension String {\n\n    /**\n     If the receiver represents a path, returns its file name with a file extension.\n     */\n    var fileName: String? {\n        return NSURL(string: self)?.URLByDeletingPathExtension?.lastPathComponent\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/World.h",
    "content": "#import <Quick/Quick-Swift.h>\n\n@class ExampleGroup;\n@class ExampleMetadata;\n\nSWIFT_CLASS(\"_TtC5Quick5World\")\n@interface World\n\n@property (nonatomic) ExampleGroup * __nullable currentExampleGroup;\n@property (nonatomic) ExampleMetadata * __nullable currentExampleMetadata;\n@property (nonatomic) BOOL isRunningAdditionalSuites;\n+ (World * __nonnull)sharedWorld;\n- (void)configure:(void (^ __nonnull)(Configuration * __nonnull))closure;\n- (void)finalizeConfiguration;\n- (ExampleGroup * __nonnull)rootExampleGroupForSpecClass:(Class __nonnull)cls;\n- (NSArray * __nonnull)examplesForSpecClass:(Class __nonnull)specClass;\n- (void)performWithCurrentExampleGroup:(ExampleGroup * __nonnull)group closure:(void (^ __nonnull)(void))closure;\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/World.swift",
    "content": "import Foundation\n\n/**\n    A closure that, when evaluated, returns a dictionary of key-value\n    pairs that can be accessed from within a group of shared examples.\n*/\npublic typealias SharedExampleContext = () -> (NSDictionary)\n\n/**\n    A closure that is used to define a group of shared examples. This\n    closure may contain any number of example and example groups.\n*/\npublic typealias SharedExampleClosure = (SharedExampleContext) -> ()\n\n/**\n    A collection of state Quick builds up in order to work its magic.\n    World is primarily responsible for maintaining a mapping of QuickSpec\n    classes to root example groups for those classes.\n\n    It also maintains a mapping of shared example names to shared\n    example closures.\n\n    You may configure how Quick behaves by calling the -[World configure:]\n    method from within an overridden +[QuickConfiguration configure:] method.\n*/\nfinal internal class World: NSObject {\n    /**\n        The example group that is currently being run.\n        The DSL requires that this group is correctly set in order to build a\n        correct hierarchy of example groups and their examples.\n    */\n    internal var currentExampleGroup: ExampleGroup!\n\n    /**\n        The example metadata of the test that is currently being run.\n        This is useful for using the Quick test metadata (like its name) at\n        runtime.\n    */\n\n    internal var currentExampleMetadata: ExampleMetadata?\n\n    /**\n        A flag that indicates whether additional test suites are being run\n        within this test suite. This is only true within the context of Quick\n        functional tests.\n    */\n    internal var isRunningAdditionalSuites = false\n\n    private var specs: Dictionary<String, ExampleGroup> = [:]\n    private var sharedExamples: [String: SharedExampleClosure] = [:]\n    private let configuration = Configuration()\n    private var isConfigurationFinalized = false\n\n    internal var exampleHooks: ExampleHooks {return configuration.exampleHooks }\n    internal var suiteHooks: SuiteHooks { return configuration.suiteHooks }\n\n    // MARK: Singleton Constructor\n\n    private override init() {}\n    static let sharedWorld = World()\n\n    // MARK: Public Interface\n\n    /**\n        Exposes the World's Configuration object within the scope of the closure\n        so that it may be configured. This method must not be called outside of\n        an overridden +[QuickConfiguration configure:] method.\n\n        - parameter closure:  A closure that takes a Configuration object that can\n                         be mutated to change Quick's behavior.\n    */\n    internal func configure(closure: QuickConfigurer) {\n        assert(!isConfigurationFinalized,\n               \"Quick cannot be configured outside of a +[QuickConfiguration configure:] method. You should not call -[World configure:] directly. Instead, subclass QuickConfiguration and override the +[QuickConfiguration configure:] method.\")\n        closure(configuration: configuration)\n    }\n\n    /**\n        Finalizes the World's configuration.\n        Any subsequent calls to World.configure() will raise.\n    */\n    internal func finalizeConfiguration() {\n        isConfigurationFinalized = true\n    }\n\n    /**\n        Returns an internally constructed root example group for the given\n        QuickSpec class.\n\n        A root example group with the description \"root example group\" is lazily\n        initialized for each QuickSpec class. This root example group wraps the\n        top level of a -[QuickSpec spec] method--it's thanks to this group that\n        users can define beforeEach and it closures at the top level, like so:\n\n            override func spec() {\n                // These belong to the root example group\n                beforeEach {}\n                it(\"is at the top level\") {}\n            }\n\n        - parameter cls: The QuickSpec class for which to retrieve the root example group.\n        - returns: The root example group for the class.\n    */\n    internal func rootExampleGroupForSpecClass(cls: AnyClass) -> ExampleGroup {\n        #if _runtime(_ObjC)\n            let name = NSStringFromClass(cls)\n        #else\n            let name = String(cls)\n        #endif\n\n        if let group = specs[name] {\n            return group\n        } else {\n            let group = ExampleGroup(\n                description: \"root example group\",\n                flags: [:],\n                isInternalRootExampleGroup: true\n            )\n            specs[name] = group\n            return group\n        }\n    }\n\n    /**\n        Returns all examples that should be run for a given spec class.\n        There are two filtering passes that occur when determining which examples should be run.\n        That is, these examples are the ones that are included by inclusion filters, and are\n        not excluded by exclusion filters.\n\n        - parameter specClass: The QuickSpec subclass for which examples are to be returned.\n        - returns: A list of examples to be run as test invocations.\n    */\n    internal func examples(specClass: AnyClass) -> [Example] {\n        // 1. Grab all included examples.\n        let included = includedExamples\n        // 2. Grab the intersection of (a) examples for this spec, and (b) included examples.\n        let spec = rootExampleGroupForSpecClass(specClass).examples.filter { included.contains($0) }\n        // 3. Remove all excluded examples.\n        return spec.filter { example in\n            !self.configuration.exclusionFilters.reduce(false) { $0 || $1(example: example) }\n        }\n    }\n\n#if _runtime(_ObjC)\n    @objc(examplesForSpecClass:)\n    private func objc_examples(specClass: AnyClass) -> [Example] {\n        return examples(specClass)\n    }\n#endif\n\n    // MARK: Internal\n\n    internal func registerSharedExample(name: String, closure: SharedExampleClosure) {\n        raiseIfSharedExampleAlreadyRegistered(name)\n        sharedExamples[name] = closure\n    }\n\n    internal func sharedExample(name: String) -> SharedExampleClosure {\n        raiseIfSharedExampleNotRegistered(name)\n        return sharedExamples[name]!\n    }\n\n    internal var includedExampleCount: Int {\n        return includedExamples.count\n    }\n    \n    internal var beforesCurrentlyExecuting: Bool {\n        let suiteBeforesExecuting = suiteHooks.phase == .BeforesExecuting\n        let exampleBeforesExecuting = exampleHooks.phase == .BeforesExecuting\n        var groupBeforesExecuting = false\n        if let runningExampleGroup = currentExampleMetadata?.example.group {\n            groupBeforesExecuting = runningExampleGroup.phase == .BeforesExecuting\n        }\n        \n        return suiteBeforesExecuting || exampleBeforesExecuting || groupBeforesExecuting\n    }\n    \n    internal var aftersCurrentlyExecuting: Bool {\n        let suiteAftersExecuting = suiteHooks.phase == .AftersExecuting\n        let exampleAftersExecuting = exampleHooks.phase == .AftersExecuting\n        var groupAftersExecuting = false\n        if let runningExampleGroup = currentExampleMetadata?.example.group {\n            groupAftersExecuting = runningExampleGroup.phase == .AftersExecuting\n        }\n        \n        return suiteAftersExecuting || exampleAftersExecuting || groupAftersExecuting\n    }\n\n    internal func performWithCurrentExampleGroup(group: ExampleGroup, closure: () -> Void) {\n        let previousExampleGroup = currentExampleGroup\n        currentExampleGroup = group\n\n        closure()\n\n        currentExampleGroup = previousExampleGroup\n    }\n\n    private var allExamples: [Example] {\n        var all: [Example] = []\n        for (_, group) in specs {\n            group.walkDownExamples { all.append($0) }\n        }\n        return all\n    }\n\n    private var includedExamples: [Example] {\n        let all = allExamples\n        let included = all.filter { example in\n            return self.configuration.inclusionFilters.reduce(false) { $0 || $1(example: example) }\n        }\n\n        if included.isEmpty && configuration.runAllWhenEverythingFiltered {\n            return all\n        } else {\n            return included\n        }\n    }\n\n    private func raiseIfSharedExampleAlreadyRegistered(name: String) {\n        if sharedExamples[name] != nil {\n            raiseError(\"A shared example named '\\(name)' has already been registered.\")\n        }\n    }\n\n    private func raiseIfSharedExampleNotRegistered(name: String) {\n        if sharedExamples[name] == nil {\n            raiseError(\"No shared example named '\\(name)' has been registered. Registered shared examples: '\\(Array(sharedExamples.keys))'\")\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/Quick/XCTestSuite+QuickTestSuiteBuilder.m",
    "content": "#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n#import <Quick/Quick-Swift.h>\n\n@interface XCTestSuite (QuickTestSuiteBuilder)\n@end\n\n@implementation XCTestSuite (QuickTestSuiteBuilder)\n\n/**\n In order to ensure we can correctly build dynamic test suites, we need to\n replace some of the default test suite constructors.\n */\n+ (void)load {\n    Method testCaseWithName = class_getClassMethod(self, @selector(testSuiteForTestCaseWithName:));\n    Method hooked_testCaseWithName = class_getClassMethod(self, @selector(qck_hooked_testSuiteForTestCaseWithName:));\n    method_exchangeImplementations(testCaseWithName, hooked_testCaseWithName);\n}\n\n/**\n The `+testSuiteForTestCaseWithName:` method is called when a specific test case\n class is run from the Xcode test navigator. If the built test suite is `nil`,\n Xcode will not run any tests for that test case.\n\n Given if the following test case class is run from the Xcode test navigator:\n\n    FooSpec\n        testFoo\n        testBar\n\n XCTest will invoke this once per test case, with test case names following this format:\n\n    FooSpec/testFoo\n    FooSpec/testBar\n */\n+ (nullable instancetype)qck_hooked_testSuiteForTestCaseWithName:(nonnull NSString *)name {\n    return [QuickTestSuite selectedTestSuiteForTestCaseWithName:name];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickFocusedTests/FocusedTests+ObjC.m",
    "content": "@import Quick;\n@import Nimble;\n@import XCTest;\n\n#import \"QCKSpecRunner.h\"\n\nQuickConfigurationBegin(FunctionalTests_SharedExamplesConfiguration_ObjC)\n\n+ (void)configure:(Configuration *)configuration {\n    sharedExamples(@\"two passing shared examples (Objective-C)\", ^(QCKDSLSharedExampleContext exampleContext) {\n        it(@\"has an example that passes (4)\", ^{});\n        it(@\"has another example that passes (5)\", ^{});\n    });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(FunctionalTests_FocusedSpec_Focused_ObjC)\n\nit(@\"has an unfocused example that fails, but is never run\", ^{ XCTFail(); });\nfit(@\"has a focused example that passes (1)\", ^{});\n\nfdescribe(@\"a focused example group\", ^{\n    it(@\"has an example that is not focused, but will be run, and passes (2)\", ^{});\n    fit(@\"has a focused example that passes (3)\", ^{});\n});\n\nfitBehavesLike(@\"two passing shared examples (Objective-C)\", ^NSDictionary *{ return @{}; });\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_FocusedSpec_Unfocused_ObjC)\n\nit(@\"has an unfocused example thay fails, but is never run\", ^{ XCTFail(); });\n\ndescribe(@\"an unfocused example group that is never run\", ^{\n    beforeEach(^{ [NSException raise:NSInternalInconsistencyException format:@\"\"]; });\n    it(@\"has an example that fails, but is never run\", ^{ XCTFail(); });\n});\n\nQuickSpecEnd\n\n@interface FocusedTests_ObjC: XCTestCase\n@end\n\n@implementation FocusedTests_ObjC\n\n- (void)testOnlyFocusedExamplesAreExecuted {\n    XCTestRun *result = qck_runSpecs(@[\n        [FunctionalTests_FocusedSpec_Focused_ObjC class],\n        [FunctionalTests_FocusedSpec_Unfocused_ObjC class]\n    ]);\n    XCTAssertEqual(result.executionCount, 5);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickFocusedTests/FocusedTests.swift",
    "content": "import Quick\nimport Nimble\nimport XCTest\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_FocusedSpec_SharedExamplesConfiguration: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"two passing shared examples\") {\n            it(\"has an example that passes (4)\") {}\n            it(\"has another example that passes (5)\") {}\n        }\n    }\n}\n\nclass FunctionalTests_FocusedSpec_Focused: QuickSpec {\n    override func spec() {\n        it(\"has an unfocused example that fails, but is never run\") { fail() }\n        fit(\"has a focused example that passes (1)\") {}\n\n        fdescribe(\"a focused example group\") {\n            it(\"has an example that is not focused, but will be run, and passes (2)\") {}\n            fit(\"has a focused example that passes (3)\") {}\n        }\n\n        // TODO: Port fitBehavesLike to Swift.\n        itBehavesLike(\"two passing shared examples\", flags: [Filter.focused: true])\n    }\n}\n\nclass FunctionalTests_FocusedSpec_Unfocused: QuickSpec {\n    override func spec() {\n        it(\"has an unfocused example that fails, but is never run\") { fail() }\n\n        describe(\"an unfocused example group that is never run\") {\n            beforeEach { assert(false) }\n            it(\"has an example that fails, but is never run\") { fail() }\n        }\n    }\n}\n\nclass FocusedTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testOnlyFocusedExamplesAreExecuted\", testOnlyFocusedExamplesAreExecuted),\n        ]\n    }\n\n    func testOnlyFocusedExamplesAreExecuted() {\n        let result = qck_runSpecs([\n            FunctionalTests_FocusedSpec_Focused.self,\n            FunctionalTests_FocusedSpec_Unfocused.self\n        ])\n        XCTAssertEqual(result.executionCount, 5 as UInt)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickFocusedTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickFocusedTests/main.swift",
    "content": "import Quick\n\nQCKMain([\n    FunctionalTests_FocusedSpec_Focused(),\n    FunctionalTests_FocusedSpec_Unfocused(),\n    FocusedTests(),\n],\nconfigurations: [FunctionalTests_FocusedSpec_SharedExamplesConfiguration.self]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTestHelpers/SpecRunner.swift",
    "content": "@testable import Quick\nimport Nimble\n\npublic func qck_runSpec(specClass: QuickSpec.Type) -> TestRun {\n    return qck_runSpecs([specClass])\n}\n\npublic func qck_runSpecs(specClasses: [QuickSpec.Type]) -> TestRun {\n    World.sharedWorld.isRunningAdditionalSuites = true\n\n    var executionCount: UInt = 0\n    var hadUnexpectedFailure = false\n\n    let fails = gatherFailingExpectations(silently: true) {\n        for specClass in specClasses {\n            let spec = specClass.init()\n            for (_, test) in spec.allTests {\n                do {\n                    try test()\n                } catch {\n                    hadUnexpectedFailure = true\n                }\n                executionCount += 1\n            }\n        }\n    }\n\n    return TestRun(executionCount: executionCount, hasSucceeded: fails.isEmpty && !hadUnexpectedFailure)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTestHelpers/TestRun.swift",
    "content": "\npublic struct TestRun {\n    public var executionCount: UInt\n    public var hasSucceeded: Bool\n\n    public init(executionCount: UInt, hasSucceeded: Bool) {\n        self.executionCount = executionCount\n        self.hasSucceeded = hasSucceeded\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Fixtures/FunctionalTests_SharedExamplesTests_SharedExamples.swift",
    "content": "import Foundation\nimport Quick\nimport Nimble\n\nclass FunctionalTests_SharedExamplesTests_SharedExamples: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"a group of three shared examples\") {\n            it(\"passes once\") { expect(true).to(beTruthy()) }\n            it(\"passes twice\") { expect(true).to(beTruthy()) }\n            it(\"passes three times\") { expect(true).to(beTruthy()) }\n        }\n\n        sharedExamples(\"shared examples that take a context\") { (sharedExampleContext: SharedExampleContext) in\n            it(\"is passed the correct parameters via the context\") {\n                let callsite = sharedExampleContext()[NSString(string: \"callsite\")] as! NSString\n                expect(callsite).to(equal(\"SharedExamplesSpec\"))\n            }\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\ntypedef NS_ENUM(NSUInteger, AfterEachType) {\n    OuterOne,\n    OuterTwo,\n    OuterThree,\n    InnerOne,\n    InnerTwo,\n    NoExamples,\n};\n\nstatic NSMutableArray *afterEachOrder;\n\nQuickSpecBegin(FunctionalTests_AfterEachSpec_ObjC)\n\nafterEach(^{ [afterEachOrder addObject:@(OuterOne)]; });\nafterEach(^{ [afterEachOrder addObject:@(OuterTwo)]; });\nafterEach(^{ [afterEachOrder addObject:@(OuterThree)]; });\n\nit(@\"executes the outer afterEach closures once, but not before this closure [1]\", ^{\n    expect(afterEachOrder).to(equal(@[]));\n});\n\nit(@\"executes the outer afterEach closures a second time, but not before this closure [2]\", ^{\n    expect(afterEachOrder).to(equal(@[@(OuterOne), @(OuterTwo), @(OuterThree)]));\n});\n\ncontext(@\"when there are nested afterEach\", ^{\n    afterEach(^{ [afterEachOrder addObject:@(InnerOne)]; });\n    afterEach(^{ [afterEachOrder addObject:@(InnerTwo)]; });\n\n    it(@\"executes the outer and inner afterEach closures, but not before this closure [3]\", ^{\n        // The afterEach for the previous two examples should have been run.\n        // The list should contain the afterEach for those example, executed from top to bottom.\n        expect(afterEachOrder).to(equal(@[\n            @(OuterOne), @(OuterTwo), @(OuterThree),\n            @(OuterOne), @(OuterTwo), @(OuterThree),\n        ]));\n    });\n});\n\ncontext(@\"when there are nested afterEach without examples\", ^{\n    afterEach(^{ [afterEachOrder addObject:@(NoExamples)]; });\n});\n\nQuickSpecEnd\n\n@interface AfterEachTests_ObjC : XCTestCase; @end\n\n@implementation AfterEachTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    afterEachOrder = [NSMutableArray array];\n}\n\n- (void)tearDown {\n    afterEachOrder = [NSMutableArray array];\n    [super tearDown];\n}\n\n- (void)testAfterEachIsExecutedInTheCorrectOrder {\n    qck_runSpec([FunctionalTests_AfterEachSpec_ObjC class]);\n    NSArray *expectedOrder = @[\n        // [1] The outer afterEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(OuterThree),\n        // [2] The outer afterEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(OuterThree),\n        // [3] The outer afterEach closures are executed from top to bottom,\n        //     then the outer afterEach closures are executed from top to bottom.\n        @(InnerOne), @(InnerTwo), @(OuterOne), @(OuterTwo), @(OuterThree),\n    ];\n\n    XCTAssertEqualObjects(afterEachOrder, expectedOrder);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nprivate enum AfterEachType {\n    case OuterOne\n    case OuterTwo\n    case OuterThree\n    case InnerOne\n    case InnerTwo\n    case NoExamples\n}\n\nprivate var afterEachOrder = [AfterEachType]()\n\nclass FunctionalTests_AfterEachSpec: QuickSpec {\n    override func spec() {\n        describe(\"afterEach ordering\") {\n            afterEach { afterEachOrder.append(AfterEachType.OuterOne) }\n            afterEach { afterEachOrder.append(AfterEachType.OuterTwo) }\n            afterEach { afterEachOrder.append(AfterEachType.OuterThree) }\n            \n            it(\"executes the outer afterEach closures once, but not before this closure [1]\") {\n                // No examples have been run, so no afterEach will have been run either.\n                // The list should be empty.\n                expect(afterEachOrder).to(beEmpty())\n            }\n            \n            it(\"executes the outer afterEach closures a second time, but not before this closure [2]\") {\n                // The afterEach for the previous example should have been run.\n                // The list should contain the afterEach for that example, executed from top to bottom.\n                expect(afterEachOrder).to(equal([AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree]))\n            }\n            \n            context(\"when there are nested afterEach\") {\n                afterEach { afterEachOrder.append(AfterEachType.InnerOne) }\n                afterEach { afterEachOrder.append(AfterEachType.InnerTwo) }\n                \n                it(\"executes the outer and inner afterEach closures, but not before this closure [3]\") {\n                    // The afterEach for the previous two examples should have been run.\n                    // The list should contain the afterEach for those example, executed from top to bottom.\n                    expect(afterEachOrder).to(equal([\n                        AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n                        AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n                        ]))\n                }\n            }\n            \n            context(\"when there are nested afterEach without examples\") {\n                afterEach { afterEachOrder.append(AfterEachType.NoExamples) }\n            }\n        }\n#if _runtime(_ObjC)\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including afterEach in it block\") {\n                expect {\n                    afterEach { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'afterEach' cannot be used inside 'it', 'afterEach' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n#endif\n    }\n}\n\nclass AfterEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAfterEachIsExecutedInTheCorrectOrder\", testAfterEachIsExecutedInTheCorrectOrder),\n        ]\n    }\n\n    func testAfterEachIsExecutedInTheCorrectOrder() {\n        afterEachOrder = []\n\n        qck_runSpec(FunctionalTests_AfterEachSpec.self)\n        let expectedOrder = [\n            // [1] The outer afterEach closures are executed from top to bottom.\n            AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n            // [2] The outer afterEach closures are executed from top to bottom.\n            AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n            // [3] The inner afterEach closures are executed from top to bottom,\n            //     then the outer afterEach closures are executed from top to bottom.\n            AfterEachType.InnerOne, AfterEachType.InnerTwo,\n                AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n        ]\n        XCTAssertEqual(afterEachOrder, expectedOrder)\n\n        afterEachOrder = []\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterSuiteTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL afterSuiteWasExecuted = NO;\n\nQuickSpecBegin(FunctionalTests_AfterSuite_AfterSuiteSpec_ObjC)\n\nafterSuite(^{\n    afterSuiteWasExecuted = YES;\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_AfterSuite_Spec_ObjC)\n\nit(@\"is executed before afterSuite\", ^{\n    expect(@(afterSuiteWasExecuted)).to(beFalsy());\n});\n\nQuickSpecEnd\n\n@interface AfterSuiteTests_ObjC : XCTestCase; @end\n\n@implementation AfterSuiteTests_ObjC\n\n- (void)testAfterSuiteIsNotExecutedBeforeAnyExamples {\n    // Execute the spec with an assertion after the one with an afterSuite.\n    NSArray *specs = @[\n        [FunctionalTests_AfterSuite_AfterSuiteSpec_ObjC class],\n        [FunctionalTests_AfterSuite_Spec_ObjC class]\n    ];\n    XCTestRun *result = qck_runSpecs(specs);\n\n    // Although this ensures that afterSuite is not called before any\n    // examples, it doesn't test that it's ever called in the first place.\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterSuiteTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar afterSuiteWasExecuted = false\n\nclass FunctionalTests_AfterSuite_AfterSuiteSpec: QuickSpec {\n    override func spec() {\n        afterSuite {\n            afterSuiteWasExecuted = true\n        }\n    }\n}\n\nclass FunctionalTests_AfterSuite_Spec: QuickSpec {\n    override func spec() {\n        it(\"is executed before afterSuite\") {\n            expect(afterSuiteWasExecuted).to(beFalsy())\n        }\n    }\n}\n\nclass AfterSuiteTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAfterSuiteIsNotExecutedBeforeAnyExamples\", testAfterSuiteIsNotExecutedBeforeAnyExamples),\n        ]\n    }\n\n    func testAfterSuiteIsNotExecutedBeforeAnyExamples() {\n        // Execute the spec with an assertion after the one with an afterSuite.\n        let result = qck_runSpecs([\n            FunctionalTests_AfterSuite_AfterSuiteSpec.self,\n            FunctionalTests_AfterSuite_Spec.self\n            ])\n\n        // Although this ensures that afterSuite is not called before any\n        // examples, it doesn't test that it's ever called in the first place.\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n\n#import \"QCKSpecRunner.h\"\n\ntypedef NS_ENUM(NSUInteger, BeforeEachType) {\n    OuterOne,\n    OuterTwo,\n    InnerOne,\n    InnerTwo,\n    InnerThree,\n    NoExamples,\n};\n\nstatic NSMutableArray *beforeEachOrder;\n\nQuickSpecBegin(FunctionalTests_BeforeEachSpec_ObjC)\n\nbeforeEach(^{ [beforeEachOrder addObject:@(OuterOne)]; });\nbeforeEach(^{ [beforeEachOrder addObject:@(OuterTwo)]; });\n\nit(@\"executes the outer beforeEach closures once [1]\", ^{});\nit(@\"executes the outer beforeEach closures a second time [2]\", ^{});\n\ncontext(@\"when there are nested beforeEach\", ^{\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerOne)];   });\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerTwo)];   });\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerThree)]; });\n\n    it(@\"executes the outer and inner beforeEach closures [3]\", ^{});\n});\n\ncontext(@\"when there are nested beforeEach without examples\", ^{\n    beforeEach(^{ [beforeEachOrder addObject:@(NoExamples)]; });\n});\n\nQuickSpecEnd\n\n@interface BeforeEachTests_ObjC : XCTestCase; @end\n\n@implementation BeforeEachTests_ObjC\n\n- (void)setUp {\n    beforeEachOrder = [NSMutableArray array];\n    [super setUp];\n}\n\n- (void)tearDown {\n    beforeEachOrder = [NSMutableArray array];\n    [super tearDown];\n}\n\n- (void)testBeforeEachIsExecutedInTheCorrectOrder {\n    qck_runSpec([FunctionalTests_BeforeEachSpec_ObjC class]);\n    NSArray *expectedOrder = @[\n        // [1] The outer beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo),\n        // [2] The outer beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo),\n        // [3] The outer beforeEach closures are executed from top to bottom,\n        //     then the inner beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(InnerOne), @(InnerTwo), @(InnerThree),\n    ];\n\n    XCTAssertEqualObjects(beforeEachOrder, expectedOrder);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nprivate enum BeforeEachType {\n    case OuterOne\n    case OuterTwo\n    case InnerOne\n    case InnerTwo\n    case InnerThree\n    case NoExamples\n}\n\nprivate var beforeEachOrder = [BeforeEachType]()\n\nclass FunctionalTests_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        \n        describe(\"beforeEach ordering\") {\n            beforeEach { beforeEachOrder.append(BeforeEachType.OuterOne) }\n            beforeEach { beforeEachOrder.append(BeforeEachType.OuterTwo) }\n            \n            it(\"executes the outer beforeEach closures once [1]\") {}\n            it(\"executes the outer beforeEach closures a second time [2]\") {}\n            \n            context(\"when there are nested beforeEach\") {\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerOne) }\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerTwo) }\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerThree) }\n                \n                it(\"executes the outer and inner beforeEach closures [3]\") {}\n            }\n            \n            context(\"when there are nested beforeEach without examples\") {\n                beforeEach { beforeEachOrder.append(BeforeEachType.NoExamples) }\n            }\n        }\n#if _runtime(_ObjC)\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including beforeEach in it block\") {\n                expect {\n                    beforeEach { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'beforeEach' cannot be used inside 'it', 'beforeEach' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n#endif\n    }\n}\n\nclass BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeEachIsExecutedInTheCorrectOrder\", testBeforeEachIsExecutedInTheCorrectOrder),\n        ]\n    }\n\n    func testBeforeEachIsExecutedInTheCorrectOrder() {\n        beforeEachOrder = []\n\n        qck_runSpec(FunctionalTests_BeforeEachSpec.self)\n        let expectedOrder = [\n            // [1] The outer beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n            // [2] The outer beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n            // [3] The outer beforeEach closures are executed from top to bottom,\n            //     then the inner beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n                BeforeEachType.InnerOne, BeforeEachType.InnerTwo, BeforeEachType.InnerThree,\n        ]\n        XCTAssertEqual(beforeEachOrder, expectedOrder)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeSuiteTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL beforeSuiteWasExecuted = NO;\n\nQuickSpecBegin(FunctionalTests_BeforeSuite_BeforeSuiteSpec_ObjC)\n\nbeforeSuite(^{\n    beforeSuiteWasExecuted = YES;\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_BeforeSuite_Spec_ObjC)\n\nit(@\"is executed after beforeSuite\", ^{\n    expect(@(beforeSuiteWasExecuted)).to(beTruthy());\n});\n\nQuickSpecEnd\n\n@interface BeforeSuiteTests_ObjC : XCTestCase; @end\n\n@implementation BeforeSuiteTests_ObjC\n\n- (void)testBeforeSuiteIsExecutedBeforeAnyExamples {\n    // Execute the spec with an assertion before the one with a beforeSuite\n    NSArray *specs = @[\n        [FunctionalTests_BeforeSuite_Spec_ObjC class],\n        [FunctionalTests_BeforeSuite_BeforeSuiteSpec_ObjC class]\n    ];\n    XCTestRun *result = qck_runSpecs(specs);\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeSuiteTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar beforeSuiteWasExecuted = false\n\nclass FunctionalTests_BeforeSuite_BeforeSuiteSpec: QuickSpec {\n    override func spec() {\n        beforeSuite {\n            beforeSuiteWasExecuted = true\n        }\n    }\n}\n\nclass FunctionalTests_BeforeSuite_Spec: QuickSpec {\n    override func spec() {\n        it(\"is executed after beforeSuite\") {\n            expect(beforeSuiteWasExecuted).to(beTruthy())\n        }\n    }\n}\n\nclass BeforeSuiteTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeSuiteIsExecutedBeforeAnyExamples\", testBeforeSuiteIsExecutedBeforeAnyExamples),\n        ]\n    }\n\n    func testBeforeSuiteIsExecutedBeforeAnyExamples() {\n        // Execute the spec with an assertion before the one with a beforeSuite\n        let result = qck_runSpecs([\n            FunctionalTests_BeforeSuite_Spec.self,\n            FunctionalTests_BeforeSuite_BeforeSuiteSpec.self\n            ])\n\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/AfterEach/Configuration+AfterEach.swift",
    "content": "import Quick\n\npublic var FunctionalTests_Configuration_AfterEachWasExecuted = false\n\nclass FunctionalTests_Configuration_AfterEach: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        configuration.afterEach {\n            FunctionalTests_Configuration_AfterEachWasExecuted = true\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/AfterEach/Configuration+AfterEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass Configuration_AfterEachSpec: QuickSpec {\n    override func spec() {\n        beforeEach {\n            FunctionalTests_Configuration_AfterEachWasExecuted = false\n        }\n        it(\"is executed before the configuration afterEach\") {\n            expect(FunctionalTests_Configuration_AfterEachWasExecuted).to(beFalsy())\n        }\n    }\n}\n\nclass Configuration_AfterEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted\", testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted),\n        ]\n    }\n\n    func testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted() {\n        FunctionalTests_Configuration_AfterEachWasExecuted = false\n\n        qck_runSpec(Configuration_BeforeEachSpec.self)\n        XCTAssert(FunctionalTests_Configuration_AfterEachWasExecuted)\n\n        FunctionalTests_Configuration_AfterEachWasExecuted = false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/BeforeEach/Configuration+BeforeEach.swift",
    "content": "import Quick\n\npublic var FunctionalTests_Configuration_BeforeEachWasExecuted = false\n\nclass FunctionalTests_Configuration_BeforeEach: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        configuration.beforeEach {\n            FunctionalTests_Configuration_BeforeEachWasExecuted = true\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/BeforeEach/Configuration+BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass Configuration_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        it(\"is executed after the configuration beforeEach\") {\n            expect(FunctionalTests_Configuration_BeforeEachWasExecuted).to(beTruthy())\n        }\n    }\n}\n\nclass Configuration_BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted\", testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted),\n        ]\n    }\n\n    func testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted() {\n        FunctionalTests_Configuration_BeforeEachWasExecuted = false\n\n        qck_runSpec(Configuration_BeforeEachSpec.self)\n        XCTAssert(FunctionalTests_Configuration_BeforeEachWasExecuted)\n\n        FunctionalTests_Configuration_BeforeEachWasExecuted = false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ContextTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\n#if _runtime(_ObjC)\nclass QuickContextTests: QuickSpec {\n    override func spec() {\n        describe(\"Context\") {\n            it(\"should throw an exception if used in an it block\") {\n                expect {\n                    context(\"A nested context that should throw\") { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'context' cannot be used inside 'it', 'context' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/CrossReferencingSpecs.swift",
    "content": "import Quick\nimport Nimble\n\n// This is a functional test ensuring that no crash occurs when a spec class\n// references another spec class during its spec setup.\n\nclass FunctionalTests_CrossReferencingSpecA: QuickSpec {\n    override func spec() {\n        let _ = FunctionalTests_CrossReferencingSpecB()\n        it(\"does not crash\") {}\n    }\n}\n\nclass FunctionalTests_CrossReferencingSpecB: QuickSpec {\n    override func spec() {\n        let _ = FunctionalTests_CrossReferencingSpecA()\n        it(\"does not crash\") {}\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/DescribeTests.swift",
    "content": "import XCTest\nimport Nimble\nimport Quick\n\n#if _runtime(_ObjC)\n\nclass DescribeTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testDescribeThrowsIfUsedOutsideOfQuickSpec\", testDescribeThrowsIfUsedOutsideOfQuickSpec),\n        ]\n    }\n\n    func testDescribeThrowsIfUsedOutsideOfQuickSpec() {\n        expect { describe(\"this should throw an exception\", {}) }.to(raiseException())\n    }\n}\n\nclass QuickDescribeTests: QuickSpec {\n    override func spec() {\n        describe(\"Describe\") {\n            it(\"should throw an exception if used in an it block\") {\n                expect {\n                    describe(\"A nested describe that should throw\") { }\n                }.to(raiseException { (exception: NSException) in\n                    expect(exception.name).to(equal(NSInternalInconsistencyException))\n                    expect(exception.reason).to(equal(\"'describe' cannot be used inside 'it', 'describe' may only be used inside 'context' or 'describe'. \"))\n                })\n            }\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/FailureTests+ObjC.m",
    "content": "@import XCTest;\n\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL isRunningFunctionalTests = NO;\n\n#pragma mark - Spec\n\nQuickSpecBegin(FunctionalTests_FailureSpec_ObjC)\n\ndescribe(@\"a group of failing examples\", ^{\n    it(@\"passes\", ^{\n        expect(@YES).to(beTruthy());\n    });\n\n    it(@\"fails (but only when running the functional tests)\", ^{\n        expect(@(isRunningFunctionalTests)).to(beFalsy());\n    });\n\n    it(@\"fails again (but only when running the functional tests)\", ^{\n        expect(@(isRunningFunctionalTests)).to(beFalsy());\n    });\n});\n\nQuickSpecEnd\n\n#pragma mark - Tests\n\n@interface FailureTests_ObjC : XCTestCase; @end\n\n@implementation FailureTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    isRunningFunctionalTests = YES;\n}\n\n- (void)tearDown {\n    isRunningFunctionalTests = NO;\n    [super tearDown];\n}\n\n- (void)testFailureSpecHasSucceededIsFalse {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertFalse(result.hasSucceeded);\n}\n\n- (void)testFailureSpecExecutedAllExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testFailureSpecFailureCountIsEqualToTheNumberOfFailingExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertEqual(result.failureCount, 2);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/FailureUsingXCTAssertTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL isRunningFunctionalTests = NO;\n\nQuickSpecBegin(FunctionalTests_FailureUsingXCTAssertSpec_ObjC)\n\nit(@\"fails using an XCTAssert (but only when running the functional tests)\", ^{\n    XCTAssertFalse(isRunningFunctionalTests);\n});\n\nit(@\"fails again using an XCTAssert (but only when running the functional tests)\", ^{\n    XCTAssertFalse(isRunningFunctionalTests);\n});\n\nit(@\"succeeds using an XCTAssert\", ^{\n    XCTAssertTrue(YES);\n});\n\nQuickSpecEnd\n\n#pragma mark - Tests\n\n@interface FailureUsingXCTAssertTests_ObjC : XCTestCase; @end\n\n@implementation FailureUsingXCTAssertTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    isRunningFunctionalTests = YES;\n}\n\n- (void)tearDown {\n    isRunningFunctionalTests = NO;\n    [super tearDown];\n}\n\n- (void)testFailureUsingXCTAssertSpecHasSucceededIsFalse {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertFalse(result.hasSucceeded);\n}\n\n- (void)testFailureUsingXCTAssertSpecExecutedAllExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testFailureUsingXCTAssertSpecFailureCountIsEqualToTheNumberOfFailingExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertEqual(result.failureCount, 2);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ItTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n#import \"QuickSpec+QuickSpec_MethodList.h\"\n\nQuickSpecBegin(FunctionalTests_ItSpec_ObjC)\n\n__block ExampleMetadata *exampleMetadata = nil;\nbeforeEachWithMetadata(^(ExampleMetadata *metadata) {\n    exampleMetadata = metadata;\n});\n\nit(@\" \", ^{\n    expect(exampleMetadata.example.name).to(equal(@\" \"));\n});\n\nit(@\"has a description with セレクター名に使えない文字が入っている 👊💥\", ^{\n    NSString *name = @\"has a description with セレクター名に使えない文字が入っている 👊💥\";\n    expect(exampleMetadata.example.name).to(equal(name));\n});\n\nit(@\"is a test with a unique name\", ^{\n    NSSet<NSString*> *allSelectors = [FunctionalTests_ItSpec_ObjC allSelectors];\n    \n    expect(allSelectors).to(contain(@\"is_a_test_with_a_unique_name\"));\n    expect(allSelectors).toNot(contain(@\"is_a_test_with_a_unique_name_2\"));\n});\n\nQuickSpecEnd\n\n@interface ItTests_ObjC : XCTestCase; @end\n\n@implementation ItTests_ObjC\n\n- (void)testAllExamplesAreExecuted {\n    XCTestRun *result = qck_runSpec([FunctionalTests_ItSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ItTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_ItSpec: QuickSpec {\n    override func spec() {\n        var exampleMetadata: ExampleMetadata?\n        beforeEach { metadata in exampleMetadata = metadata }\n\n        it(\"\") {\n            expect(exampleMetadata!.example.name).to(equal(\"\"))\n        }\n\n        it(\"has a description with セレクター名に使えない文字が入っている 👊💥\") {\n            let name = \"has a description with セレクター名に使えない文字が入っている 👊💥\"\n            expect(exampleMetadata!.example.name).to(equal(name))\n        }\n\n#if _runtime(_ObjC)\n\n        describe(\"when an example has a unique name\"){\n            it(\"has a unique name\") {}\n            \n            it(\"doesn't add multiple selectors for it\") {\n                let allSelectors = [String](\n                    FunctionalTests_ItSpec.allSelectors()\n                        .filter { $0.hasPrefix(\"when_an_example_has_a_unique_name__\") }\n                    )\n                    .sort(<)\n                \n                expect(allSelectors) == [\n                    \"when_an_example_has_a_unique_name__doesn_t_add_multiple_selectors_for_it\",\n                    \"when_an_example_has_a_unique_name__has_a_unique_name\"\n                ]\n            }\n        }\n    \n        describe(\"when two examples have the exact name\") {\n            it(\"has exactly the same name\") {}\n            it(\"has exactly the same name\") {}\n            \n            it(\"makes a unique name for each of the above\") {\n                let allSelectors = [String](\n                    FunctionalTests_ItSpec.allSelectors()\n                        .filter { $0.hasPrefix(\"when_two_examples_have_the_exact_name__\") }\n                    )\n                    .sort(<)\n                \n                expect(allSelectors) == [\n                    \"when_two_examples_have_the_exact_name__has_exactly_the_same_name\",\n                    \"when_two_examples_have_the_exact_name__has_exactly_the_same_name_2\",\n                    \"when_two_examples_have_the_exact_name__makes_a_unique_name_for_each_of_the_above\"\n                ]\n            }\n            \n        }\n\n        describe(\"error handling when misusing ordering\") {\n            it(\"an it\") {\n                expect {\n                    it(\"will throw an error when it is nested in another it\") { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'it' cannot be used inside 'it', 'it' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n\n            describe(\"behavior with an 'it' inside a 'beforeEach'\") {\n                var exception: NSException?\n\n                beforeEach {\n                    let capture = NMBExceptionCapture(handler: ({ e in\n                        exception = e\n                    }), finally: nil)\n\n                    capture.tryBlock {\n                        it(\"a rogue 'it' inside a 'beforeEach'\") { }\n                        return\n                    }\n                }\n\n                it(\"should have thrown an exception with the correct error message\") {\n                    expect(exception).toNot(beNil())\n                    expect(exception!.reason).to(equal(\"'it' cannot be used inside 'beforeEach', 'it' may only be used inside 'context' or 'describe'. \"))\n                }\n            }\n\n            describe(\"behavior with an 'it' inside an 'afterEach'\") {\n                var exception: NSException?\n\n                afterEach {\n                    let capture = NMBExceptionCapture(handler: ({ e in\n                        exception = e\n                        expect(exception).toNot(beNil())\n                        expect(exception!.reason).to(equal(\"'it' cannot be used inside 'afterEach', 'it' may only be used inside 'context' or 'describe'. \"))\n                    }), finally: nil)\n\n                    capture.tryBlock {\n                        it(\"a rogue 'it' inside an 'afterEach'\") { }\n                        return\n                    }\n                }\n\n                it(\"should throw an exception with the correct message after this 'it' block executes\") {  }\n            }\n        }\n#endif\n    }\n}\n\nclass ItTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllExamplesAreExecuted\", testAllExamplesAreExecuted),\n        ]\n    }\n\n#if _runtime(_ObjC)\n    func testAllExamplesAreExecuted() {\n        let result = qck_runSpec(FunctionalTests_ItSpec.self)\n        XCTAssertEqual(result.executionCount, 10 as UInt)\n    }\n#else\n    func testAllExamplesAreExecuted() {\n        let result = qck_runSpec(FunctionalTests_ItSpec.self)\n        XCTAssertEqual(result.executionCount, 2 as UInt)\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/PendingTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic NSUInteger oneExampleBeforeEachExecutedCount = 0;\nstatic NSUInteger onlyPendingExamplesBeforeEachExecutedCount = 0;\n\nQuickSpecBegin(FunctionalTests_PendingSpec_ObjC)\n\npending(@\"an example that will not run\", ^{\n    expect(@YES).to(beFalsy());\n});\n\ndescribe(@\"a describe block containing only one enabled example\", ^{\n    beforeEach(^{ oneExampleBeforeEachExecutedCount += 1; });\n    it(@\"an example that will run\", ^{});\n    pending(@\"an example that will not run\", ^{});\n});\n\ndescribe(@\"a describe block containing only pending examples\", ^{\n    beforeEach(^{ onlyPendingExamplesBeforeEachExecutedCount += 1; });\n    pending(@\"an example that will not run\", ^{});\n});\n\nQuickSpecEnd\n\n@interface PendingTests_ObjC : XCTestCase; @end\n\n@implementation PendingTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    oneExampleBeforeEachExecutedCount = 0;\n    onlyPendingExamplesBeforeEachExecutedCount = 0;\n}\n\n- (void)tearDown {\n    oneExampleBeforeEachExecutedCount = 0;\n    onlyPendingExamplesBeforeEachExecutedCount = 0;\n    [super tearDown];\n}\n\n- (void)testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail {\n    XCTestRun *result = qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n}\n\n- (void)testBeforeEachOnlyRunForEnabledExamples {\n    qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssertEqual(oneExampleBeforeEachExecutedCount, 1);\n}\n\n- (void)testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples {\n    qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssertEqual(onlyPendingExamplesBeforeEachExecutedCount, 0);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/PendingTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar oneExampleBeforeEachExecutedCount = 0\nvar onlyPendingExamplesBeforeEachExecutedCount = 0\n\nclass FunctionalTests_PendingSpec: QuickSpec {\n    override func spec() {\n        xit(\"an example that will not run\") {\n            expect(true).to(beFalsy())\n        }\n\n        describe(\"a describe block containing only one enabled example\") {\n            beforeEach { oneExampleBeforeEachExecutedCount += 1 }\n            it(\"an example that will run\") {}\n            pending(\"an example that will not run\") {}\n        }\n\n        describe(\"a describe block containing only pending examples\") {\n            beforeEach { onlyPendingExamplesBeforeEachExecutedCount += 1 }\n            pending(\"an example that will not run\") {}\n        }\n    }\n}\n\nclass PendingTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail\", testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail),\n            (\"testBeforeEachOnlyRunForEnabledExamples\", testBeforeEachOnlyRunForEnabledExamples),\n            (\"testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples\", testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples),\n        ]\n    }\n\n    func testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail() {\n        let result = qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssert(result.hasSucceeded)\n    }\n\n    func testBeforeEachOnlyRunForEnabledExamples() {\n        oneExampleBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssertEqual(oneExampleBeforeEachExecutedCount, 1)\n    }\n\n    func testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples() {\n        onlyPendingExamplesBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssertEqual(onlyPendingExamplesBeforeEachExecutedCount, 0)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamples+BeforeEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic NSUInteger specBeforeEachExecutedCount = 0;\nstatic NSUInteger sharedExamplesBeforeEachExecutedCount = 0;\n\nQuickConfigurationBegin(FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples_ObjC)\n\n+ (void)configure:(Configuration *)configuration {\n    sharedExamples(@\"a group of three shared examples with a beforeEach in Obj-C\",\n                   ^(QCKDSLSharedExampleContext context) {\n        beforeEach(^{ sharedExamplesBeforeEachExecutedCount += 1; });\n        it(@\"passes once\", ^{});\n        it(@\"passes twice\", ^{});\n        it(@\"passes three times\", ^{});\n    });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_BeforeEachSpec_ObjC)\n\nbeforeEach(^{ specBeforeEachExecutedCount += 1; });\nit(@\"executes the spec beforeEach once\", ^{});\nitBehavesLike(@\"a group of three shared examples with a beforeEach in Obj-C\",\n              ^NSDictionary*{ return @{}; });\n\nQuickSpecEnd\n\n@interface SharedExamples_BeforeEachTests_ObjC : XCTestCase; @end\n\n@implementation SharedExamples_BeforeEachTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    specBeforeEachExecutedCount = 0;\n    sharedExamplesBeforeEachExecutedCount = 0;\n}\n\n- (void)tearDown {\n    specBeforeEachExecutedCount = 0;\n    sharedExamplesBeforeEachExecutedCount = 0;\n    [super tearDown];\n}\n\n- (void)testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample {\n    qck_runSpec([FunctionalTests_SharedExamples_BeforeEachSpec_ObjC class]);\n    XCTAssertEqual(specBeforeEachExecutedCount, 4);\n}\n\n- (void)testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample {\n    qck_runSpec([FunctionalTests_SharedExamples_BeforeEachSpec_ObjC class]);\n    XCTAssertEqual(sharedExamplesBeforeEachExecutedCount, 3);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamples+BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar specBeforeEachExecutedCount = 0\nvar sharedExamplesBeforeEachExecutedCount = 0\n\nclass FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"a group of three shared examples with a beforeEach\") {\n            beforeEach { sharedExamplesBeforeEachExecutedCount += 1 }\n            it(\"passes once\") {}\n            it(\"passes twice\") {}\n            it(\"passes three times\") {}\n        }\n    }\n}\n\nclass FunctionalTests_SharedExamples_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        beforeEach { specBeforeEachExecutedCount += 1 }\n        it(\"executes the spec beforeEach once\") {}\n        itBehavesLike(\"a group of three shared examples with a beforeEach\")\n    }\n}\n\nclass SharedExamples_BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample\", testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample),\n            (\"testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample\", testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample),\n        ]\n    }\n\n    func testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample() {\n        specBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_SharedExamples_BeforeEachSpec.self)\n        XCTAssertEqual(specBeforeEachExecutedCount, 4)\n    }\n\n    func testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample() {\n        sharedExamplesBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_SharedExamples_BeforeEachSpec.self)\n        XCTAssertEqual(sharedExamplesBeforeEachExecutedCount, 3)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamplesTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nQuickSpecBegin(FunctionalTests_SharedExamples_Spec_ObjC)\n\nitBehavesLike(@\"a group of three shared examples\", ^NSDictionary*{ return @{}; });\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_ContextSpec_ObjC)\n\nitBehavesLike(@\"shared examples that take a context\", ^NSDictionary *{\n    return @{ @\"callsite\": @\"SharedExamplesSpec\" };\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_SameContextSpec_ObjC)\n\n__block NSInteger counter = 0;\n\nafterEach(^{\n    counter++;\n});\n\nsharedExamples(@\"gets called with a different context from within the same spec file\", ^(QCKDSLSharedExampleContext exampleContext) {\n    \n    it(@\"tracks correctly\", ^{\n        NSString *payload = exampleContext()[@\"payload\"];\n        BOOL expected = [payload isEqualToString:[NSString stringWithFormat:@\"%ld\", (long)counter]];\n        expect(@(expected)).to(beTrue());\n    });\n    \n});\n\nitBehavesLike(@\"gets called with a different context from within the same spec file\", ^{\n    return @{ @\"payload\" : @\"0\" };\n});\n\nitBehavesLike(@\"gets called with a different context from within the same spec file\", ^{\n    return @{ @\"payload\" : @\"1\" };\n});\n\nQuickSpecEnd\n\n\n@interface SharedExamplesTests_ObjC : XCTestCase; @end\n\n@implementation SharedExamplesTests_ObjC\n\n- (void)testAGroupOfThreeSharedExamplesExecutesThreeExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_SharedExamples_Spec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testSharedExamplesWithContextPassContextToExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_SharedExamples_ContextSpec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamplesTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_SharedExamples_Spec: QuickSpec {\n    override func spec() {\n        itBehavesLike(\"a group of three shared examples\")\n    }\n}\n\nclass FunctionalTests_SharedExamples_ContextSpec: QuickSpec {\n    override func spec() {\n        itBehavesLike(\"shared examples that take a context\") { [NSString(string: \"callsite\"): NSString(string: \"SharedExamplesSpec\")] }\n    }\n}\n\n#if _runtime(_ObjC)\nclass FunctionalTests_SharedExamples_ErrorSpec: QuickSpec {\n    override func spec() {\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including itBehavesLike in it block\") {\n                expect {\n                    itBehavesLike(\"a group of three shared examples\")\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'itBehavesLike' cannot be used inside 'it', 'itBehavesLike' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n    }\n}\n#endif\n\n// Shared examples are defined in QuickTests/Fixtures\nclass SharedExamplesTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAGroupOfThreeSharedExamplesExecutesThreeExamples\", testAGroupOfThreeSharedExamplesExecutesThreeExamples),\n            (\"testSharedExamplesWithContextPassContextToExamples\", testSharedExamplesWithContextPassContextToExamples),\n        ]\n    }\n\n    func testAGroupOfThreeSharedExamplesExecutesThreeExamples() {\n        let result = qck_runSpec(FunctionalTests_SharedExamples_Spec.self)\n        XCTAssert(result.hasSucceeded)\n        XCTAssertEqual(result.executionCount, 3 as UInt)\n    }\n\n    func testSharedExamplesWithContextPassContextToExamples() {\n        let result = qck_runSpec(FunctionalTests_SharedExamples_ContextSpec.self)\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QCKSpecRunner.h",
    "content": "@import XCTest;\n\n/**\n Runs an XCTestSuite instance containing only the given XCTestCase subclass.\n Use this to run QuickSpec subclasses from within a set of unit tests.\n\n Due to implicit dependencies in _XCTFailureHandler, this function raises an\n exception when used in Swift to run a failing test case.\n\n @param specClass The class of the spec to be run.\n @return An XCTestRun instance that contains information such as the number of failures, etc.\n */\nextern XCTestRun *qck_runSpec(Class specClass);\n\n/**\n Runs an XCTestSuite instance containing the given XCTestCase subclasses, in the order provided.\n See the documentation for `qck_runSpec` for more details.\n\n @param specClasses An array of QuickSpec classes, in the order they should be run.\n @return An XCTestRun instance that contains information such as the number of failures, etc.\n */\nextern XCTestRun *qck_runSpecs(NSArray *specClasses);\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QCKSpecRunner.m",
    "content": "@import Quick;\n\n#import \"QCKSpecRunner.h\"\n#import \"XCTestObservationCenter+QCKSuspendObservation.h\"\n#import \"World.h\"\n\n@interface XCTest (Redeclaration)\n- (XCTestRun *)run;\n@end\n\nXCTestRun *qck_runSuite(XCTestSuite *suite) {\n    [World sharedWorld].isRunningAdditionalSuites = YES;\n\n    __block XCTestRun *result = nil;\n    [[XCTestObservationCenter sharedTestObservationCenter] qck_suspendObservationForBlock:^{\n        if ([suite respondsToSelector:@selector(runTest)]) {\n            [suite runTest];\n            result = suite.testRun;\n        } else {\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-declarations\"\n            result = [suite run];\n#pragma clang diagnostic pop\n        }\n    }];\n    return result;\n}\n\nXCTestRun *qck_runSpec(Class specClass) {\n    return qck_runSuite([XCTestSuite testSuiteForTestCaseClass:specClass]);\n}\n\nXCTestRun *qck_runSpecs(NSArray *specClasses) {\n    XCTestSuite *suite = [XCTestSuite testSuiteWithName:@\"MySpecs\"];\n    for (Class specClass in specClasses) {\n        [suite addTest:[XCTestSuite testSuiteForTestCaseClass:specClass]];\n    }\n\n    return qck_runSuite(suite);\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.h",
    "content": "#import <Quick/Quick.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface QuickSpec (QuickSpec_MethodList)\n\n+ (NSSet<NSString*> *)allSelectors;\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.m",
    "content": "#import \"QuickSpec+QuickSpec_MethodList.h\"\n#import <objc/runtime.h>\n\n\n@implementation QuickSpec (QuickSpec_MethodList)\n\n/**\n *  This method will instantiate an instance of the class on which it is called,\n *  returning a list of selector names for it.\n *\n *  @warning Only intended to be used in test assertions!\n *\n *  @return a set of NSStrings representing the list of selectors it contains\n */\n+ (NSSet<NSString*> *)allSelectors {\n    QuickSpec *specInstance = [[[self class] alloc] init];\n    NSMutableSet<NSString*> *allSelectors = [NSMutableSet set];\n    \n    unsigned int methodCount = 0;\n    Method *mlist = class_copyMethodList(object_getClass(specInstance), &methodCount);\n\n    for(unsigned int i = 0; i < methodCount; i++) {\n        SEL selector = method_getName(mlist[i]);\n        [allSelectors addObject:NSStringFromSelector(selector)];\n    }\n    \n    free(mlist);\n    return [allSelectors copy];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h",
    "content": "#import \"QCKSpecRunner.h\"\n#import \"QuickSpec+QuickSpec_MethodList.h\""
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestObservationCenter+QCKSuspendObservation.h",
    "content": "#import <XCTest/XCTest.h>\n\n/**\n Add the ability to temporarily disable internal XCTest execution observation in\n order to run isolated XCTestSuite instances while the QuickTests test suite is running.\n */\n@interface XCTestObservationCenter (QCKSuspendObservation)\n\n/**\n Suspends test suite observation for XCTest-provided observers for the duration that\n the block is executing. Any test suites that are executed within the block do not \n generate any log output. Failures are still reported.\n\n Use this method to run XCTestSuite objects while another XCTestSuite is running.\n Without this method, tests fail with the message: \"Timed out waiting for IDE\n barrier message to complete\" or \"Unexpected TestSuiteDidStart\".\n */\n- (void)qck_suspendObservationForBlock:(void (^)(void))block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestObservationCenter+QCKSuspendObservation.m",
    "content": "@import XCTest;\n#import <objc/runtime.h>\n\n@interface XCTestObservationCenter (Redeclaration)\n- (id)observers;\n- (void)removeTestObserver:(id<XCTestObservation>)testObserver;\n@end\n\n@implementation XCTestObservationCenter (QCKSuspendObservation)\n\n/// This allows us to only suspend observation for observers by provided by Apple\n/// as a part of the XCTest framework. In particular it is important that we not\n/// suspend the observer added by Nimble, otherwise it is unable to properly\n/// report assertion failures.\nstatic BOOL (^isFromApple)(id) = ^BOOL(id observer){\n    return [[NSBundle bundleForClass:[observer class]].bundleIdentifier containsString:@\"com.apple.dt.XCTest\"];\n};\n\n- (void)qck_suspendObservationForBlock:(void (^)(void))block {\n    id originalObservers = [[self observers] copy];\n    NSMutableArray *suspendedObservers = [NSMutableArray new];\n\n    for (id observer in originalObservers) {\n        if (isFromApple(observer)) {\n            [suspendedObservers addObject:observer];\n\n            if ([self respondsToSelector:@selector(removeTestObserver:)]) {\n                [self removeTestObserver:observer];\n            }\n            else if ([[self observers] respondsToSelector:@selector(removeObject:)]) {\n                [[self observers] removeObject:observer];\n            }\n            else {\n                NSAssert(NO, @\"unexpected type: unable to remove observers: %@\", originalObservers);\n            }\n        }\n    }\n\n    @try {\n        block();\n    }\n    @finally {\n        for (id observer in suspendedObservers) {\n            if ([[self observers] respondsToSelector:@selector(addObject:)]) {\n                [[self observers] addObject:observer];\n            }\n            else if ([self respondsToSelector:@selector(addTestObserver:)]) {\n                [self addTestObserver:observer];\n            }\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/QuickConfigurationTests.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Quick/Quick.h>\n\n@interface QuickConfigurationTests : XCTestCase; @end\n\n@implementation QuickConfigurationTests\n\n- (void)testInitThrows {\n    XCTAssertThrowsSpecificNamed([QuickConfiguration new], NSException, NSInternalInconsistencyException);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/Sources/QuickTests/main.swift",
    "content": "import Quick\n\nQCKMain([\n    FunctionalTests_AfterEachSpec(),\n    AfterEachTests(),\n    FunctionalTests_AfterSuite_AfterSuiteSpec(),\n    FunctionalTests_AfterSuite_Spec(),\n    AfterSuiteTests(),\n    FunctionalTests_BeforeEachSpec(),\n    BeforeEachTests(),\n    FunctionalTests_BeforeSuite_BeforeSuiteSpec(),\n    FunctionalTests_BeforeSuite_Spec(),\n    BeforeSuiteTests(),\n    // DescribeTests(),\n    FunctionalTests_ItSpec(),\n    ItTests(),\n    FunctionalTests_PendingSpec(),\n    PendingTests(),\n    FunctionalTests_SharedExamples_BeforeEachSpec(),\n    SharedExamples_BeforeEachTests(),\n    FunctionalTests_SharedExamples_Spec(),\n    FunctionalTests_SharedExamples_ContextSpec(),\n    SharedExamplesTests(),\n    Configuration_AfterEachSpec(),\n    Configuration_AfterEachTests(),\n    Configuration_BeforeEachSpec(),\n    Configuration_BeforeEachTests(),\n    FunctionalTests_CrossReferencingSpecA(),\n    FunctionalTests_CrossReferencingSpecB(),\n],\nconfigurations: [\n    FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples.self,\n    FunctionalTests_SharedExamplesTests_SharedExamples.self,\n    FunctionalTests_Configuration_AfterEach.self,\n    FunctionalTests_Configuration_BeforeEach.self,\n]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ncheckout:\n  post:\n    - git submodule update --init --recursive\n\ndependencies:\n  pre:\n    - brew update\n\ntest:\n  override:\n    - rake test:ios\n    - rake test:osx\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Quick\nPODSPEC=Quick.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    rm $RELEASE_NOTES\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for Github styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Quick/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/script/travis-install-linux",
    "content": "#!/usr/bin/env bash\nset -e\n\n# See: https://github.com/kylef/swiftenv/wiki/Travis-CI\ncurl -sL https://gist.github.com/kylef/5c0475ff02b7c7671d2a/raw/621ef9b29bbb852fdfd2e10ed147b321d792c1e4/swiftenv-install.sh | bash\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/script/travis-install-osx",
    "content": "#!/usr/bin/env sh\nset -e\n\ngit submodule update --init --recursive\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/script/travis-script-linux",
    "content": "#!/usr/bin/env sh\n\n. ~/.swiftenv/init\nrake test:swiftpm\n"
  },
  {
    "path": "Carthage/Checkouts/Quick/script/travis-script-osx",
    "content": "#!/usr/bin/env sh\n\nif [ \"$PODSPEC\" ]; then\n  TASK=\"podspec:lint\"\nelse\n  TASK=\"test:$PLATFORM\"\nfi\n\necho \"Executing rake task: $TASK\"\nrake \"$TASK\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/.gitignore",
    "content": "# Xcode\nbuild/*\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\n*.xcworkspace\n!default.xcworkspace\nxcuserdata\nprofile\n*.moved-aside\n\nCarthage/Build\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/.gitmodules",
    "content": "[submodule \"Carthage/Checkouts/Nimble\"]\n\tpath = Carthage/Checkouts/Nimble\n\turl = https://github.com/Quick/Nimble.git\n[submodule \"Carthage/Checkouts/Quick\"]\n\tpath = Carthage/Checkouts/Quick\n\turl = https://github.com/sharplet/Quick.git\n[submodule \"Carthage/Checkouts/xcconfigs\"]\n\tpath = Carthage/Checkouts/xcconfigs\n\turl = https://github.com/jspahrsummers/xcconfigs.git\n[submodule \"Carthage/Checkouts/Result\"]\n\tpath = Carthage/Checkouts/Result\n\turl = https://github.com/antitypical/Result.git\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/.travis.yml",
    "content": "language: objective-c\nosx_image: xcode7.3\nbefore_install: true\ninstall: true\ngit:\n  submodules: false\nbefore_script:\n  - git submodule update --init --recursive\nscript:\n  - script/build\nxcode_workspace: ReactiveCocoa.xcworkspace\nmatrix:\n  include:\n    - xcode_scheme: ReactiveCocoa-Mac\n      env:\n        - XCODE_SDK=macosx\n        - XCODE_ACTION=\"build test\"\n        - XCODE_DESTINATION=\"arch=x86_64\"\n    - xcode_scheme: ReactiveCocoa-iOS\n      env:\n        - XCODE_SDK=iphonesimulator\n        - XCODE_ACTION=test\n        - XCODE_DESTINATION=\"platform=iOS Simulator,name=iPhone 6s\"\n    - xcode_scheme: ReactiveCocoa-tvOS\n      env:\n        - XCODE_SDK=appletvsimulator\n        - XCODE_ACTION=test\n        - XCODE_DESTINATION=\"platform=tvOS Simulator,name=Apple TV 1080p\"\n    - xcode_scheme: ReactiveCocoa-watchOS\n      env:\n        - XCODE_SDK=watchsimulator\n        - XCODE_ACTION=build\n        - XCODE_DESTINATION=\"platform=watchOS Simulator,name=Apple Watch - 38mm\"\n    - script:\n        - brew update\n        - brew outdated carthage || brew upgrade carthage\n        - carthage build --no-skip-current\n      env:\n        - JOB=CARTHAGE\n    - xcode_scheme: ReactiveCocoa-Mac\n      osx_image: xcode8\n      env:\n        - XCODE_SDK=macosx\n        - XCODE_ACTION=\"build test\"\n        - XCODE_DESTINATION=\"arch=x86_64\"\n        - TOOLCHAINS=\"com.apple.dt.toolchain.Swift_2_3\"\n    - xcode_scheme: ReactiveCocoa-iOS\n      osx_image: xcode8\n      env:\n        - XCODE_SDK=iphonesimulator\n        - XCODE_ACTION=\"build-for-testing test-without-building\"\n        - XCODE_DESTINATION=\"platform=iOS Simulator,name=iPhone 6s\"\n    - xcode_scheme: ReactiveCocoa-tvOS\n      osx_image: xcode8\n      env:\n        - XCODE_SDK=appletvsimulator\n        - XCODE_ACTION=\"build-for-testing test-without-building\"\n        - XCODE_DESTINATION=\"platform=tvOS Simulator,name=Apple TV 1080p\"\n    - xcode_scheme: ReactiveCocoa-watchOS\n      osx_image: xcode8\n      env:\n        - XCODE_SDK=watchsimulator\n        - XCODE_ACTION=build\n        - XCODE_DESTINATION=\"platform=watchOS Simulator,name=Apple Watch - 38mm\"\n    - script:\n        - brew update\n        - brew outdated carthage || brew upgrade carthage\n        - carthage build --no-skip-current\n      osx_image: xcode8\n      env:\n        - JOB=CARTHAGE\nnotifications:\n  email: false\n  slack:\n    secure: C9QTry5wUG9CfeH3rm3Z19R5rDWqDO7EhHAqHDXBxT6CpGRkTPFliJexpjBYB4sroJ8CiY5ZgTI2sjRBiAdGoE5ZQkfnwSoKQhWXkwo19TnbSnufr3cKO2SZkUhBqOlZcA+mgfjZ7rm2wm7RhpCR/4z8oBXDN4/xv0U5R2fLCLE=\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/CHANGELOG.md",
    "content": "# 4.0\n\nIf you’re new to the Swift API and migrating from RAC 2, start with the [3.0 changes](#30). This section only covers the differences between `3.0` and `4.0`. \n\nJust like in `RAC 3`, because Objective-C is still in widespread use, 99% of `RAC 2.x` code will continue to work under `RAC 4.0` without any changes. That is, `RAC 2.x` primitives are still available in `RAC 4.0`.\n\n`ReactiveCocoa 4.0` targets **Xcode 7.2.x** and **Swift 2.1.x**, and it supports `iOS 8.0`, `watchOS 2.0`, `tvOS 9.0` and `OS X 10.9`.\n\n\n#### Signal operators are protocol extensions\n\nThe biggest change from `RAC 3` to `RAC 4` is that `Signal` and `SignalProducer` operators are implemented as **protocol extensions** instead of global functions. This is similar to many of the collection protocol changes in the `Swift 2` standard\nlibrary.\n\nThis enables chaining signal operators with normal dot-method calling syntax, which makes autocompleting operators a lot easier.\nPreviously the custom `|>` was required to enable chaining global functions without a mess of nested calls and parenthesis.\n\n```swift\n/// RAC 3\nsignal \n  |> filter { $0 % 2 == 0 } \n  |> map { $0 * $0 } \n  |> observe { print($0) }\n\n/// RAC 4\nsignal\n  .filter { $0 % 2 == 0 }\n  .map { $0 * $0 }\n  .observeNext { print($0) }\n```\n\nAdditionally, this means that `SignalProducer` operators are less “magic”. In RAC 3 the `Signal` operators were implicitly lifted to work on `SignalProducer` via `|>`. This was a point of confusion for some, especially when browsing the\nsource looking for these operators. Now as protocol extensions, the `SignalProducer` operators are explicitly implemented in terms of their `Signal` counterpart when available.\n\n#### Removal of `|>` custom operator\n\nAs already alluded to above, the custom `|>` operator for chaining signals has been removed. Instead standard method calling syntax is used for chaining operators.\n\n#### Event cases are no longer boxed\n\nThe improvements to associated enum values in `Swift 2` mean that `Event` case no longer need to be `Box`ed. In fact, the `Box` dependency has been removed completely from `RAC 4`.\n\n#### Replacements for the `start` and `observer` overloads\n\nThe `observe` and `start` overloads taking `next`, `error`, etc. optional function parameters have been removed. They’ve been replaced with methods taking a single function with\nthe target `Event` case — `observeNext`, `startWithNext`, and the same for `failed` and `completed`. See [#2311](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2311) and [#2318](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2318) for more details.\n\n#### Renamed `try` and `catch` operators\n\nThe `try` and `catch` operators were renamed because of the addition of the error handling keywords with the same name. They are now `attempt` and `flatMapError` respectively. Also, `tryMap` was renamed to `attemptMap` for consistency.\n\n#### `flatten` and `flatMap` are now possible for all 4 combinations of `Signal`+`SignalProducer`\n\nThis fills a gap that was missing in `RAC 3`. It’s a common pattern to have signals-of-signals or signals-of-producers.\nThe addition of `flatten` and `flatMap` over these makes it now possible to work with any combination of `Signal`s and `SignalProducer`s.\n\n#### Renamed `Event.Error` to `Event.Failed`\n\nThe `Error` case of `Event` has changed to `Failed`. This aims to help clarify the terminating nature of failure/error events and puts them in the same tense as other terminating cases (`Interrupted` and `Completed`). Likewise, some operations and parameters have been renamed (e.g. `Signal.observeError` is now `Signal.observeFailed`, `Observer.sendError` is now `Observer.sendFailed`).\n\n#### Renamed signal generic parameters\n\nThe generic parameters of `Signal`, `SignalProducer`, and other related types\nhave been renamed to `Value` and `Error` from `T` and `E` respectively. This\nis in-line with changes to the standard library to give more descriptive names\nto type parameters for increased clarity. This should have limited impact,\nonly affecting generic, custom signal/producer extensions.\n\n#### Added missing `SignalProducer` operators\n\nThere were some `Signal` operators that were missing `SignalProducer` equivalents:\n\n* `takeUntil`\n* `combineLatestWith`\n* `sampleOn`\n* `takeUntilReplacement`\n* `zipWith`\n\n#### Added new operators:\n\n* `Signal.on`.\n* `Signal.merge(signals:)`.\n* `Signal.empty`.\n* `skipUntil`.\n* `replayLazily` ([#2639](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2639)).\n\n\n#### Renamed `PropertyOf<T>` to `AnyProperty<T>`\n\nThis is in-line with changes to the standard library in `Swift 2`.\n\n#### Enhancements to `PropertyType`\n\n`MutableProperty` received 3 new methods, similar to those in `Atomic`: `modify`, `swap`, and `withValue`.\nAdditionally, all `PropertyType`s now have a `signal: Signal<T>` in addition to their existing `producer: SignalProducer<T>` property.\n\n#### Publicized `Bag` and `Atomic`\n\n`Bag` and `Atomic` are now public. These are useful when creating custom operators for RAC types.\n\n#### `SignalProducer.buffer` no longer has a default capacity\n\nIn order to force users to think about the desired capacity, this no longer defaults to `Int.max`. Prior to this change one could have inadvertently cached every value emitted by the `SignalProducer`. This needs to be specified manually now.\n\n#### Added `SignalProducer.replayLazily` for multicasting\n\nIt’s still recommended to use `SignalProducer.buffer` or `PropertyType` when buffering behavior is desired. However, when you need to compose an existing `SignalProducer` to avoid duplicate side effects, this operator is now available.\n\nThe full semantics of the operator are documented in the code, and you can see [#2639](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2639) for full details.\n\n\n# 3.0\n\nReactiveCocoa 3.0 includes the first official Swift API, which is intended to\neventually supplant the Objective-C API entirely.\n\nHowever, because migration is hard and time-consuming, and because Objective-C\nis still in widespread use, 99% of RAC 2.x code will continue to work under RAC\n3.0 without any changes.\n\nSince the 3.0 changes are entirely additive, this document will discuss how\nconcepts from the Objective-C API map to the Swift API. For a complete diff of\nall changes, see [the 3.0 pull\nrequest](https://github.com/ReactiveCocoa/ReactiveCocoa/pull/1382).\n\n**[Additions](#additions)**\n\n 1. [Parameterized types](#parameterized-types)\n 1. [Interrupted event](#interrupted-event)\n 1. [Objective-C bridging](#objective-c-bridging)\n\n**[Replacements](#replacements)**\n\n 1. [Hot signals are now Signals](#hot-signals-are-now-signals)\n 1. [Cold signals are now SignalProducers](#cold-signals-are-now-signalproducers)\n 1. [Commands are now Actions](#commands-are-now-actions)\n 1. [Flattening/merging, concatenating, and switching are now one operator](#flatteningmerging-concatenating-and-switching-are-now-one-operator)\n 1. [Using PropertyType instead of RACObserve and RAC](#using-propertytype-instead-of-racobserve-and-rac)\n 1. [Using Signal.pipe instead of RACSubject](#using-signalpipe-instead-of-racsubject)\n 1. [Using SignalProducer.buffer instead of replaying](#using-signalproducerbuffer-instead-of-replaying)\n 1. [Using startWithSignal instead of multicasting](#using-startwithsignal-instead-of-multicasting)\n\n**[Minor changes](#minor-changes)**\n\n 1. [Disposable changes](#disposable-changes)\n 1. [Scheduler changes](#scheduler-changes)\n\n## Additions\n\n### Parameterized types\n\nThanks to Swift, **it is now possible to express the type of value that a signal\ncan send. RAC also requires that the type of errors be specified.**\n\nFor example, `Signal<Int, NSError>` is a signal that may send zero or more\nintegers, and which may send an error of type `NSError`.\n\n**If it is impossible for a signal to error out, use the built-in\n[`NoError`](ReactiveCocoa/Swift/Errors.swift) type**\n(which can be referred to, but never created) to represent that\ncase—for example, `Signal<String, NoError>` is a signal that may send zero or\nmore strings, and which will _not_ send an error under any circumstances.\n\nTogether, these additions make it much simpler to reason about signal\ninteractions, and protect against several kinds of common bugs that occurred in\nObjective-C.\n\n### Interrupted event\n\nIn addition to the `Next`, `Error`, and `Completed` events that have always been\npart of RAC, version 3.0 [adds another terminating\nevent](https://github.com/ReactiveCocoa/ReactiveCocoa/pull/1735)—called\n`Interrupted`—that is used to communicate cancellation.\n\nNow, **whenever a [producer](#cold-signals-are-now-signalproducers) is disposed\nof, one final `Interrupted` event will be sent to all consumers,** giving them\na chance to react to the cancellation.\n\nSimilarly, observing a [hot signal](#hot-signals-are-now-signals) that has\nalready terminated will immediately result in an `Interrupted` event, to clearly\nindicate that no further events are possible.\n\nThis brings disposal semantics more in line with normal event delivery, where\nevents propagate downstream from producers to consumers. The result is a simpler\nmodel for reasoning about non-erroneous, yet unsuccessful, signal terminations.\n\n**Note:** Custom `Signal` and `SignalProducer` operators should handle any received\n`Interrupted` event by forwarding it to their own observers. This ensures that\ninterruption correctly propagates through the whole signal chain.\n\n### Objective-C bridging\n\n**To support interoperation between the Objective-C APIs introduced in RAC 2 and\nthe Swift APIs introduced in RAC 3, the framework offers [bridging\nfunctions](ReactiveCocoa/Swift/ObjectiveCBridging.swift)** that can convert types\nback and forth between the two.\n\nBecause the APIs are based on fundamentally different designs, the conversion is\nnot always one-to-one; however, every attempt has been made to faithfully\ntranslate the concepts between the two APIs (and languages).\n\n**Common conversions include:**\n\n* The `RACSignal.toSignalProducer` method **†**\n    * Converts `RACSignal *` to `SignalProducer<AnyObject?, NSError>`\n* The `toRACSignal()` function\n    * Converts `SignalProducer<AnyObject?, ErrorType>` to `RACSignal *`\n    * Converts `Signal<AnyObject?, ErrorType>` to `RACSignal *`\n* The `RACCommand.toAction` method **‡**\n    * Converts `RACCommand *` to `Action<AnyObject?, AnyObject?, NSError>`\n* The `toRACCommand` function **‡**\n    * Converts `Action<AnyObject?, AnyObject?, ErrorType>` to `RACCommand *`\n\n**†** It is not possible (in the general case) to convert arbitrary `RACSignal`\ninstances to `Signal`s, because any `RACSignal` subscription could potentially\ninvolve side effects. To obtain a `Signal`, use `RACSignal.toSignalProducer`\nfollowed by `SignalProducer.start`, thereby making those side effects explicit.\n\n**‡** Unfortunately, the `executing` properties of actions and commands are not\nsynchronized across the API bridge. To ensure consistency, only observe the\n`executing` property from the base object (the one passed _into_ the bridge, not\nretrieved from it), so updates occur no matter which object is used for\nexecution.\n\n## Replacements\n\n### Hot signals are now Signals\n\nIn the terminology of RAC 2, a “hot” `RACSignal` does not trigger any side effects\nwhen a `-subscribe…` method is called upon it. In other words, hot signals are\nentirely producer-driven and push-based, and consumers (subscribers) cannot have\nany effect on their lifetime.\n\nThis pattern is useful for notifying observers about events that will occur _no\nmatter what_. For example, a `loading` boolean might flip between true and false\nregardless of whether anything is observing it.\n\nConcretely, _every_ `RACSubject` is a kind of hot signal, because the events\nbeing forwarded are not determined by the number of subscribers on the subject.\n\nIn RAC 3, **“hot” signals are now solely represented by the\n[`Signal`](ReactiveCocoa/Swift/Signal.swift) class**, and “cold” signals have been\n[separated into their own type](#cold-signals-are-now-signalproducers). This\nreduces complexity by making it clear that no `Signal` object can trigger side\neffects when observed.\n\n### Cold signals are now SignalProducers\n\nIn the terminology of RAC 2, a “cold” `RACSignal` performs its work one time for\n_every_ subscription. In other words, cold signals perform side effects when\na `-subscribe…` method is called upon them, and may be able to cancel\nin-progress work if `-dispose` is called upon the returned `RACDisposable`.\n\nThis pattern is broadly useful because it minimizes unnecessary work, and\nallows operators like `take`, `retry`, `concat`, etc. to manipulate when work is\nstarted and cancelled. Cold signals are also similar to how [futures and\npromises](http://en.wikipedia.org/wiki/Futures_and_promises) work, and can be\nuseful for structuring asynchronous code (like network requests).\n\nIn RAC 3, **“cold” signals are now solely represented by the\n[`SignalProducer`](ReactiveCocoa/Swift/SignalProducer.swift) class**, which\nclearly indicates their relationship to [“hot”\nsignals](#hot-signals-are-now-signals). As the name indicates, a signal\n_producer_ is responsible for creating\na [_signal_](#hot-signals-are-now-signals) (when started), and can\nperform work as part of that process—meanwhile, the signal can have any number\nof observers without any additional side effects.\n\n### Commands are now Actions\n\nInstead of the ambiguously named `RACCommand`, the Swift API offers the\n[`Action`](ReactiveCocoa/Swift/Action.swift) type—named as such because it’s\nmainly useful in UI programming—to fulfill the same purpose.\n\nLike the rest of the Swift API, actions are\n[parameterized](#parameterized-types) by the types they use. **An action must\nindicate the type of input it accepts, the type of output it produces, and\nwhat kinds of errors can occur (if any).** This eliminates a few classes of type\nerror, and clarifies intention.\n\nActions are also intended to be simpler overall than their predecessor:\n\n * **Unlike commands, actions are not bound to or dependent upon the main\n   thread**, making it easier to reason about when they can be executed and when\n   they will generate notifications.\n * **Actions also only support serial execution**, because concurrent execution\n   was a rarely used feature of `RACCommand` that added significant complexity\n   to the interface and implementation.\n\nBecause actions are frequently used in conjunction with AppKit or UIKit, there\nis also a `CocoaAction` class that erases the type parameters of an `Action`,\nallowing it to be used from Objective-C.\n\nAs an example, an action can be wrapped and bound to `UIControl` like so:\n\n```swift\nself.cocoaAction = CocoaAction(underlyingAction)\nself.button.addTarget(self.cocoaAction, action: CocoaAction.selector, forControlEvents: UIControlEvents.TouchUpInside)\n```\n\n### Flattening/merging, concatenating, and switching are now one operator\n\nRAC 2 offers several operators for transforming a signal-of-signals into one\n`RACSignal`, including:\n\n * `-flatten`\n * `-flattenMap:`\n * `+merge:`\n * `-concat`\n * `+concat:`\n * `-switchToLatest`\n\nBecause `-flattenMap:` is the easiest to use, it was often\nincorrectly chosen even when concatenation or switching semantics are more\nappropriate.\n\n**RAC 3 distills these concepts down into just two operators, `flatten` and `flatMap`.**\nNote that these do _not_ have the same behavior as `-flatten` and `-flattenMap:`\nfrom RAC 2. Instead, both accept a “strategy” which determines how the\nproducer-of-producers should be integrated, which can be one of:\n\n * `.Merge`, which is equivalent to RAC 2’s `-flatten` or `+merge:`\n * `.Concat`, which is equivalent to `-concat` or `+concat:`\n * `.Latest`, which is equivalent to `-switchToLatest`\n\nThis reduces the API surface area, and forces callers to consciously think about\nwhich strategy is most appropriate for a given use.\n\n**For streams of exactly one value, calls to `-flattenMap:` can be replaced with\n`flatMap(.Concat)`**, which has the additional benefit of predictable behavior if\nthe input stream is refactored to have more values in the future.\n\n### Using PropertyType instead of RACObserve and RAC\n\nTo be more Swift-like, RAC 3 de-emphasizes [Key-Value Coding](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/KeyValueCoding/Articles/KeyValueCoding.html) (KVC)\nand [Key-Value Observing](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html) (KVO)\nin favor of a less “magical” representation for properties.\n**The [`PropertyType` protocol and implementations](ReactiveCocoa/Swift/Property.swift)\nreplace most uses of the `RACObserve()` and `RAC()` macros.**\n\nFor example, `MutableProperty` can be used to represent a property that can be\nbound to. If changes to that property should be visible to consumers, it can\nadditionally be wrapped in `PropertyOf` (to hide the mutable bits) and exposed\npublicly.\n\n**If KVC or KVO is required by a specific API**—for example, to observe changes\nto `NSOperation.executing`—RAC 3 offers a `DynamicProperty` type that can wrap\nthose key paths. Use this class with caution, though, as it can’t offer any type\nsafety, and many APIs (especially in AppKit and UIKit) are not documented to be\nKVO-compliant.\n\n### Using Signal.pipe instead of RACSubject\n\nSince the `Signal` type, like `RACSubject`, is [always “hot”](#hot-signals-are-now-signals),\nthere is a special class method for creating a controllable signal. **The\n`Signal.pipe` method can replace the use of subjects**, and expresses intent\nbetter by separating the observing API from the sending API.\n\nTo use a pipe, set up observers on the signal as desired, then send values to\nthe sink:\n\n```swift\nlet (signal, sink) = Signal<Int, NoError>.pipe()\n\nsignal.observe(next: { value in\n    print(value)\n})\n\n// Prints each number\nsendNext(sink, 0)\nsendNext(sink, 1)\nsendNext(sink, 2)\n```\n\n### Using SignalProducer.buffer instead of replaying\n\nThe producer version of\n[`Signal.pipe`](#using-signalpipe-instead-of-racsubject),\n**the `SignalProducer.buffer` method can replace replaying** with\n`RACReplaySubject` or any of the `-replay…` methods.\n\nConceptually, `buffer` creates a (optionally bounded) queue for events, much\nlike `RACReplaySubject`, and replays those events when new `Signal`s are created\nfrom the producer.\n\nFor example, to replay the values of an existing `Signal`, it just needs to be\nfed into the write end of the buffer:\n\n```swift\nlet signal: Signal<Int, NoError>\nlet (producer, sink) = SignalProducer<Int, NoError>.buffer()\n\n// Saves observed values in the buffer\nsignal.observe(sink)\n\n// Prints each value buffered\nproducer.start(next: { value in\n    print(value)\n})\n```\n\n### Using startWithSignal instead of multicasting\n\n`RACMulticastConnection` and the `-publish` and `-multicast:` operators were\nalways poorly understood features of RAC 2. In RAC 3, thanks to the `Signal` and\n`SignalProducer` split, **the `SignalProducer.startWithSignal` method can\nreplace multicasting**.\n\n`startWithSignal` allows any number of observers to attach to the created signal\n_before_ any work is begun—therefore, the work (and any side effects) still\noccurs just once, but the values can be distributed to multiple interested\nobservers. This fulfills the same purpose of multicasting, in a much clearer and\nmore tightly-scoped way.\n\nFor example:\n\n```swift\nlet producer = timer(5, onScheduler: QueueScheduler.mainQueueScheduler).take(3)\n\n// Starts just one timer, sending the dates to two different observers as they\n// are generated.\nproducer.startWithSignal { signal, disposable in\n    signal.observe(next: { date in\n        print(date)\n    })\n\n    signal.observe(someOtherObserver)\n}\n```\n\n## Minor changes\n\n### Disposable changes\n\n[Disposables](ReactiveCocoa/Swift/Disposable.swift) haven’t changed much overall\nin RAC 3, besides the addition of a protocol and minor naming tweaks.\n\nThe biggest change to be aware of is that **setting\n`SerialDisposable.innerDisposable` will always dispose of the previous value**,\nwhich helps prevent resource leaks or logic errors from forgetting to dispose\nmanually.\n\n### Scheduler changes\n\nRAC 3 replaces the multipurpose `RACScheduler` class with two protocols,\n[`SchedulerType` and `DateSchedulerType`](ReactiveCocoa/Swift/Scheduler.swift), with multiple implementations of each.\nThis design indicates and enforces the capabilities of each scheduler using the type\nsystem.\n\nIn addition, **the `mainThreadScheduler` has been replaced with `UIScheduler` and\n`QueueScheduler.mainQueueScheduler`**. The `UIScheduler` type runs operations as\nsoon as possible on the main thread—even synchronously (if possible), thereby\nreplacing RAC 2’s `-performOnMainThread` operator—while\n`QueueScheduler.mainQueueScheduler` will always enqueue work after the current\nrun loop iteration, and can be used to schedule work at a future date.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/CONTRIBUTING.md",
    "content": "We love that you're interested in contributing to this project!\n\nTo make the process as painless as possible, we have just a couple of guidelines\nthat should make life easier for everyone involved.\n\n## Prefer Pull Requests\n\nIf you know exactly how to implement the feature being suggested or fix the bug\nbeing reported, please open a pull request instead of an issue. Pull requests are easier than\npatches or inline code blocks for discussing and merging the changes.\n\nIf you can't make the change yourself, please open an issue after making sure\nthat one isn't already logged. We are also happy to help you in our Slack room (ping [@ReactiveCocoa](https://twitter.com/ReactiveCocoa) for an invitation).\n\n## Contributing Code\n\nFork this repository, make it awesomer (preferably in a branch named for the\ntopic), send a pull request!\n\nAll code contributions should match our coding conventions ([Objective-c](https://github.com/github/objective-c-conventions) and [Swift](https://github.com/github/swift-style-guide)). If your particular case is not described in the coding convention, check the ReactiveCocoa codebase.\n\nThanks for contributing! :boom::camel:\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Cartfile",
    "content": "github \"antitypical/Result\" ~> 2.1.3\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Cartfile.private",
    "content": "github \"jspahrsummers/xcconfigs\" \"1ef9763\"\ngithub \"sharplet/Quick\" \"xcode-8\"\ngithub \"Quick/Nimble\" \"188caeb\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Cartfile.resolved",
    "content": "github \"Quick/Nimble\" \"188caeb094bc342614d8a5c706cd8bb9a6c355eb\"\ngithub \"sharplet/Quick\" \"e2cfb86c8379417c9272bb853e9f0c407167d486\"\ngithub \"antitypical/Result\" \"2.1.3\"\ngithub \"jspahrsummers/xcconfigs\" \"1ef97639ffbe041da0b1392b2114fa19b922a7a1\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/.gitignore",
    "content": ".DS_Store\nxcuserdata/\nbuild/\n.idea\nDerivedData/\nNimble.framework.zip\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\n# Packages/\n.build/\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      sudo: required\n      env: TYPE=podspec\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 TYPE=ios\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=9.0 TYPE=tvos\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 TYPE=osx\n    - os: osx\n      env: TYPE=swiftpm\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=10.0 TYPE=ios\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=10.0 TYPE=tvos\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.12 TYPE=osx\n      osx_image: xcode8\n    - os: linux\n      dist: trusty\n      sudo: required\n      env: TYPE=swiftpm\ninstall:\n  - if [[ \"$TYPE\" == \"swiftpm\" ]]; then eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"; fi\n  - if [[ \"$TYPE\" == \"podspec\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - ./test $TYPE\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Welcome to Nimble!](#welcome-to-nimble!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Nimble!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nNimble should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n**tl;dr:** If you've added a file to the project, make sure it's\nincluded in both the OS X and iOS targets.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Nimble (eg - v2.0.0 or git sha `20a3f3b4e63cc8d97c92c4164bf36f2a2c9a6e1b`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- Use `Nimble.xcodeproj` to work on Nimble.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of Nimble\n  before submitting your pull request. You can run all the OS X & iOS unit\n  tests using `./test`.\n- If you've added a file to the project, make sure it's included in both\n  the OS X and iOS targets.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\n### Code of Conduct\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n### Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Nimble/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Update [Quick](https://github.com/Quick/Quick)\n  - Update Quick's submodule reference to the newly released Nimble version\n  - Update Nimble version in `README.md` and Documentation in [Quick](https://github.com/Quick/Quick) if it's not a patch version update.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Gemfile",
    "content": "# A sample Gemfile\nsource \"https://rubygems.org\"\n\ngem 'cocoapods'\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/LICENSE.md",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014 Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Nimble.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Nimble\"\n  s.version      = \"4.1.0\"\n  s.summary      = \"A Matcher Framework for Swift and Objective-C\"\n  s.description  = <<-DESC\n                   Use Nimble to express the expected outcomes of Swift or Objective-C expressions. Inspired by Cedar.\n                   DESC\n  s.homepage     = \"https://github.com/Quick/Nimble\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE.md\" }\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = \"9.0\"\n  s.source       = { :git => \"https://github.com/Quick/Nimble.git\", :tag => \"v#{s.version}\" }\n\n  s.source_files = \"Sources/Nimble/**/*.{swift,h,m}\"\n  s.private_header_files = \"Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h\"\n  s.exclude_files = \"Sources/Nimble/Adapters/NonObjectiveC/*.swift\"\n  s.weak_framework = \"XCTest\"\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO', 'OTHER_LDFLAGS' => '-weak-lswiftXCTest', 'FRAMEWORK_SEARCH_PATHS' => '$(inherited) \"$(PLATFORM_DIR)/Developer/Library/Frameworks\"' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Nimble.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F1A74291940169200FFFC47 /* Nimble.framework */; };\n\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */; };\n\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F925EAD195C0D6300ED456B /* Nimble.framework */; };\n\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t1F1A74361940169200FFFC47 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F5DF1541BDCA0CE00C3A531;\n\t\t\tremoteInfo = \"Nimble-tvOS\";\n\t\t};\n\t\t1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectWithLazyProperty.swift; sourceTree = \"<group>\"; };\n\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SynchronousTests.swift; sourceTree = \"<group>\"; };\n\t\t1F14FB63194180C5009F2A08 /* utils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = utils.swift; sourceTree = \"<group>\"; };\n\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DSL.h; sourceTree = \"<group>\"; };\n\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DSL.m; sourceTree = \"<group>\"; };\n\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBExceptionCapture.h; sourceTree = \"<group>\"; };\n\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBExceptionCapture.m; sourceTree = \"<group>\"; };\n\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBStringify.h; sourceTree = \"<group>\"; };\n\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBStringify.m; sourceTree = \"<group>\"; };\n\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBExpectation.swift; sourceTree = \"<group>\"; };\n\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBObjCMatcher.swift; sourceTree = \"<group>\"; };\n\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExceptionCapture.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsyncMatcherWrapper.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherFunc.swift; sourceTree = \"<group>\"; };\n\t\t1F1A74291940169200FFFC47 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A742D1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1A742E1940169200FFFC47 /* Nimble.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Nimble.h; sourceTree = \"<group>\"; };\n\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A743A1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAKindOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F2752D119445B8400052A26 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; lineEnding = 0; path = README.md; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.markdown; };\n\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmptyTest.swift; sourceTree = \"<group>\"; };\n\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAsyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NimbleSpecHelper.h; sourceTree = \"<group>\"; };\n\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeAnInstanceOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeKindOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeCloseToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeginWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeIdenticalToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTruthyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalsyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTrueTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalseTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeNilTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCContainTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEndWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEqualTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCMatchTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCRaiseExceptionTest.m; sourceTree = \"<group>\"; };\n\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoidTest.swift; sourceTree = \"<group>\"; };\n\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoid.swift; sourceTree = \"<group>\"; };\n\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsynchronousTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RaisesExceptionTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLogicalTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeNilTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeginWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F01195C189500ED456B /* ContainTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContainTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F04195C18B700ED456B /* EqualTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EqualTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeEmptyTest.m; sourceTree = \"<group>\"; };\n\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToTest.swift; sourceTree = \"<group>\"; };\n\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleEnvironment.swift; sourceTree = \"<group>\"; };\n\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotificationTest.swift; sourceTree = \"<group>\"; };\n\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotification.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionRecorder.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AdapterProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleXCTestHandler.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD081968AB07008ED995 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expectation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expression.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FailureMessage.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOf.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeAKindOf.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseTo.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmpty.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeginWith.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThanOrEqualTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeIdenticalTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThanOrEqual.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLogical.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeNil.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Contain.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWith.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Equal.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = RaisesException.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD251968AB07008ED995 /* Functional.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Functional.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD261968AB07008ED995 /* Async.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Async.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SourceLocation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Stringers.swift; sourceTree = \"<group>\"; };\n\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionDispatcher.swift; sourceTree = \"<group>\"; };\n\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowErrorTest.swift; sourceTree = \"<group>\"; };\n\t\t29EA59651B551EE6002D767E /* ThrowError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowError.swift; sourceTree = \"<group>\"; };\n\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCount.swift; sourceTree = \"<group>\"; };\n\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCountTest.swift; sourceTree = \"<group>\"; };\n\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCHaveCount.m; sourceTree = \"<group>\"; };\n\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOfTest.swift; sourceTree = \"<group>\"; };\n\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOf.swift; sourceTree = \"<group>\"; };\n\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSatisfyAnyOfTest.m; sourceTree = \"<group>\"; };\n\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjcStringersTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCUserDescriptionTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserDescriptionTest.swift; sourceTree = \"<group>\"; };\n\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchError.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchErrorTest.swift; sourceTree = \"<group>\"; };\n\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"DSL+Wait.swift\"; sourceTree = \"<group>\"; };\n\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPassTest.swift; sourceTree = \"<group>\"; };\n\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToObjectTest.swift; sourceTree = \"<group>\"; };\n\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPass.swift; sourceTree = \"<group>\"; };\n\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Match.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchTest.swift; sourceTree = \"<group>\"; };\n\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAllPassTest.m; sourceTree = \"<group>\"; };\n\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+Register.m\"; sourceTree = \"<group>\"; };\n\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CurrentTestCaseTracker.h; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F1A74251940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74311940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA9195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB4195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F14FB61194180A7009F2A08 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F14FB63194180C5009F2A08 /* utils.swift */,\n\t\t\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */,\n\t\t\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */,\n\t\t\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */,\n\t\t\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */,\n\t\t\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */,\n\t\t\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */,\n\t\t\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */,\n\t\t\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */,\n\t\t\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */,\n\t\t\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */,\n\t\t\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */,\n\t\t\t);\n\t\t\tpath = ObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */,\n\t\t\t);\n\t\t\tpath = NonObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A741F1940169200FFFC47 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F2752D119445B8400052A26 /* README.md */,\n\t\t\t\t1F1A742B1940169200FFFC47 /* Nimble */,\n\t\t\t\t1F1A74381940169200FFFC47 /* NimbleTests */,\n\t\t\t\t1F1A742A1940169200FFFC47 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742A1940169200FFFC47 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A74291940169200FFFC47 /* Nimble.framework */,\n\t\t\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */,\n\t\t\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */,\n\t\t\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */,\n\t\t\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */,\n\t\t\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742B1940169200FFFC47 /* Nimble */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD041968AB07008ED995 /* Adapters */,\n\t\t\t\t1FD8CD081968AB07008ED995 /* DSL.swift */,\n\t\t\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */,\n\t\t\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */,\n\t\t\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */,\n\t\t\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */,\n\t\t\t\t1F1A742D1940169200FFFC47 /* Info.plist */,\n\t\t\t\t1FD8CD0C1968AB07008ED995 /* Matchers */,\n\t\t\t\t1F1A742E1940169200FFFC47 /* Nimble.h */,\n\t\t\t\t1FD8CD241968AB07008ED995 /* Utils */,\n\t\t\t);\n\t\t\tname = Nimble;\n\t\t\tpath = Sources/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74381940169200FFFC47 /* NimbleTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */,\n\t\t\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */,\n\t\t\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */,\n\t\t\t\t1FFD729A1963FC8200CD29A2 /* objc */,\n\t\t\t\t1F14FB61194180A7009F2A08 /* Helpers */,\n\t\t\t\t1F925EE3195C11B000ED456B /* Matchers */,\n\t\t\t\t1F1A74391940169200FFFC47 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = NimbleTests;\n\t\t\tpath = Tests/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74391940169200FFFC47 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A743A1940169200FFFC47 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F925EE3195C11B000ED456B /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */,\n\t\t\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */,\n\t\t\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */,\n\t\t\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */,\n\t\t\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */,\n\t\t\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */,\n\t\t\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */,\n\t\t\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */,\n\t\t\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */,\n\t\t\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */,\n\t\t\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */,\n\t\t\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */,\n\t\t\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */,\n\t\t\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */,\n\t\t\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */,\n\t\t\t\t1F925F01195C189500ED456B /* ContainTest.swift */,\n\t\t\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */,\n\t\t\t\t1F925F04195C18B700ED456B /* EqualTest.swift */,\n\t\t\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */,\n\t\t\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */,\n\t\t\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */,\n\t\t\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */,\n\t\t\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */,\n\t\t\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */,\n\t\t\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD041968AB07008ED995 /* Adapters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */,\n\t\t\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */,\n\t\t\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */,\n\t\t\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */,\n\t\t\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */,\n\t\t\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */,\n\t\t\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */,\n\t\t\t);\n\t\t\tpath = Adapters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD0C1968AB07008ED995 /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */,\n\t\t\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */,\n\t\t\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */,\n\t\t\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */,\n\t\t\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */,\n\t\t\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */,\n\t\t\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */,\n\t\t\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */,\n\t\t\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */,\n\t\t\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */,\n\t\t\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */,\n\t\t\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */,\n\t\t\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */,\n\t\t\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */,\n\t\t\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */,\n\t\t\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */,\n\t\t\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */,\n\t\t\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */,\n\t\t\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */,\n\t\t\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */,\n\t\t\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */,\n\t\t\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */,\n\t\t\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */,\n\t\t\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */,\n\t\t\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */,\n\t\t\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */,\n\t\t\t\t29EA59651B551EE6002D767E /* ThrowError.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD241968AB07008ED995 /* Utils */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD251968AB07008ED995 /* Functional.swift */,\n\t\t\t\t1FD8CD261968AB07008ED995 /* Async.swift */,\n\t\t\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */,\n\t\t\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */,\n\t\t\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */,\n\t\t\t);\n\t\t\tpath = Utils;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FFD729A1963FC8200CD29A2 /* objc */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */,\n\t\t\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */,\n\t\t\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */,\n\t\t\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */,\n\t\t\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */,\n\t\t\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */,\n\t\t\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */,\n\t\t\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */,\n\t\t\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */,\n\t\t\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */,\n\t\t\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */,\n\t\t\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */,\n\t\t\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */,\n\t\t\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */,\n\t\t\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */,\n\t\t\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */,\n\t\t\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */,\n\t\t\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */,\n\t\t\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */,\n\t\t\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */,\n\t\t\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */,\n\t\t\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */,\n\t\t\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */,\n\t\t\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */,\n\t\t\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */,\n\t\t\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */,\n\t\t\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */,\n\t\t\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */,\n\t\t\t);\n\t\t\tpath = objc;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F1A74261940169200FFFC47 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAA195C0D6300ED456B /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74241940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74251940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74261940169200FFFC47 /* Headers */,\n\t\t\t\t1F1A74271940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-iOS\";\n\t\t\tproductName = \"Nimble-iOS\";\n\t\t\tproductReference = 1F1A74291940169200FFFC47 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74301940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74311940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74321940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */,\n\t\t\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-iOSTests\";\n\t\t\tproductName = \"Nimble-iOSTests\";\n\t\t\tproductReference = 1F1A74341940169200FFFC47 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */,\n\t\t\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-tvOS\";\n\t\t\tproductName = \"Nimble-tvOS\";\n\t\t\tproductReference = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-tvOSTests\";\n\t\t\tproductName = \"Nimble-tvOSTests\";\n\t\t\tproductReference = 1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EA8195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EA9195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EAA195C0D6300ED456B /* Headers */,\n\t\t\t\t1F925EAB195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-OSX\";\n\t\t\tproductName = \"Nimble-OSX\";\n\t\t\tproductReference = 1F925EAD195C0D6300ED456B /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EB3195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EB4195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EB5195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */,\n\t\t\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-OSXTests\";\n\t\t\tproductName = \"Nimble-OSXTests\";\n\t\t\tproductReference = 1F925EB7195C0D6300ED456B /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t1F1A74201940169200FFFC47 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0730;\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = \"Jeff Hui\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F1A74281940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F1A74331940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F1A74281940169200FFFC47;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF1541BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF15D1BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EAC195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EB6195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F925EAC195C0D6300ED456B;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 1F1A741F1940169200FFFC47;\n\t\t\tproductRefGroup = 1F1A742A1940169200FFFC47 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */,\n\t\t\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */,\n\t\t\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */,\n\t\t\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */,\n\t\t\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */,\n\t\t\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F1A74271940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74321940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAB195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB5195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F1A74241940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74301940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */,\n\t\t\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */,\n\t\t\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */,\n\t\t\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */,\n\t\t\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */,\n\t\t\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */,\n\t\t\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */,\n\t\t\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */,\n\t\t\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */,\n\t\t\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */,\n\t\t\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */,\n\t\t\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */,\n\t\t\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */,\n\t\t\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */,\n\t\t\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */,\n\t\t\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */,\n\t\t\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */,\n\t\t\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */,\n\t\t\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */,\n\t\t\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */,\n\t\t\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */,\n\t\t\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */,\n\t\t\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */,\n\t\t\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */,\n\t\t\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */,\n\t\t\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */,\n\t\t\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */,\n\t\t\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */,\n\t\t\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */,\n\t\t\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */,\n\t\t\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */,\n\t\t\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */,\n\t\t\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */,\n\t\t\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */,\n\t\t\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */,\n\t\t\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA8195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */,\n\t\t\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB3195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F1A74361940169200FFFC47 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */;\n\t\t\ttargetProxy = 1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F1A743D1940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A743E1940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74401940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74411940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74431940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74441940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1671BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1691BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC1195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC2195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC4195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC5195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A743D1940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A743E1940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74401940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74411940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74431940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74441940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1671BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1691BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC1195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC2195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC4195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC5195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 1F1A74201940169200FFFC47 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-OSX\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EB6195C0D6300ED456B\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-OSXTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-OSX\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-iOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74331940169200FFFC47\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-iOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-iOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-tvOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF15D1BDCA0CE00C3A531\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-tvOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Nimble\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/README.md",
    "content": "# Nimble\n\nUse Nimble to express the expected outcomes of Swift\nor Objective-C expressions. Inspired by\n[Cedar](https://github.com/pivotal/cedar).\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n\n# How to Use Nimble\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [Some Background: Expressing Outcomes Using Assertions in XCTest](#some-background-expressing-outcomes-using-assertions-in-xctest)\n- [Nimble: Expectations Using `expect(...).to`](#nimble-expectations-using-expectto)\n  - [Custom Failure Messages](#custom-failure-messages)\n  - [Type Checking](#type-checking)\n  - [Operator Overloads](#operator-overloads)\n  - [Lazily Computed Values](#lazily-computed-values)\n  - [C Primitives](#c-primitives)\n  - [Asynchronous Expectations](#asynchronous-expectations)\n  - [Objective-C Support](#objective-c-support)\n  - [Disabling Objective-C Shorthand](#disabling-objective-c-shorthand)\n- [Built-in Matcher Functions](#built-in-matcher-functions)\n  - [Equivalence](#equivalence)\n  - [Identity](#identity)\n  - [Comparisons](#comparisons)\n  - [Types/Classes](#typesclasses)\n  - [Truthiness](#truthiness)\n  - [Swift Error Handling](#swift-error-handling)\n  - [Exceptions](#exceptions)\n  - [Collection Membership](#collection-membership)\n  - [Strings](#strings)\n  - [Checking if all elements of a collection pass a condition](#checking-if-all-elements-of-a-collection-pass-a-condition)\n  - [Verify collection count](#verify-collection-count)\n  - [Matching a value to any of a group of matchers](#matching-a-value-to-any-of-a-group-of-matchers)\n- [Writing Your Own Matchers](#writing-your-own-matchers)\n  - [Lazy Evaluation](#lazy-evaluation)\n  - [Type Checking via Swift Generics](#type-checking-via-swift-generics)\n  - [Customizing Failure Messages](#customizing-failure-messages)\n  - [Supporting Objective-C](#supporting-objective-c)\n    - [Properly Handling `nil` in Objective-C Matchers](#properly-handling-nil-in-objective-c-matchers)\n- [Installing Nimble](#installing-nimble)\n  - [Installing Nimble as a Submodule](#installing-nimble-as-a-submodule)\n  - [Installing Nimble via CocoaPods](#installing-nimble-via-cocoapods)\n  - [Using Nimble without XCTest](#using-nimble-without-xctest)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Some Background: Expressing Outcomes Using Assertions in XCTest\n\nApple's Xcode includes the XCTest framework, which provides\nassertion macros to test whether code behaves properly.\nFor example, to assert that `1 + 1 = 2`, XCTest has you write:\n\n```swift\n// Swift\n\nXCTAssertEqual(1 + 1, 2, \"expected one plus one to equal two\")\n```\n\nOr, in Objective-C:\n\n```objc\n// Objective-C\n\nXCTAssertEqual(1 + 1, 2, @\"expected one plus one to equal two\");\n```\n\nXCTest assertions have a couple of drawbacks:\n\n1. **Not enough macros.** There's no easy way to assert that a string\n   contains a particular substring, or that a number is less than or\n   equal to another.\n2. **It's hard to write asynchronous tests.** XCTest forces you to write\n   a lot of boilerplate code.\n\nNimble addresses these concerns.\n\n# Nimble: Expectations Using `expect(...).to`\n\nNimble allows you to express expectations using a natural,\neasily understood language:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).to(equal(\"Squee!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).to(equal(@\"Squee!\"));\n```\n\n> The `expect` function autocompletes to include `file:` and `line:`,\n  but these parameters are optional. Use the default values to have\n  Xcode highlight the correct line when an expectation is not met.\n\nTo perform the opposite expectation--to assert something is *not*\nequal--use `toNot` or `notTo`:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).toNot(equal(\"Oh, hello there!\"))\nexpect(seagull.squawk).notTo(equal(\"Oh, hello there!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).toNot(equal(@\"Oh, hello there!\"));\nexpect(seagull.squawk).notTo(equal(@\"Oh, hello there!\"));\n```\n\n## Custom Failure Messages\n\nWould you like to add more information to the test's failure messages? Use the `description` optional argument to add your own text:\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(3))\n// failed - expected to equal <3>, got <2>\n\nexpect(1 + 1).to(equal(3), description: \"Make sure libKindergartenMath is loaded\")\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3>, got <2>\n```\n\nOr the *WithDescription version in Objective-C:\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(@(1+1)).to(equal(@3));\n// failed - expected to equal <3.0000>, got <2.0000>\n\nexpect(@(1+1)).toWithDescription(equal(@3), @\"Make sure libKindergartenMath is loaded\");\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3.0000>, got <2.0000>\n```\n\n## Type Checking\n\nNimble makes sure you don't compare two types that don't match:\n\n```swift\n// Swift\n\n// Does not compile:\nexpect(1 + 1).to(equal(\"Squee!\"))\n```\n\n> Nimble uses generics--only available in Swift--to ensure\n  type correctness. That means type checking is\n  not available when using Nimble in Objective-C. :sob:\n\n## Operator Overloads\n\nTired of so much typing? With Nimble, you can use overloaded operators\nlike `==` for equivalence, or `>` for comparisons:\n\n```swift\n// Swift\n\n// Passes if squawk does not equal \"Hi!\":\nexpect(seagull.squawk) != \"Hi!\"\n\n// Passes if 10 is greater than 2:\nexpect(10) > 2\n```\n\n> Operator overloads are only available in Swift, so you won't be able\n  to use this syntax in Objective-C. :broken_heart:\n\n## Lazily Computed Values\n\nThe `expect` function doesn't evaluate the value it's given until it's\ntime to match. So Nimble can test whether an expression raises an\nexception once evaluated:\n\n```swift\n// Swift\n\n// Note: Swift currently doesn't have exceptions.\n//       Only Objective-C code can raise exceptions\n//       that Nimble will catch.\n//       (see https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)\nlet exception = NSException(\n  name: NSInternalInconsistencyException,\n  reason: \"Not enough fish in the sea.\",\n  userInfo: [\"something\": \"is fishy\"])\nexpect { exception.raise() }.to(raiseException())\n\n// Also, you can customize raiseException to be more specific\nexpect { exception.raise() }.to(raiseException(named: NSInternalInconsistencyException))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\"))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\",\n    userInfo: [\"something\": \"is fishy\"]))\n```\n\nObjective-C works the same way, but you must use the `expectAction`\nmacro when making an expectation on an expression that has no return\nvalue:\n\n```objc\n// Objective-C\n\nNSException *exception = [NSException exceptionWithName:NSInternalInconsistencyException\n                                                 reason:@\"Not enough fish in the sea.\"\n                                               userInfo:nil];\nexpectAction(^{ [exception raise]; }).to(raiseException());\n\n// Use the property-block syntax to be more specific.\nexpectAction(^{ [exception raise]; }).to(raiseException().named(NSInternalInconsistencyException));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\"));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\").\n    userInfo(@{@\"something\": @\"is fishy\"}));\n\n// You can also pass a block for custom matching of the raised exception\nexpectAction(exception.raise()).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(NSInternalInconsistencyException));\n}));\n```\n\n## C Primitives\n\nSome testing frameworks make it hard to test primitive C values.\nIn Nimble, it just works:\n\n```swift\n// Swift\n\nlet actual: CInt = 1\nlet expectedValue: CInt = 1\nexpect(actual).to(equal(expectedValue))\n```\n\nIn fact, Nimble uses type inference, so you can write the above\nwithout explicitly specifying both types:\n\n```swift\n// Swift\n\nexpect(1 as CInt).to(equal(1))\n```\n\n> In Objective-C, Nimble only supports Objective-C objects. To\n  make expectations on primitive C values, wrap then in an object\n  literal:\n\n  ```objc\n  expect(@(1 + 1)).to(equal(@2));\n  ```\n\n## Asynchronous Expectations\n\nIn Nimble, it's easy to make expectations on values that are updated\nasynchronously. Just use `toEventually` or `toEventuallyNot`:\n\n```swift\n// Swift\n\ndispatch_async(dispatch_get_main_queue()) {\n  ocean.add(\"dolphins\")\n  ocean.add(\"whales\")\n}\nexpect(ocean).toEventually(contain(\"dolphins\", \"whales\"))\n```\n\n\n```objc\n// Objective-C\ndispatch_async(dispatch_get_main_queue(), ^{\n  [ocean add:@\"dolphins\"];\n  [ocean add:@\"whales\"];\n});\nexpect(ocean).toEventually(contain(@\"dolphins\", @\"whales\"));\n```\n\nNote: toEventually triggers its polls on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop. This can cause test pollution\nfor whatever incomplete code that was running on the main thread.  Blocking the\nmain thread can be caused by blocking IO, calls to sleep(), deadlocks, and\nsynchronous IPC.\n\nIn the above example, `ocean` is constantly re-evaluated. If it ever\ncontains dolphins and whales, the expectation passes. If `ocean` still\ndoesn't contain them, even after being continuously re-evaluated for one\nwhole second, the expectation fails.\n\nSometimes it takes more than a second for a value to update. In those\ncases, use the `timeout` parameter:\n\n```swift\n// Swift\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).toEventually(contain(\"starfish\"), timeout: 3)\n```\n\n```objc\n// Objective-C\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).withTimeout(3).toEventually(contain(@\"starfish\"));\n```\n\nYou can also provide a callback by using the `waitUntil` function:\n\n```swift\n// Swift\n\nwaitUntil { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(0.5)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntil(^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:0.5];\n  done();\n});\n```\n\n`waitUntil` also optionally takes a timeout parameter:\n\n```swift\n// Swift\n\nwaitUntil(timeout: 10) { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(1)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntilTimeout(10, ^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:1];\n  done();\n});\n```\n\nNote: waitUntil triggers its timeout code on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop to continue. This can cause test\npollution for whatever incomplete code that was running on the main thread.\nBlocking the main thread can be caused by blocking IO, calls to sleep(),\ndeadlocks, and synchronous IPC.\n\nIn some cases (e.g. when running on slower machines) it can be useful to modify\nthe default timeout and poll interval values. This can be done as follows:\n\n```swift\n// Swift\n\n// Increase the global timeout to 5 seconds:\nNimble.AsyncDefaults.Timeout = 5\n\n// Slow the polling interval to 0.1 seconds:\nNimble.AsyncDefaults.PollInterval = 0.1\n```\n\n## Objective-C Support\n\nNimble has full support for Objective-C. However, there are two things\nto keep in mind when using Nimble in Objective-C:\n\n1. All parameters passed to the `expect` function, as well as matcher\n   functions like `equal`, must be Objective-C objects:\n\n   ```objc\n   // Objective-C\n\n   @import Nimble;\n\n   expect(@(1 + 1)).to(equal(@2));\n   expect(@\"Hello world\").to(contain(@\"world\"));\n   ```\n\n2. To make an expectation on an expression that does not return a value,\n   such as `-[NSException raise]`, use `expectAction` instead of\n   `expect`:\n\n   ```objc\n   // Objective-C\n\n   expectAction(^{ [exception raise]; }).to(raiseException());\n   ```\n\n## Disabling Objective-C Shorthand\n\nNimble provides a shorthand for expressing expectations using the\n`expect` function. To disable this shorthand in Objective-C, define the\n`NIMBLE_DISABLE_SHORT_SYNTAX` macro somewhere in your code before\nimporting Nimble:\n\n```objc\n#define NIMBLE_DISABLE_SHORT_SYNTAX 1\n\n@import Nimble;\n\nNMB_expect(^{ return seagull.squawk; }, __FILE__, __LINE__).to(NMB_equal(@\"Squee!\"));\n```\n\n> Disabling the shorthand is useful if you're testing functions with\n  names that conflict with Nimble functions, such as `expect` or\n  `equal`. If that's not the case, there's no point in disabling the\n  shorthand.\n\n# Built-in Matcher Functions\n\nNimble includes a wide variety of matcher functions.\n\n## Equivalence\n\n```swift\n// Swift\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\nexpect(actual) == expected\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\nexpect(actual) != expected\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\n```\n\nValues must be `Equatable`, `Comparable`, or subclasses of `NSObject`.\n`equal` will always fail when used to compare one or more `nil` values.\n\n## Identity\n\n```swift\n// Swift\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected))\nexpect(actual) === expected\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected))\nexpect(actual) !== expected\n```\n\nIts important to remember that `beIdenticalTo` only makes sense when comparing types with reference semantics, which have a notion of identity. In Swift, that means a `class`. This matcher will not work with types with value semantics such as `struct` or `enum`. If you need to compare two value types, you can either compare individual properties or if it makes sense to do so, make your type implement `Equatable` and use Nimble's equivalence matchers instead.\n\n\n```objc\n// Objective-C\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected));\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected));\n```\n\n## Comparisons\n\n```swift\n// Swift\n\nexpect(actual).to(beLessThan(expected))\nexpect(actual) < expected\n\nexpect(actual).to(beLessThanOrEqualTo(expected))\nexpect(actual) <= expected\n\nexpect(actual).to(beGreaterThan(expected))\nexpect(actual) > expected\n\nexpect(actual).to(beGreaterThanOrEqualTo(expected))\nexpect(actual) >= expected\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beLessThan(expected));\nexpect(actual).to(beLessThanOrEqualTo(expected));\nexpect(actual).to(beGreaterThan(expected));\nexpect(actual).to(beGreaterThanOrEqualTo(expected));\n```\n\n> Values given to the comparison matchers above must implement\n  `Comparable`.\n\nBecause of how computers represent floating point numbers, assertions\nthat two floating point numbers be equal will sometimes fail. To express\nthat two numbers should be close to one another within a certain margin\nof error, use `beCloseTo`:\n\n```swift\n// Swift\n\nexpect(actual).to(beCloseTo(expected, within: delta))\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beCloseTo(expected).within(delta));\n```\n\nFor example, to assert that `10.01` is close to `10`, you can write:\n\n```swift\n// Swift\n\nexpect(10.01).to(beCloseTo(10, within: 0.1))\n```\n\n```objc\n// Objective-C\n\nexpect(@(10.01)).to(beCloseTo(@10).within(0.1));\n```\n\nThere is also an operator shortcut available in Swift:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected\nexpect(actual) ≈ (expected, delta)\n\n```\n(Type Option-x to get ≈ on a U.S. keyboard)\n\nThe former version uses the default delta of 0.0001. Here is yet another way to do this:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected ± delta\nexpect(actual) == expected ± delta\n\n```\n(Type Option-Shift-= to get ± on a U.S. keyboard)\n\nIf you are comparing arrays of floating point numbers, you'll find the following useful:\n\n```swift\n// Swift\n\nexpect([0.0, 2.0]) ≈ [0.0001, 2.0001]\nexpect([0.0, 2.0]).to(beCloseTo([0.1, 2.1], within: 0.1))\n\n```\n\n> Values given to the `beCloseTo` matcher must be coercable into a\n  `Double`.\n\n## Types/Classes\n\n```swift\n// Swift\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass))\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass))\n```\n\n```objc\n// Objective-C\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass));\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass));\n```\n\n> Instances must be Objective-C objects: subclasses of `NSObject`,\n  or Swift objects bridged to Objective-C with the `@objc` prefix.\n\nFor example, to assert that `dolphin` is a kind of `Mammal`:\n\n```swift\n// Swift\n\nexpect(dolphin).to(beAKindOf(Mammal))\n```\n\n```objc\n// Objective-C\n\nexpect(dolphin).to(beAKindOf([Mammal class]));\n```\n\n> `beAnInstanceOf` uses the `-[NSObject isMemberOfClass:]` method to\n  test membership. `beAKindOf` uses `-[NSObject isKindOfClass:]`.\n\n## Truthiness\n\n```swift\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy())\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue())\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy())\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse())\n\n// Passes if actual is nil:\nexpect(actual).to(beNil())\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy());\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue());\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy());\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse());\n\n// Passes if actual is nil:\nexpect(actual).to(beNil());\n```\n\n## Swift Error Handling\n\nIf you're using Swift 2.0+, you can use the `throwError` matcher to check if an error is thrown.\n\n```swift\n// Swift\n\n// Passes if somethingThatThrows() throws an ErrorType:\nexpect{ try somethingThatThrows() }.to(throwError())\n\n// Passes if somethingThatThrows() throws an error with a given domain:\nexpect{ try somethingThatThrows() }.to(throwError { (error: ErrorType) in\n    expect(error._domain).to(equal(NSCocoaErrorDomain))\n})\n\n// Passes if somethingThatThrows() throws an error with a given case:\nexpect{ try somethingThatThrows() }.to(throwError(NSCocoaError.PropertyListReadCorruptError))\n\n// Passes if somethingThatThrows() throws an error with a given type:\nexpect{ try somethingThatThrows() }.to(throwError(errorType: MyError.self))\n```\n\nIf you are working directly with `ErrorType` values, as is sometimes the case when using `Result` or `Promise` types, you can use the `matchError` matcher to check if the error is the same error is is supposed to be, without requiring explicit casting.\n\n```swift\n// Swift\n\nlet actual: ErrorType = …\n\n// Passes if actual contains any error value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum))\n\n// Passes if actual contains the Timeout value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum.Timeout))\n\n// Passes if actual contains an NSError equal to the given one:\nexpect(actual).to(matchError(NSError(domain: \"err\", code: 123, userInfo: nil)))\n```\n\nNote: This feature is only available in Swift.\n\n## Exceptions\n\n```swift\n// Swift\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name:\nexpect(actual).to(raiseException(named: name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException(named: name, reason: reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect { exception.raise() }.to(raiseException { (exception: NSException) in\n    expect(exception.name).to(beginWith(\"a r\"))\n})\n```\n\n```objc\n// Objective-C\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name\nexpect(actual).to(raiseException().named(name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException().named(name).reason(reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect(actual).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(@\"a r\"));\n}));\n```\n\nNote: Swift currently doesn't have exceptions (see [#220](https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)). Only Objective-C code can raise\nexceptions that Nimble will catch.\n\n## Collection Membership\n\n```swift\n// Swift\n\n// Passes if all of the expected values are members of actual:\nexpect(actual).to(contain(expected...))\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty())\n```\n\n```objc\n// Objective-C\n\n// Passes if expected is a member of actual:\nexpect(actual).to(contain(expected));\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty());\n```\n\n> In Swift `contain` takes any number of arguments. The expectation\n  passes if all of them are members of the collection. In Objective-C,\n  `contain` only takes one argument [for now](https://github.com/Quick/Nimble/issues/27).\n\nFor example, to assert that a list of sea creature names contains\n\"dolphin\" and \"starfish\":\n\n```swift\n// Swift\n\nexpect([\"whale\", \"dolphin\", \"starfish\"]).to(contain(\"dolphin\", \"starfish\"))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"dolphin\"));\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"starfish\"));\n```\n\n> `contain` and `beEmpty` expect collections to be instances of\n  `NSArray`, `NSSet`, or a Swift collection composed of `Equatable` elements.\n\nTo test whether a set of elements is present at the beginning or end of\nan ordered collection, use `beginWith` and `endWith`:\n\n```swift\n// Swift\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected...))\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected...))\n```\n\n```objc\n// Objective-C\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected));\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected));\n```\n\n> `beginWith` and `endWith` expect collections to be instances of\n  `NSArray`, or ordered Swift collections composed of `Equatable`\n  elements.\n\n  Like `contain`, in Objective-C `beginWith` and `endWith` only support\n  a single argument [for now](https://github.com/Quick/Nimble/issues/27).\n\n## Strings\n\n```swift\n// Swift\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected))\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected))\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected))\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty())\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n```objc\n// Objective-C\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected));\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected));\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected));\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty());\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n## Checking if all elements of a collection pass a condition\n\n```swift\n// Swift\n\n// with a custom function:\nexpect([1,2,3,4]).to(allPass({$0 < 5}))\n\n// with another matcher:\nexpect([1,2,3,4]).to(allPass(beLessThan(5)))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n```\n\nFor Swift the actual value has to be a SequenceType, e.g. an array, a set or a custom seqence type.\n\nFor Objective-C the actual value has to be a NSFastEnumeration, e.g. NSArray and NSSet, of NSObjects and only the variant which\nuses another matcher is available here.\n\n## Verify collection count\n\n```swift\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\n```objc\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\nFor Swift the actual value must be a `CollectionType` such as array, dictionary or set.\n\nFor Objective-C the actual value has to be one of the following classes `NSArray`, `NSDictionary`, `NSSet`, `NSHashTable` or one of their subclasses.\n\n## Matching a value to any of a group of matchers\n\n```swift\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(10), beGreaterThan(20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(6).to(satisfyAnyOf(equal(2), equal(3), equal(4), equal(5), equal(6), equal(7)))\n\n// in Swift you also have the option to use the || operator to achieve a similar function\nexpect(82).to(beLessThan(50) || beGreaterThan(80))\n```\n\n```objc\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(@10), beGreaterThan(@20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(@6).to(satisfyAnyOf(equal(@2), equal(@3), equal(@4), equal(@5), equal(@6), equal(@7)))\n```\n\nNote: This matcher allows you to chain any number of matchers together. This provides flexibility, \n      but if you find yourself chaining many matchers together in one test, consider whether you  \n      could instead refactor that single test into multiple, more precisely focused tests for \n      better coverage. \n\n# Writing Your Own Matchers\n\nIn Nimble, matchers are Swift functions that take an expected\nvalue and return a `MatcherFunc` closure. Take `equal`, for example:\n\n```swift\n// Swift\n\npublic func equal<T: Equatable>(expectedValue: T?) -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"equal <\\(expectedValue)>\"\n    return actualExpression.evaluate() == expectedValue\n  }\n}\n```\n\nThe return value of a `MatcherFunc` closure is a `Bool` that indicates\nwhether the actual value matches the expectation: `true` if it does, or\n`false` if it doesn't.\n\n> The actual `equal` matcher function does not match when either\n  `actual` or `expected` are nil; the example above has been edited for\n  brevity.\n\nSince matchers are just Swift functions, you can define them anywhere:\nat the top of your test file, in a file shared by all of your tests, or\nin an Xcode project you distribute to others.\n\n> If you write a matcher you think everyone can use, consider adding it\n  to Nimble's built-in set of matchers by sending a pull request! Or\n  distribute it yourself via GitHub.\n\nFor examples of how to write your own matchers, just check out the\n[`Matchers` directory](https://github.com/Quick/Nimble/tree/master/Sources/Nimble/Matchers)\nto see how Nimble's built-in set of matchers are implemented. You can\nalso check out the tips below.\n\n## Lazy Evaluation\n\n`actualExpression` is a lazy, memoized closure around the value provided to the\n`expect` function. The expression can either be a closure or a value directly\npassed to `expect(...)`. In order to determine whether that value matches,\ncustom matchers should call `actualExpression.evaluate()`:\n\n```swift\n// Swift\n\npublic func beNil<T>() -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"be nil\"\n    return actualExpression.evaluate() == nil\n  }\n}\n```\n\nIn the above example, `actualExpression` is not `nil`--it is a closure\nthat returns a value. The value it returns, which is accessed via the\n`evaluate()` method, may be `nil`. If that value is `nil`, the `beNil`\nmatcher function returns `true`, indicating that the expectation passed.\n\nUse `expression.isClosure` to determine if the expression will be invoking\na closure to produce its value.\n\n## Type Checking via Swift Generics\n\nUsing Swift's generics, matchers can constrain the type of the actual value\npassed to the `expect` function by modifying the return type.\n\nFor example, the following matcher, `haveDescription`, only accepts actual\nvalues that implement the `Printable` protocol. It checks their `description`\nagainst the one provided to the matcher function, and passes if they are the same:\n\n```swift\n// Swift\n\npublic func haveDescription(description: String) -> MatcherFunc<Printable?> {\n  return MatcherFunc { actual, failureMessage in\n    return actual.evaluate().description == description\n  }\n}\n```\n\n## Customizing Failure Messages\n\nBy default, Nimble outputs the following failure message when an\nexpectation fails:\n\n```\nexpected to match, got <\\(actual)>\n```\n\nYou can customize this message by modifying the `failureMessage` struct\nfrom within your `MatcherFunc` closure. To change the verb \"match\" to\nsomething else, update the `postfixMessage` property:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea, got <\\(actual)>\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\nYou can change how the `actual` value is displayed by updating\n`failureMessage.actualValue`. Or, to remove it altogether, set it to\n`nil`:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea\nfailureMessage.actualValue = nil\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\n## Supporting Objective-C\n\nTo use a custom matcher written in Swift from Objective-C, you'll have\nto extend the `NMBObjCMatcher` class, adding a new class method for your\ncustom matcher. The example below defines the class method\n`+[NMBObjCMatcher beNilMatcher]`:\n\n```swift\n// Swift\n\nextension NMBObjCMatcher {\n  public class func beNilMatcher() -> NMBObjCMatcher {\n    return NMBObjCMatcher { actualBlock, failureMessage, location in\n      let block = ({ actualBlock() as NSObject? })\n      let expr = Expression(expression: block, location: location)\n      return beNil().matches(expr, failureMessage: failureMessage)\n    }\n  }\n}\n```\n\nThe above allows you to use the matcher from Objective-C:\n\n```objc\n// Objective-C\n\nexpect(actual).to([NMBObjCMatcher beNilMatcher]());\n```\n\nTo make the syntax easier to use, define a C function that calls the\nclass method:\n\n```objc\n// Objective-C\n\nFOUNDATION_EXPORT id<NMBMatcher> beNil() {\n  return [NMBObjCMatcher beNilMatcher];\n}\n```\n\n### Properly Handling `nil` in Objective-C Matchers\n\nWhen supporting Objective-C, make sure you handle `nil` appropriately.\nLike [Cedar](https://github.com/pivotal/cedar/issues/100),\n**most matchers do not match with nil**. This is to bring prevent test\nwriters from being surprised by `nil` values where they did not expect\nthem.\n\nNimble provides the `beNil` matcher function for test writer that want\nto make expectations on `nil` objects:\n\n```objc\n// Objective-C\n\nexpect(nil).to(equal(nil)); // fails\nexpect(nil).to(beNil());    // passes\n```\n\nIf your matcher does not want to match with nil, you use `NonNilMatcherFunc`\nand the `canMatchNil` constructor on `NMBObjCMatcher`. Using both types will\nautomatically generate expected value failure messages when they're nil.\n\n```swift\n\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.evaluate()\n            let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n            return beginWith(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n```\n\n# Installing Nimble\n\n> Nimble can be used on its own, or in conjunction with its sister\n  project, [Quick](https://github.com/Quick/Quick). To install both\n  Quick and Nimble, follow [the installation instructions in the Quick\n  README](https://github.com/Quick/Quick#how-to-install-quick).\n\nNimble can currently be installed in one of two ways: using CocoaPods, or with\ngit submodules.\n\n## Installing Nimble as a Submodule\n\nTo use Nimble as a submodule to test your iOS or OS X applications, follow these\n4 easy steps:\n\n1. Clone the Nimble repository\n2. Add Nimble.xcodeproj to the Xcode workspace for your project\n3. Link Nimble.framework to your test target\n4. Start writing expectations!\n\nFor more detailed instructions on each of these steps,\nread [How to Install Quick](https://github.com/Quick/Quick#how-to-install-quick).\nIgnore the steps involving adding Quick to your project in order to\ninstall just Nimble.\n\n## Installing Nimble via CocoaPods\n\nTo use Nimble in CocoaPods to test your iOS or OS X applications, add Nimble to\nyour podfile and add the ```use_frameworks!``` line to enable Swift support for\nCocoaPods.\n\n```ruby\nplatform :ios, '8.0'\n\nsource 'https://github.com/CocoaPods/Specs.git'\n\n# Whatever pods you need for your app go here\n\ntarget 'YOUR_APP_NAME_HERE_Tests', :exclusive => true do\n  use_frameworks!\n  pod 'Nimble', '~> 4.0.0'\nend\n```\n\nFinally run `pod install`.\n\n## Using Nimble without XCTest\n\nNimble is integrated with XCTest to allow it work well when used in Xcode test\nbundles, however it can also be used in a standalone app. After installing\nNimble using one of the above methods, there are two additional steps required\nto make this work.\n\n1. Create a custom assertion handler and assign an instance of it to the\n   global `NimbleAssertionHandler` variable. For example:\n\n```swift\nclass MyAssertionHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if (!assertion) {\n            print(\"Expectation failed: \\(message.stringValue)\")\n        }\n    }\n}\n```\n```swift\n// Somewhere before you use any assertions\nNimbleAssertionHandler = MyAssertionHandler()\n```\n\n2. Add a post-build action to fix an issue with the Swift XCTest support\n   library being unnecessarily copied into your app\n  * Edit your scheme in Xcode, and navigate to Build -> Post-actions\n  * Click the \"+\" icon and select \"New Run Script Action\"\n  * Open the \"Provide build settings from\" dropdown and select your target\n  * Enter the following script contents:\n```\nrm \"${SWIFT_STDLIB_TOOL_DESTINATION_DIR}/libswiftXCTest.dylib\"\n```\n\nYou can now use Nimble assertions in your code and handle failures as you see\nfit.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AdapterProtocols.swift",
    "content": "import Foundation\n\n/// Protocol for the assertion handler that Nimble uses for all expectations.\npublic protocol AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation)\n}\n\n/// Global backing interface for assertions that Nimble creates.\n/// Defaults to a private test handler that passes through to XCTest.\n///\n/// If XCTest is not available, you must assign your own assertion handler\n/// before using any matchers, otherwise Nimble will abort the program.\n///\n/// @see AssertionHandler\npublic var NimbleAssertionHandler: AssertionHandler = { () -> AssertionHandler in\n    return isXCTestAvailable() ? NimbleXCTestHandler() : NimbleXCTestUnavailableHandler()\n}()\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AssertionDispatcher.swift",
    "content": "\n/// AssertionDispatcher allows multiple AssertionHandlers to receive\n/// assertion messages.\n///\n/// @warning Does not fully dispatch if one of the handlers raises an exception.\n///          This is possible with XCTest-based assertion handlers.\n///\npublic class AssertionDispatcher: AssertionHandler {\n    let handlers: [AssertionHandler]\n\n    public init(handlers: [AssertionHandler]) {\n        self.handlers = handlers\n    }\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        for handler in handlers {\n            handler.assert(assertion, message: message, location: location)\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift",
    "content": "import Foundation\n\n/// A data structure that stores information about an assertion when\n/// AssertionRecorder is set as the Nimble assertion handler.\n///\n/// @see AssertionRecorder\n/// @see AssertionHandler\npublic struct AssertionRecord: CustomStringConvertible {\n    /// Whether the assertion succeeded or failed\n    public let success: Bool\n    /// The failure message the assertion would display on failure.\n    public let message: FailureMessage\n    /// The source location the expectation occurred on.\n    public let location: SourceLocation\n\n    public var description: String {\n        return \"AssertionRecord { success=\\(success), message='\\(message.stringValue)', location=\\(location) }\"\n    }\n}\n\n/// An AssertionHandler that silently records assertions that Nimble makes.\n/// This is useful for testing failure messages for matchers.\n///\n/// @see AssertionHandler\npublic class AssertionRecorder : AssertionHandler {\n    /// All the assertions that were captured by this recorder\n    public var assertions = [AssertionRecord]()\n\n    public init() {}\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        assertions.append(\n            AssertionRecord(\n                success: assertion,\n                message: message,\n                location: location))\n    }\n}\n\n/// Allows you to temporarily replace the current Nimble assertion handler with\n/// the one provided for the scope of the closure.\n///\n/// Once the closure finishes, then the original Nimble assertion handler is restored.\n///\n/// @see AssertionHandler\npublic func withAssertionHandler(tempAssertionHandler: AssertionHandler, closure: () throws -> Void) {\n    let environment = NimbleEnvironment.activeInstance\n    let oldRecorder = environment.assertionHandler\n    let capturer = NMBExceptionCapture(handler: nil, finally: ({\n        environment.assertionHandler = oldRecorder\n    }))\n    environment.assertionHandler = tempAssertionHandler\n    capturer.tryBlock {\n        try! closure()\n    }\n}\n\n/// Captures expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about expectations\n/// that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble \n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherFailingExpectations\npublic func gatherExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let previousRecorder = NimbleEnvironment.activeInstance.assertionHandler\n    let recorder = AssertionRecorder()\n    let handlers: [AssertionHandler]\n\n    if silently {\n        handlers = [recorder]\n    } else {\n        handlers = [recorder, previousRecorder]\n    }\n\n    let dispatcher = AssertionDispatcher(handlers: handlers)\n    withAssertionHandler(dispatcher, closure: closure)\n    return recorder.assertions\n}\n\n/// Captures failed expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about failed\n/// expectations that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble\n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherExpectations\n/// @see raiseException source for an example use case.\npublic func gatherFailingExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let assertions = gatherExpectations(silently: silently, closure: closure)\n    return assertions.filter { assertion in\n        !assertion.success\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift",
    "content": "import Foundation\n\n/// \"Global\" state of Nimble is stored here. Only DSL functions should access / be aware of this\n/// class' existance\ninternal class NimbleEnvironment {\n    static var activeInstance: NimbleEnvironment {\n        get {\n            let env = NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"]\n            if let env = env as? NimbleEnvironment {\n                return env\n            } else {\n                let newEnv = NimbleEnvironment()\n                self.activeInstance = newEnv\n                return newEnv\n            }\n        }\n        set {\n            NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"] = newValue\n        }\n    }\n\n    // TODO: eventually migrate the global to this environment value\n    var assertionHandler: AssertionHandler {\n        get { return NimbleAssertionHandler }\n        set { NimbleAssertionHandler = newValue }\n    }\n\n#if _runtime(_ObjC)\n    var awaiter: Awaiter\n\n    init() {\n        awaiter = Awaiter(\n            waitLock: AssertionWaitLock(),\n            asyncQueue: dispatch_get_main_queue(),\n            timeoutQueue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0))\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift",
    "content": "import Foundation\nimport XCTest\n\n/// Default handler for Nimble. This assertion handler passes failures along to\n/// XCTest.\npublic class NimbleXCTestHandler : AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            recordFailure(\"\\(message.stringValue)\\n\", location: location)\n        }\n    }\n}\n\n/// Alternative handler for Nimble. This assertion handler passes failures along\n/// to XCTest by attempting to reduce the failure message size.\npublic class NimbleShortXCTestHandler: AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            let msg: String\n            if let actual = message.actualValue {\n                msg = \"got: \\(actual) \\(message.postfixActual)\"\n            } else {\n                msg = \"expected \\(message.to) \\(message.postfixMessage)\"\n            }\n            recordFailure(\"\\(msg)\\n\", location: location)\n        }\n    }\n}\n\n/// Fallback handler in case XCTest is unavailable. This assertion handler will abort\n/// the program if it is invoked.\nclass NimbleXCTestUnavailableHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        fatalError(\"XCTest is not available and no custom assertion handler was configured. Aborting.\")\n    }\n}\n\n#if _runtime(_ObjC)\n    /// Helper class providing access to the currently executing XCTestCase instance, if any\n@objc final internal class CurrentTestCaseTracker: NSObject, XCTestObservation {\n    @objc static let sharedInstance = CurrentTestCaseTracker()\n\n    private(set) var currentTestCase: XCTestCase?\n\n    @objc func testCaseWillStart(testCase: XCTestCase) {\n        currentTestCase = testCase\n    }\n\n    @objc func testCaseDidFinish(testCase: XCTestCase) {\n        currentTestCase = nil\n    }\n}\n#endif\n\n\nfunc isXCTestAvailable() -> Bool {\n#if _runtime(_ObjC)\n    // XCTest is weakly linked and so may not be present\n    return NSClassFromString(\"XCTestCase\") != nil\n#else\n    return true\n#endif\n}\n\nprivate func recordFailure(message: String, location: SourceLocation) {\n#if _runtime(_ObjC)\n    if let testCase = CurrentTestCaseTracker.sharedInstance.currentTestCase {\n        testCase.recordFailureWithDescription(message, inFile: location.file, atLine: location.line, expected: true)\n    } else {\n        let msg = \"Attempted to report a test failure to XCTest while no test case was running. \" +\n        \"The failure was:\\n\\\"\\(message)\\\"\\nIt occurred at: \\(location.file):\\(location.line)\"\n        NSException(name: NSInternalInconsistencyException, reason: msg, userInfo: nil).raise()\n    }\n#else\n    XCTFail(\"\\(message)\\n\", file: location.file, line: location.line)\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/NonObjectiveC/ExceptionCapture.swift",
    "content": "import Foundation\n\n#if !_runtime(_ObjC)\n// swift-corelibs-foundation doesn't provide NSException at all, so provide a dummy\nclass NSException {}\n#endif\n\n// NOTE: This file is not intended to be included in the Xcode project. It\n//       is picked up by the Swift Package Manager during its build process.\n\n/// A dummy reimplementation of the `NMBExceptionCapture` class to serve\n/// as a stand-in for build and runtime environments that don't support\n/// Objective C.\ninternal class ExceptionCapture {\n    let finally: (() -> Void)?\n\n    init(handler: ((NSException!) -> Void)?, finally: (() -> Void)?) {\n        self.finally = finally\n    }\n\n    func tryBlock(unsafeBlock: (() -> Void)) {\n        // We have no way of handling Objective C exceptions in Swift,\n        // so we just go ahead and run the unsafeBlock as-is\n        unsafeBlock()\n\n        finally?()\n    }\n}\n\n/// Compatibility with the actual Objective-C implementation\ntypealias NMBExceptionCapture = ExceptionCapture\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble22CurrentTestCaseTracker\")\n@interface CurrentTestCaseTracker : NSObject <XCTestObservation>\n+ (CurrentTestCaseTracker *)sharedInstance;\n@end\n\n@interface CurrentTestCaseTracker (Register) @end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class NMBExpectation;\n@class NMBObjCBeCloseToMatcher;\n@class NMBObjCRaiseExceptionMatcher;\n@protocol NMBMatcher;\n\n\n#define NIMBLE_EXPORT FOUNDATION_EXPORT\n\n#ifdef NIMBLE_DISABLE_SHORT_SYNTAX\n#define NIMBLE_SHORT(PROTO, ORIGINAL)\n#else\n#define NIMBLE_SHORT(PROTO, ORIGINAL) FOUNDATION_STATIC_INLINE PROTO { return (ORIGINAL); }\n#endif\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> equal(id expectedValue),\n             NMB_equal(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> haveCount(id expectedValue),\n             NMB_haveCount(expectedValue));\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue);\nNIMBLE_SHORT(NMBObjCBeCloseToMatcher *beCloseTo(id expectedValue),\n             NMB_beCloseTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAnInstanceOf(Class expectedClass),\n             NMB_beAnInstanceOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAKindOf(Class expectedClass),\n             NMB_beAKindOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> beginWith(id itemElementOrSubstring),\n             NMB_beginWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThan(NSNumber *expectedValue),\n             NMB_beGreaterThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beGreaterThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> beIdenticalTo(id expectedInstance),\n             NMB_beIdenticalTo(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> be(id expectedInstance),\n             NMB_be(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThan(NSNumber *expectedValue),\n             NMB_beLessThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beLessThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy(void);\nNIMBLE_SHORT(id<NMBMatcher> beTruthy(void),\n             NMB_beTruthy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalsy(void),\n             NMB_beFalsy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue(void);\nNIMBLE_SHORT(id<NMBMatcher> beTrue(void),\n             NMB_beTrue());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalse(void),\n             NMB_beFalse());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil(void);\nNIMBLE_SHORT(id<NMBMatcher> beNil(void),\n             NMB_beNil());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty(void);\nNIMBLE_SHORT(id<NMBMatcher> beEmpty(void),\n             NMB_beEmpty());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) NS_REQUIRES_NIL_TERMINATION;\n#define NMB_contain(...) NMB_containWithNilTermination(__VA_ARGS__, nil)\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define contain(...) NMB_contain(__VA_ARGS__)\n#endif\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> endWith(id itemElementOrSubstring),\n             NMB_endWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException(void);\nNIMBLE_SHORT(NMBObjCRaiseExceptionMatcher *raiseException(void),\n             NMB_raiseException());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> match(id expectedValue),\n             NMB_match(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id matcher);\nNIMBLE_SHORT(id<NMBMatcher> allPass(id matcher),\n             NMB_allPass(matcher));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers);\n#define NMB_satisfyAnyOf(...) NMB_satisfyAnyOfWithMatchers(@[__VA_ARGS__])\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define satisfyAnyOf(...) NMB_satisfyAnyOf(__VA_ARGS__)\n#endif\n\n// In order to preserve breakpoint behavior despite using macros to fill in __FILE__ and __LINE__,\n// define a builder that populates __FILE__ and __LINE__, and returns a block that takes timeout\n// and action arguments. See https://github.com/Quick/Quick/pull/185 for details.\ntypedef void (^NMBWaitUntilTimeoutBlock)(NSTimeInterval timeout, void (^action)(void (^)(void)));\ntypedef void (^NMBWaitUntilBlock)(void (^action)(void (^)(void)));\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\n#define NMB_waitUntilTimeout NMB_waitUntilTimeoutBuilder(@(__FILE__), __LINE__)\n#define NMB_waitUntil NMB_waitUntilBuilder(@(__FILE__), __LINE__)\n\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define expect(...) NMB_expect(^id{ return (__VA_ARGS__); }, @(__FILE__), __LINE__)\n#define expectAction(BLOCK) NMB_expectAction((BLOCK), @(__FILE__), __LINE__)\n#define failWithMessage(msg) NMB_failWithMessage(msg, @(__FILE__), __LINE__)\n#define fail() failWithMessage(@\"fail() always fails\")\n\n\n#define waitUntilTimeout NMB_waitUntilTimeout\n#define waitUntil NMB_waitUntil\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.m",
    "content": "#import <Nimble/DSL.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble7NMBWait\")\n@interface NMBWait : NSObject\n\n+ (void)untilTimeout:(NSTimeInterval)timeout file:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n+ (void)untilFile:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n\n@end\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line) {\n    return [[NMBExpectation alloc] initWithActualBlock:actualBlock\n                                              negative:NO\n                                                  file:file\n                                                  line:line];\n}\n\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line) {\n    return NMB_expect(^id{\n        actualBlock();\n        return nil;\n    }, file, line);\n}\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line) {\n    return [NMBExpectation failWithMessage:msg file:file line:line];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass) {\n    return [NMBObjCMatcher beAnInstanceOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass) {\n    return [NMBObjCMatcher beAKindOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beCloseToMatcher:expectedValue within:0.001];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher beginWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy() {\n    return [NMBObjCMatcher beTruthyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy() {\n    return [NMBObjCMatcher beFalsyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue() {\n    return [NMBObjCMatcher beTrueMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse() {\n    return [NMBObjCMatcher beFalseMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil() {\n    return [NMBObjCMatcher beNilMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty() {\n    return [NMBObjCMatcher beEmptyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) {\n    NSMutableArray *itemOrSubstringArray = [NSMutableArray array];\n\n    if (itemOrSubstring) {\n        [itemOrSubstringArray addObject:itemOrSubstring];\n\n        va_list args;\n        va_start(args, itemOrSubstring);\n        id next;\n        while ((next = va_arg(args, id))) {\n            [itemOrSubstringArray addObject:next];\n        }\n        va_end(args);\n    }\n\n    return [NMBObjCMatcher containMatcher:itemOrSubstringArray];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher endWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue) {\n    return [NMBObjCMatcher equalMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue) {\n    return [NMBObjCMatcher haveCountMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue) {\n    return [NMBObjCMatcher matchMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id expectedValue) {\n    return [NMBObjCMatcher allPassMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers) {\n    return [NMBObjCMatcher satisfyAnyOfMatcher:matchers];\n}\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException() {\n    return [NMBObjCMatcher raiseExceptionMatcher];\n}\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line) {\n    return ^(NSTimeInterval timeout, void (^action)(void (^)(void))) {\n        [NMBWait untilTimeout:timeout file:file line:line action:action];\n    };\n}\n\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line) {\n  return ^(void (^action)(void (^)(void))) {\n    [NMBWait untilFile:file line:line action:action];\n  };\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.h",
    "content": "#import <Foundation/Foundation.h>\n#import <dispatch/dispatch.h>\n\n@interface NMBExceptionCapture : NSObject\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally;\n- (void)tryBlock:(void(^)())unsafeBlock;\n\n@end\n\ntypedef void(^NMBSourceCallbackBlock)(BOOL successful);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.m",
    "content": "#import \"NMBExceptionCapture.h\"\n\n@interface NMBExceptionCapture ()\n@property (nonatomic, copy) void(^handler)(NSException *exception);\n@property (nonatomic, copy) void(^finally)();\n@end\n\n@implementation NMBExceptionCapture\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally {\n    self = [super init];\n    if (self) {\n        self.handler = handler;\n        self.finally = finally;\n    }\n    return self;\n}\n\n- (void)tryBlock:(void(^)())unsafeBlock {\n    @try {\n        unsafeBlock();\n    }\n    @catch (NSException *exception) {\n        if (self.handler) {\n            self.handler(exception);\n        }\n    }\n    @finally {\n        if (self.finally) {\n            self.finally();\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExpectation.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\ninternal struct ObjCMatcherWrapper : Matcher {\n    let matcher: NMBMatcher\n\n    func matches(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.matches(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n\n    func doesNotMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.doesNotMatch(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n}\n\n// Equivalent to Expectation, but for Nimble's Objective-C interface\npublic class NMBExpectation : NSObject {\n    internal let _actualBlock: () -> NSObject!\n    internal var _negative: Bool\n    internal let _file: FileString\n    internal let _line: UInt\n    internal var _timeout: NSTimeInterval = 1.0\n\n    public init(actualBlock: () -> NSObject!, negative: Bool, file: FileString, line: UInt) {\n        self._actualBlock = actualBlock\n        self._negative = negative\n        self._file = file\n        self._line = line\n    }\n\n    private var expectValue: Expectation<NSObject> {\n        return expect(_file, line: _line){\n            self._actualBlock() as NSObject?\n        }\n    }\n\n    public var withTimeout: (NSTimeInterval) -> NMBExpectation {\n        return ({ timeout in self._timeout = timeout\n            return self\n        })\n    }\n\n    public var to: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher))\n        })\n    }\n\n    public var toWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher), description: description)\n        })\n    }\n\n    public var toNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher)\n            )\n        })\n    }\n\n    public var toNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher), description: description\n            )\n        })\n    }\n\n    public var notTo: (NMBMatcher) -> Void { return toNot }\n\n    public var notToWithDescription: (NMBMatcher, String) -> Void { return toNotWithDescription }\n\n    public var toEventually: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toEventuallyNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toNotEventually: (NMBMatcher) -> Void { return toEventuallyNot }\n\n    public var toNotEventuallyWithDescription: (NMBMatcher, String) -> Void { return toEventuallyNotWithDescription }\n\n    public class func failWithMessage(message: String, file: FileString, line: UInt) {\n        fail(message, location: SourceLocation(file: file, line: line))\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBObjCMatcher.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic typealias MatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool\npublic typealias FullMatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage, shouldNotMatch: Bool) -> Bool\n\npublic class NMBObjCMatcher : NSObject, NMBMatcher {\n    let _match: MatcherBlock\n    let _doesNotMatch: MatcherBlock\n    let canMatchNil: Bool\n\n    public init(canMatchNil: Bool, matcher: MatcherBlock, notMatcher: MatcherBlock) {\n        self.canMatchNil = canMatchNil\n        self._match = matcher\n        self._doesNotMatch = notMatcher\n    }\n\n    public convenience init(matcher: MatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: MatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: matcher, notMatcher: ({ actualExpression, failureMessage in\n            return !matcher(actualExpression: actualExpression, failureMessage: failureMessage)\n        }))\n    }\n\n    public convenience init(matcher: FullMatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: FullMatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: false)\n        }), notMatcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: true)\n        }))\n    }\n\n    private func canMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        do {\n            if !canMatchNil {\n                if try actualExpression.evaluate() == nil {\n                    failureMessage.postfixActual = \" (use beNil() to match nils)\"\n                    return false\n                }\n            }\n        } catch let error {\n            failureMessage.actualValue = \"an unexpected error thrown: \\(error)\"\n            return false\n        }\n        return true\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _match(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _doesNotMatch(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.h",
    "content": "@class NSString;\n\n/**\n * Returns a string appropriate for displaying in test output\n * from the provided value.\n *\n * @param value A value that will show up in a test's output.\n *\n * @return The string that is returned can be\n *     customized per type by conforming a type to the `TestOutputStringConvertible`\n *     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n *     function will return the value's debug description and then its\n *     normal description if available and in that order. Otherwise it\n *     will return the result of constructing a string from the value.\n *\n * @see `TestOutputStringConvertible`\n */\nextern NSString *_Nonnull NMBStringify(id _Nullable anyObject) __attribute__((warn_unused_result));\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.m",
    "content": "#import \"NMBStringify.h\"\n#import <Nimble/Nimble-Swift.h>\n\nNSString *_Nonnull NMBStringify(id _Nullable anyObject) {\n    return [NMBStringer stringify:anyObject];\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Adapters/ObjectiveC/XCTestObservationCenter+Register.m",
    "content": "#import \"CurrentTestCaseTracker.h\"\n#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n\n#pragma mark - Method Swizzling\n\n/// Swaps the implementations between two instance methods.\n///\n/// @param class               The class containing `originalSelector`.\n/// @param originalSelector    Original method to replace.\n/// @param replacementSelector Replacement method.\nvoid swizzleSelectors(Class class, SEL originalSelector, SEL replacementSelector) {\n    Method originalMethod = class_getInstanceMethod(class, originalSelector);\n    Method replacementMethod = class_getInstanceMethod(class, replacementSelector);\n\n    BOOL didAddMethod =\n    class_addMethod(class,\n                    originalSelector,\n                    method_getImplementation(replacementMethod),\n                    method_getTypeEncoding(replacementMethod));\n\n    if (didAddMethod) {\n        class_replaceMethod(class,\n                            replacementSelector,\n                            method_getImplementation(originalMethod),\n                            method_getTypeEncoding(originalMethod));\n    } else {\n        method_exchangeImplementations(originalMethod, replacementMethod);\n    }\n}\n\n#pragma mark - Private\n\n@interface XCTestObservationCenter (Private)\n- (void)_addLegacyTestObserver:(id)observer;\n@end\n\n@implementation XCTestObservationCenter (Register)\n\n/// Uses objc method swizzling to register `CurrentTestCaseTracker` as a test observer. This is necessary\n/// because Xcode 7.3 introduced timing issues where if a custom `XCTestObservation` is registered too early\n/// it suppresses all console output (generated by `XCTestLog`), breaking any tools that depend on this output.\n/// This approach waits to register our custom test observer until XCTest adds its first \"legacy\" observer,\n/// falling back to registering after the first normal observer if this private method ever changes.\n+ (void)load {\n    if (class_getInstanceMethod([self class], @selector(_addLegacyTestObserver:))) {\n        // Swizzle -_addLegacyTestObserver:\n        swizzleSelectors([self class], @selector(_addLegacyTestObserver:), @selector(NMB_original__addLegacyTestObserver:));\n    } else {\n        // Swizzle -addTestObserver:, only if -_addLegacyTestObserver: is not implemented\n        swizzleSelectors([self class], @selector(addTestObserver:), @selector(NMB_original_addTestObserver:));\n    }\n}\n\n#pragma mark - Replacement Methods\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n- (void)NMB_original__addLegacyTestObserver:(id)observer {\n    [self NMB_original__addLegacyTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n/// This method is only used if `-_addLegacyTestObserver:` is not impelemented. (added in Xcode 7.3)\n- (void)NMB_original_addTestObserver:(id<XCTestObservation>)observer {\n    [self NMB_original_addTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self NMB_original_addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/DSL+Wait.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nprivate enum ErrorResult {\n    case Exception(NSException)\n    case Error(ErrorType)\n    case None\n}\n\n/// Only classes, protocols, methods, properties, and subscript declarations can be\n/// bridges to Objective-C via the @objc keyword. This class encapsulates callback-style\n/// asynchronous waiting logic so that it may be called from Objective-C and Swift.\ninternal class NMBWait: NSObject {\n    internal class func until(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) -> Void) -> Void {\n            return throwableUntil(timeout: timeout, file: file, line: line) { (done: () -> Void) throws -> Void in\n                action() { done() }\n            }\n    }\n\n    // Using a throwable closure makes this method not objc compatible.\n    internal class func throwableUntil(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) throws -> Void) -> Void {\n            let awaiter = NimbleEnvironment.activeInstance.awaiter\n            let leeway = timeout / 2.0\n            let result = awaiter.performBlock { (done: (ErrorResult) -> Void) throws -> Void in\n                dispatch_async(dispatch_get_main_queue()) {\n                    let capture = NMBExceptionCapture(\n                        handler: ({ exception in\n                            done(.Exception(exception))\n                        }),\n                        finally: ({ })\n                    )\n                    capture.tryBlock {\n                        do {\n                            try action() {\n                                done(.None)\n                            }\n                        } catch let e {\n                            done(.Error(e))\n                        }\n                    }\n                }\n            }.timeout(timeout, forcefullyAbortTimeout: leeway).wait(\"waitUntil(...)\", file: file, line: line)\n\n            switch result {\n            case .Incomplete: internalError(\"Reached .Incomplete state for waitUntil(...).\")\n            case .BlockedRunLoop:\n                fail(blockedRunLoopErrorMessageFor(\"-waitUntil()\", leeway: leeway),\n                    file: file, line: line)\n            case .TimedOut:\n                let pluralize = (timeout == 1 ? \"\" : \"s\")\n                fail(\"Waited more than \\(timeout) second\\(pluralize)\", file: file, line: line)\n            case let .RaisedException(exception):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case let .ErrorThrown(error):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.Exception(let exception)):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case .Completed(.Error(let error)):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.None): // success\n                break\n            }\n    }\n\n    @objc(untilFile:line:action:)\n    internal class func until(file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n        until(timeout: 1, file: file, line: line, action: action)\n    }\n}\n\ninternal func blockedRunLoopErrorMessageFor(fnName: String, leeway: NSTimeInterval) -> String {\n    return \"\\(fnName) timed out but was unable to run the timeout handler because the main thread is unresponsive (\\(leeway) seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n}\n\n/// Wait asynchronously until the done closure is called or the timeout has been reached.\n///\n/// @discussion\n/// Call the done() closure to indicate the waiting has completed.\n/// \n/// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n/// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\npublic func waitUntil(timeout timeout: NSTimeInterval = 1, file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n    NMBWait.until(timeout: timeout, file: file, line: line, action: action)\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/DSL.swift",
    "content": "import Foundation\n\n/// Make an expectation on a given actual value. The value given is lazily evaluated.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(@autoclosure(escaping) expression: () throws -> T?, file: FileString = #file, line: UInt = #line) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Make an expectation on a given actual value. The closure is lazily invoked.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(file: FileString = #file, line: UInt = #line, expression: () throws -> T?) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Always fails the test with a message and a specified location.\npublic func fail(message: String, location: SourceLocation) {\n    let handler = NimbleEnvironment.activeInstance.assertionHandler\n    handler.assert(false, message: FailureMessage(stringValue: message), location: location)\n}\n\n/// Always fails the test with a message.\npublic func fail(message: String, file: FileString = #file, line: UInt = #line) {\n    fail(message, location: SourceLocation(file: file, line: line))\n}\n\n/// Always fails the test.\npublic func fail(file: FileString = #file, line: UInt = #line) {\n    fail(\"fail() always fails\", file: file, line: line)\n}\n\n/// Like Swift's precondition(), but raises NSExceptions instead of sigaborts\ninternal func nimblePrecondition(\n    @autoclosure expr: () -> Bool,\n    @autoclosure _ name: () -> String,\n    @autoclosure _ message: () -> String,\n    file: StaticString = #file,\n    line: UInt = #line) -> Bool {\n        let result = expr()\n        if !result {\n#if _runtime(_ObjC)\n            let e = NSException(\n                name: name(),\n                reason: message(),\n                userInfo: nil)\n            e.raise()\n#else\n            preconditionFailure(\"\\(name()) - \\(message())\", file: file, line: line)\n#endif\n        }\n        return result\n}\n\n@noreturn\ninternal func internalError(msg: String, file: FileString = #file, line: UInt = #line) {\n    fatalError(\n        \"Nimble Bug Found: \\(msg) at \\(file):\\(line).\\n\" +\n        \"Please file a bug to Nimble: https://github.com/Quick/Nimble/issues with the \" +\n        \"code snippet that caused this error.\"\n    )\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Expectation.swift",
    "content": "import Foundation\n\ninternal func expressionMatches<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, to: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = to\n    do {\n        let pass = try matcher.matches(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\ninternal func expressionDoesNotMatch<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, toNot: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = toNot\n    do {\n        let pass = try matcher.doesNotMatch(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\npublic struct Expectation<T> {\n\n    public let expression: Expression<T>\n\n    public func verify(pass: Bool, _ message: FailureMessage) {\n        let handler = NimbleEnvironment.activeInstance.assertionHandler\n        handler.assert(pass, message: message, location: expression.location)\n    }\n\n    /// Tests the actual value using a matcher to match.\n    public func to<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionMatches(expression, matcher: matcher, to: \"to\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    public func toNot<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionDoesNotMatch(expression, matcher: matcher, toNot: \"to not\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    ///\n    /// Alias to toNot().\n    public func notTo<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        toNot(matcher, description: description)\n    }\n\n    // see:\n    // - AsyncMatcherWrapper for extension\n    // - NMBExpectation for Objective-C interface\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Expression.swift",
    "content": "import Foundation\n\n// Memoizes the given closure, only calling the passed\n// closure once; even if repeat calls to the returned closure\ninternal func memoizedClosure<T>(closure: () throws -> T) -> (Bool) throws -> T {\n    var cache: T?\n    return ({ withoutCaching in\n        if (withoutCaching || cache == nil) {\n            cache = try closure()\n        }\n        return cache!\n    })\n}\n\n/// Expression represents the closure of the value inside expect(...).\n/// Expressions are memoized by default. This makes them safe to call\n/// evaluate() multiple times without causing a re-evaluation of the underlying\n/// closure.\n///\n/// @warning Since the closure can be any code, Objective-C code may choose\n///          to raise an exception. Currently, Expression does not memoize\n///          exception raising.\n///\n/// This provides a common consumable API for matchers to utilize to allow\n/// Nimble to change internals to how the captured closure is managed.\npublic struct Expression<T> {\n    internal let _expression: (Bool) throws -> T?\n    internal let _withoutCaching: Bool\n    public let location: SourceLocation\n    public let isClosure: Bool\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process. The expression is memoized.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(expression: () throws -> T?, location: SourceLocation, isClosure: Bool = true) {\n        self._expression = memoizedClosure(expression)\n        self.location = location\n        self._withoutCaching = false\n        self.isClosure = isClosure\n    }\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param withoutCaching Indicates if the struct should memoize the given\n    ///                       closure's result. Subsequent evaluate() calls will\n    ///                       not call the given closure if this is true.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(memoizedExpression: (Bool) throws -> T?, location: SourceLocation, withoutCaching: Bool, isClosure: Bool = true) {\n        self._expression = memoizedExpression\n        self.location = location\n        self._withoutCaching = withoutCaching\n        self.isClosure = isClosure\n    }\n\n    /// Returns a new Expression from the given expression. Identical to a map()\n    /// on this type. This should be used only to typecast the Expression's\n    /// closure value.\n    ///\n    /// The returned expression will preserve location and isClosure.\n    ///\n    /// @param block The block that can cast the current Expression value to a\n    ///              new type.\n    public func cast<U>(block: (T?) throws -> U?) -> Expression<U> {\n        return Expression<U>(expression: ({ try block(self.evaluate()) }), location: self.location, isClosure: self.isClosure)\n    }\n\n    public func evaluate() throws -> T? {\n        return try self._expression(_withoutCaching)\n    }\n\n    public func withoutCaching() -> Expression<T> {\n        return Expression(memoizedExpression: self._expression, location: location, withoutCaching: true, isClosure: isClosure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/FailureMessage.swift",
    "content": "import Foundation\n\n/// Encapsulates the failure message that matchers can report to the end user.\n///\n/// This is shared state between Nimble and matchers that mutate this value.\npublic class FailureMessage: NSObject {\n    public var expected: String = \"expected\"\n    public var actualValue: String? = \"\" // empty string -> use default; nil -> exclude\n    public var to: String = \"to\"\n    public var postfixMessage: String = \"match\"\n    public var postfixActual: String = \"\"\n    /// An optional message that will be appended as a new line and provides additional details\n    /// about the failure. This message will only be visible in the issue navigator / in logs but\n    /// not directly in the source editor since only a single line is presented there.\n    public var extendedMessage: String? = nil\n    public var userDescription: String? = nil\n\n    public var stringValue: String {\n        get {\n            if let value = _stringValueOverride {\n                return value\n            } else {\n                return computeStringValue()\n            }\n        }\n        set {\n            _stringValueOverride = newValue\n        }\n    }\n\n    internal var _stringValueOverride: String?\n\n    public override init() {\n    }\n\n    public init(stringValue: String) {\n        _stringValueOverride = stringValue\n    }\n\n    internal func stripNewlines(str: String) -> String {\n        var lines: [String] = NSString(string: str).componentsSeparatedByString(\"\\n\") as [String]\n        let whitespace = NSCharacterSet.whitespaceAndNewlineCharacterSet()\n        lines = lines.map { line in NSString(string: line).stringByTrimmingCharactersInSet(whitespace) }\n        return lines.joinWithSeparator(\"\")\n    }\n\n    internal func computeStringValue() -> String {\n        var value = \"\\(expected) \\(to) \\(postfixMessage)\"\n        if let actualValue = actualValue {\n            value = \"\\(expected) \\(to) \\(postfixMessage), got \\(actualValue)\\(postfixActual)\"\n        }\n        value = stripNewlines(value)\n\n        if let extendedMessage = extendedMessage {\n            value += \"\\n\\(stripNewlines(extendedMessage))\"\n        }\n\n        if let userDescription = userDescription {\n            return \"\\(userDescription)\\n\\(value)\"\n        }\n        \n        return value\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 Jeff Hui. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/AllPass.swift",
    "content": "import Foundation\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return allPass(\"pass a condition\", passFunc)\n}\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passName: String, _ passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            expression, failureMessage in\n            failureMessage.postfixMessage = passName\n            return passFunc(try expression.evaluate())\n        }\n}\n\npublic func allPass<U,V where U: SequenceType, V: Matcher, U.Generator.Element == V.ValueType>\n    (matcher: V) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            try matcher.matches($0, failureMessage: $1)\n        }\n}\n\nprivate func createAllPassMatcher<T,U where U: SequenceType, U.Generator.Element == T>\n    (elementEvaluator:(Expression<T>, FailureMessage) throws -> Bool) -> NonNilMatcherFunc<U> {\n        return NonNilMatcherFunc { actualExpression, failureMessage in\n            failureMessage.actualValue = nil\n            if let actualValue = try actualExpression.evaluate() {\n                for currentElement in actualValue {\n                    let exp = Expression(\n                        expression: {currentElement}, location: actualExpression.location)\n                    if try !elementEvaluator(exp, failureMessage) {\n                        failureMessage.postfixMessage =\n                            \"all \\(failureMessage.postfixMessage),\"\n                            + \" but failed first at element <\\(stringify(currentElement))>\"\n                            + \" in <\\(stringify(actualValue))>\"\n                        return false\n                    }\n                }\n                failureMessage.postfixMessage = \"all \\(failureMessage.postfixMessage)\"\n            } else {\n                failureMessage.postfixMessage = \"all pass (use beNil() to match nils)\"\n                return false\n            }\n            \n            return true\n        }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func allPassMatcher(matcher: NMBObjCMatcher) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            var nsObjects = [NSObject]()\n            \n            var collectionIsUsable = true\n            if let value = actualValue as? NSFastEnumeration {\n                let generator = NSFastGenerator(value)\n                while let obj:AnyObject = generator.next() {\n                    if let nsObject = obj as? NSObject {\n                        nsObjects.append(nsObject)\n                    } else {\n                        collectionIsUsable = false\n                        break\n                    }\n                }\n            } else {\n                collectionIsUsable = false\n            }\n            \n            if !collectionIsUsable {\n                failureMessage.postfixMessage =\n                  \"allPass only works with NSFastEnumeration (NSArray, NSSet, ...) of NSObjects\"\n                failureMessage.expected = \"\"\n                failureMessage.to = \"\"\n                return false\n            }\n            \n            let expr = Expression(expression: ({ nsObjects }), location: location)\n            let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                expression, failureMessage in\n                return matcher.matches(\n                    {try! expression.evaluate()}, failureMessage: failureMessage, location: expr.location)\n            }\n            return try! createAllPassMatcher(elementEvaluator).matches(\n                expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic struct AsyncDefaults {\n    public static var Timeout: NSTimeInterval = 1\n    public static var PollInterval: NSTimeInterval = 0.01\n}\n\ninternal struct AsyncMatcherWrapper<T, U where U: Matcher, U.ValueType == T>: Matcher {\n    let fullMatcher: U\n    let timeoutInterval: NSTimeInterval\n    let pollInterval: NSTimeInterval\n\n    init(fullMatcher: U, timeoutInterval: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval) {\n      self.fullMatcher = fullMatcher\n      self.timeoutInterval = timeoutInterval\n      self.pollInterval = pollInterval\n    }\n\n    func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let fnName = \"expect(...).toEventually(...)\"\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: fnName) {\n                try self.fullMatcher.matches(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventually(...).\")\n        }\n    }\n\n    func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool  {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: \"expect(...).toEventuallyNot(...)\") {\n                try self.fullMatcher.doesNotMatch(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventuallyNot(...).\")\n        }\n    }\n}\n\nprivate let toEventuallyRequiresClosureError = FailureMessage(stringValue: \"expect(...).toEventually(...) requires an explicit closure (eg - expect { ... }.toEventually(...) )\\nSwift 1.2 @autoclosure behavior has changed in an incompatible way for Nimble to function\")\n\n\nextension Expectation {\n    /// Tests the actual value using a matcher to match by checking continuously\n    /// at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionMatches(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                to: \"to eventually\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventuallyNot<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionDoesNotMatch(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                toNot: \"to eventually not\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// Alias of toEventuallyNot()\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toNotEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        return toEventuallyNot(matcher, timeout: timeout, pollInterval: pollInterval, description: description)\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n// A Nimble matcher that catches attempts to use beAKindOf with non Objective-C types\npublic func beAKindOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAKindOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAnInstanceOf if you want to match against the exact class\npublic func beAKindOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be a kind of \\(classAsString(expectedClass))\"\n        return instance != nil && instance!.isKindOfClass(expectedClass)\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beAKindOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAKindOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift",
    "content": "import Foundation\n\n// A Nimble matcher that catches attempts to use beAnInstanceOf with non Objective-C types\npublic func beAnInstanceOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAnInstanceOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAKindOf if you want to match against subclasses\npublic func beAnInstanceOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be an instance of \\(classAsString(expectedClass))\"\n#if _runtime(_ObjC)\n        return instance != nil && instance!.isMemberOfClass(expectedClass)\n#else\n        return instance != nil && instance!.dynamicType == expectedClass\n#endif\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beAnInstanceOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAnInstanceOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift",
    "content": "#if os(Linux)\nimport Glibc\n#endif\nimport Foundation\n\ninternal let DefaultDelta = 0.0001\n\ninternal func isCloseTo(actualValue: NMBDoubleConvertible?, expectedValue: NMBDoubleConvertible, delta: Double, failureMessage: FailureMessage) -> Bool {\n    failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValue))> (within \\(stringify(delta)))\"\n    failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n    return actualValue != nil && abs(actualValue!.doubleValue - expectedValue.doubleValue) < delta\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: Double, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<Double> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: NMBDoubleConvertible, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<NMBDoubleConvertible> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n#if _runtime(_ObjC)\npublic class NMBObjCBeCloseToMatcher : NSObject, NMBMatcher {\n    var _expected: NSNumber\n    var _delta: CDouble\n    init(expected: NSNumber, within: CDouble) {\n        _expected = expected\n        _delta = within\n    }\n\n    public func matches(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.doesNotMatch(expr, failureMessage: failureMessage)\n    }\n\n    public var within: (CDouble) -> NMBObjCBeCloseToMatcher {\n        return ({ delta in\n            return NMBObjCBeCloseToMatcher(expected: self._expected, within: delta)\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beCloseToMatcher(expected: NSNumber, within: CDouble) -> NMBObjCBeCloseToMatcher {\n        return NMBObjCBeCloseToMatcher(expected: expected, within: within)\n    }\n}\n#endif\n\npublic func beCloseTo(expectedValues: [Double], within delta: Double = DefaultDelta) -> NonNilMatcherFunc <[Double]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValues))> (each within \\(stringify(delta)))\"\n        if let actual = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"<\\(stringify(actual))>\"\n\n            if actual.count != expectedValues.count {\n                return false\n            } else {\n                for (index, actualItem) in actual.enumerate() {\n                    if fabs(actualItem - expectedValues[index]) > delta {\n                        return false\n                    }\n                }\n                return true\n            }\n        }\n        return false\n    }\n}\n\n// MARK: - Operators\n\ninfix operator ≈ {\n    associativity none\n    precedence 130\n}\n\npublic func ≈(lhs: Expectation<[Double]>, rhs: [Double]) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: NMBDoubleConvertible) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\npublic func ==(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\n// make this higher precedence than exponents so the Doubles either end aren't pulled in\n// unexpectantly\ninfix operator ± { precedence 170 }\npublic func ±(lhs: NMBDoubleConvertible, rhs: Double) -> (expected: NMBDoubleConvertible, delta: Double) {\n    return (expected: lhs, delta: rhs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeEmpty.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty<S: SequenceType>() -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualSeq = try actualExpression.evaluate()\n        if actualSeq == nil {\n            return true\n        }\n        var generator = actualSeq!.generate()\n        return generator.next() == nil\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || NSString(string: actualString!).length  == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For NSString instances, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || actualString!.length == 0\n    }\n}\n\n// Without specific overrides, beEmpty() is ambiguous for NSDictionary, NSArray,\n// etc, since they conform to SequenceType as well as NMBCollection.\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSDictionary> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualDictionary = try actualExpression.evaluate()\n\t\treturn actualDictionary == nil || actualDictionary!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSArray> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualArray = try actualExpression.evaluate()\n\t\treturn actualArray == nil || actualArray!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NMBCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actual = try actualExpression.evaluate()\n        return actual == nil || actual!.count == 0\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beEmptyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            failureMessage.postfixMessage = \"be empty\"\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings)\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType)) type\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() > expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedDescending\n        return matches\n    }\n}\n\npublic func ><T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThan(rhs))\n}\n\npublic func >(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beGreaterThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue >= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func >=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\npublic func >=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\npublic func beIdenticalTo(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actual = try actualExpression.evaluate()\n        failureMessage.actualValue = \"\\(identityAsString(actual))\"\n        failureMessage.postfixMessage = \"be identical to \\(identityAsString(expected))\"\n        return actual === expected && actual !== nil\n    }\n}\n\npublic func ===(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.to(beIdenticalTo(rhs))\n}\npublic func !==(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.toNot(beIdenticalTo(rhs))\n}\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\n///\n/// Alias for \"beIdenticalTo\".\npublic func be(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return beIdenticalTo(expected)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beIdenticalToMatcher(expected: NSObject?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let aExpr = actualExpression.cast { $0 as AnyObject? }\n            return try! beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLessThan.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() < expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func <<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThan(rhs))\n}\n\npublic func <(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beLessThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as! NMBComparable? }\n            return try! beLessThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() <= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedDescending\n    }\n}\n\npublic func <=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\npublic func <=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil:false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeLogical.swift",
    "content": "import Foundation\n\ninternal func matcherWithFailureMessage<T>(matcher: NonNilMatcherFunc<T>, postprocessor: (FailureMessage) -> Void) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        defer { postprocessor(failureMessage) }\n        return try matcher.matcher(actualExpression, failureMessage)\n    }\n}\n\n// MARK: beTrue() / beFalse()\n\n/// A Nimble matcher that succeeds when the actual value is exactly true.\n/// This matcher will not match against nils.\npublic func beTrue() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(true)) { failureMessage in\n        failureMessage.postfixMessage = \"be true\"\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is exactly false.\n/// This matcher will not match against nils.\npublic func beFalse() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(false)) { failureMessage in\n        failureMessage.postfixMessage = \"be false\"\n    }\n}\n\n// MARK: beTruthy() / beFalsy()\n\n/// A Nimble matcher that succeeds when the actual value is not logically false.\npublic func beTruthy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be truthy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue == true\n            }\n        }\n        return actualValue != nil\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is logically false.\n/// This matcher will match against nils.\npublic func beFalsy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be falsy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue != true\n            }\n        }\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beTruthyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beTruthy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalsyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beFalsy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beTrueMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beTrue().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalseMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beFalse().matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeNil.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is nil.\npublic func beNil<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be nil\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beNilMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            return try! beNil().matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeVoid.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is Void.\npublic func beVoid() -> MatcherFunc<()> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be void\"\n        let actualValue: ()? = try actualExpression.evaluate()\n        return actualValue != nil\n    }\n}\n\npublic func ==(lhs: Expectation<()>, rhs: ()) {\n    lhs.to(beVoid())\n}\n\npublic func !=(lhs: Expectation<()>, rhs: ()) {\n    lhs.toNot(beVoid())\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/BeginWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's first element\n/// is equal to the expected value.\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's first element\n/// is equal to the expected object.\npublic func beginWith(startingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(startingElement) == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains expected substring\n/// where the expected substring's location is zero.\npublic func beginWith(startingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingSubstring)>\"\n        if let actual = try actualExpression.evaluate() {\n            let range = actual.rangeOfString(startingSubstring)\n            return range != nil && range!.startIndex == actual.startIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! beginWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! beginWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Contain.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual sequence contains the expected value.\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: T...) -> NonNilMatcherFunc<S> {\n    return contain(items)\n}\n\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: [T]) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        if let actual = try actualExpression.evaluate() {\n            return items.all {\n                return actual.contains($0)\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: String...) -> NonNilMatcherFunc<String> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [String]) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all {\n                let range = actual.rangeOfString($0)\n                return range != nil && !range!.isEmpty\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: NSString...) -> NonNilMatcherFunc<NSString> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [NSString]) -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all { actual.rangeOfString($0.description).length != 0 }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection contains the expected object.\npublic func contain(items: AnyObject?...) -> NonNilMatcherFunc<NMBContainer> {\n    return contain(items)\n}\n\npublic func contain(items: [AnyObject?]) -> NonNilMatcherFunc<NMBContainer> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        guard let actual = try actualExpression.evaluate() else { return false }\n        return items.all { item in\n            return item != nil && actual.containsObject(item!)\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func containMatcher(expected: [NSObject]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBContainer {\n                let expr = Expression(expression: ({ value as NMBContainer }), location: location)\n\n                // A straightforward cast on the array causes this to crash, so we have to cast the individual items\n                let expectedOptionals: [AnyObject?] = expected.map({ $0 as AnyObject? })\n                return try! contain(expectedOptionals).matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! contain(expected as! [String]).matches(expr, failureMessage: failureMessage)\n            } else if actualValue != nil {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))> (only works for NSArrays, NSSets, NSHashTables, and NSStrings)\"\n            } else {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))>\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/EndWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's last element\n/// is equal to the expected value.\npublic func endWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(endingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            var lastItem: T?\n            var item: T?\n            repeat {\n                lastItem = item\n                item = actualGenerator.next()\n            } while(item != nil)\n            \n            return lastItem == endingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's last element\n/// is equal to the expected object.\npublic func endWith(endingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(endingElement) == collection!.count - 1\n    }\n}\n\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring\n/// where the expected substring's location is the actual string's length minus the\n/// expected substring's length.\npublic func endWith(endingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingSubstring)>\"\n        if let collection = try actualExpression.evaluate() {\n            let range = collection.rangeOfString(endingSubstring)\n            return range != nil && range!.endIndex == collection.endIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func endWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! endWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! endWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Equal.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue == expectedValue && expectedValue != nil\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return matches\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable, C: Equatable>(expectedValue: [T: C]?) -> NonNilMatcherFunc<[T: C]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection is equal to the expected collection.\n/// Items must implement the Equatable protocol.\npublic func equal<T: Equatable>(expectedValue: [T]?) -> NonNilMatcherFunc<[T]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher allowing comparison of collection with optional type\npublic func equal<T: Equatable>(expectedValue: [T?]) -> NonNilMatcherFunc<[T?]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        if let actualValue = try actualExpression.evaluate() {\n            if expectedValue.count != actualValue.count {\n                return false\n            }\n            \n            for (index, item) in actualValue.enumerate() {\n                let otherItem = expectedValue[index]\n                if item == nil && otherItem == nil {\n                    continue\n                } else if item == nil && otherItem != nil {\n                    return false\n                } else if item != nil && otherItem == nil {\n                    return false\n                } else if item! != otherItem! {\n                    return false\n                }\n            }\n            \n            return true\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n        \n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: stringify)\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T: Comparable>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: {\n        if let set = $0 {\n            return stringify(Array(set).sort { $0 < $1 })\n        } else {\n            return \"nil\"\n        }\n    })\n}\n\nprivate func equal<T>(expectedValue: Set<T>?, stringify: Set<T>? -> String) -> NonNilMatcherFunc<Set<T>> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n\n        if let expectedValue = expectedValue {\n            if let actualValue = try actualExpression.evaluate() {\n                failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n\n                if expectedValue == actualValue {\n                    return true\n                }\n\n                let missing = expectedValue.subtract(actualValue)\n                if missing.count > 0 {\n                    failureMessage.postfixActual += \", missing <\\(stringify(missing))>\"\n                }\n\n                let extra = actualValue.subtract(expectedValue)\n                if extra.count > 0 {\n                    failureMessage.postfixActual += \", extra <\\(stringify(extra))>\"\n                }\n            }\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n\n        return false\n    }\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.toNot(equal(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func equalMatcher(expected: NSObject) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! equal(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/HaveCount.swift",
    "content": "import Foundation\n\n// The `haveCount` matchers do not print the full string representation of the collection value,\n// instead they only print the type name and the expected count. This makes it easier to understand\n// the reason for failed expectations. See: https://github.com/Quick/Nimble/issues/308.\n// The representation of the collection content is provided in a new line as an `extendedMessage`.\n\n/// A Nimble matcher that succeeds when the actual CollectionType's count equals\n/// the expected value\npublic func haveCount<T: CollectionType>(expectedValue: T.Index.Distance) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's count equals\n/// the expected value\npublic func haveCount(expectedValue: Int) -> MatcherFunc<NMBCollection> {\n    return MatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func haveCountMatcher(expected: NSNumber) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection}), location: location)\n                return try! haveCount(expected.integerValue).matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"get type of NSArray, NSSet, NSDictionary, or NSHashTable\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType))\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/Match.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n/// A Nimble matcher that succeeds when the actual string satisfies the regular expression\n/// described by the expected string.\npublic func match(expectedValue: String?) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"match <\\(stringify(expectedValue))>\"\n        \n        if let actual = try actualExpression.evaluate() {\n            if let regexp = expectedValue {\n                return actual.rangeOfString(regexp, options: .RegularExpressionSearch) != nil\n            }\n        }\n\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func matchMatcher(expected: NSString) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.cast { $0 as? String }\n            return try! match(expected.description).matches(actual, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatchError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\npublic func matchError<T: ErrorType>(error: T) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, error: error)\n        return errorMatchesNonNilFieldsOrClosure(actualError, error: error)\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error of the specified type\npublic func matchError<T: ErrorType>(errorType: T.Type) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, errorType: errorType)\n        return errorMatchesNonNilFieldsOrClosure(actualError, errorType: errorType)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatcherFunc.swift",
    "content": "/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// @see NonNilMatcherFunc if you prefer to have this matcher fail when nil\n///                        values are recieved in an expectation.\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct MatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try matcher(actualExpression, failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try !matcher(actualExpression, failureMessage)\n    }\n}\n\n/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// Unlike MatcherFunc, this will always fail if an expectation contains nil.\n/// This applies regardless of using to() or toNot().\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct NonNilMatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try !matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    internal func attachNilErrorIfNeeded(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        if try actualExpression.evaluate() == nil {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            return true\n        }\n        return false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift",
    "content": "import Foundation\n\n/// Implement this protocol to implement a custom matcher for Swift\u0013\npublic protocol Matcher {\n    associatedtype ValueType\n    func matches(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n    func doesNotMatch(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n}\n\n#if _runtime(_ObjC)\n/// Objective-C interface to the Swift variant of Matcher.\n@objc public protocol NMBMatcher {\n    func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n    func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n}\n#endif\n\n#if _runtime(_ObjC)\n/// Protocol for types that support contain() matcher.\n@objc public protocol NMBContainer {\n    func containsObject(object: AnyObject!) -> Bool\n}\n\nextension NSHashTable : NMBContainer {} // Corelibs Foundation does not include this class yet\n#else\npublic protocol NMBContainer {\n    func containsObject(object: AnyObject) -> Bool\n}\n#endif\n\nextension NSArray : NMBContainer {}\nextension NSSet : NMBContainer {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support only beEmpty(), haveCount() matchers\n@objc public protocol NMBCollection {\n    var count: Int { get }\n}\n\nextension NSHashTable : NMBCollection {} // Corelibs Foundation does not include these classes yet\nextension NSMapTable : NMBCollection {}\n#else\npublic protocol NMBCollection {\n    var count: Int { get }\n}\n#endif\n\nextension NSSet : NMBCollection {}\nextension NSIndexSet : NMBCollection {}\nextension NSDictionary : NMBCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support beginWith(), endWith(), beEmpty() matchers\n@objc public protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject!) -> Int\n}\n#else\npublic protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject) -> Int\n}\n#endif\n\nextension NSArray : NMBOrderedCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types to support beCloseTo() matcher\n@objc public protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n#else\npublic protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n\nextension Double : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self\n        }\n    }\n}\n\nextension Float : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return CDouble(self)\n        }\n    }\n}\n#endif\n\nextension NSNumber : NMBDoubleConvertible {\n}\n\nprivate let dateFormatter: NSDateFormatter = {\n    let formatter = NSDateFormatter()\n    formatter.dateFormat = \"yyyy-MM-dd HH:mm:ss.SSSS\"\n    formatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n\n    return formatter\n}()\n\n#if _runtime(_ObjC)\nextension NSDate: NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self.timeIntervalSinceReferenceDate\n        }\n    }\n}\n#endif\n\nextension NSDate: TestOutputStringConvertible {\n    public var testDescription: String {\n        return dateFormatter.stringFromDate(self)\n    }\n}\n\n/// Protocol for types to support beLessThan(), beLessThanOrEqualTo(),\n///  beGreaterThan(), beGreaterThanOrEqualTo(), and equal() matchers.\n///\n/// Types that conform to Swift's Comparable protocol will work implicitly too\n#if _runtime(_ObjC)\n@objc public protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#else\n// This should become obsolete once Corelibs Foundation adds Comparable conformance to NSNumber\npublic protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#endif\n\nextension NSNumber : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! NSNumber)\n    }\n}\nextension NSString : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! String)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/PostNotification.swift",
    "content": "import Foundation\n\ninternal class NotificationCollector {\n    private(set) var observedNotifications: [NSNotification]\n    private let notificationCenter: NSNotificationCenter\n    #if _runtime(_ObjC)\n    private var token: AnyObject?\n    #else\n    private var token: NSObjectProtocol?\n    #endif\n\n    required init(notificationCenter: NSNotificationCenter) {\n        self.notificationCenter = notificationCenter\n        self.observedNotifications = []\n    }\n\n    func startObserving() {\n        self.token = self.notificationCenter.addObserverForName(nil, object: nil, queue: nil) {\n            // linux-swift gets confused by .append(n)\n            [weak self] n in self?.observedNotifications += [n]\n        }\n    }\n\n    deinit {\n        #if _runtime(_ObjC)\n            if let token = self.token {\n                self.notificationCenter.removeObserver(token)\n            }\n        #else\n            if let token = self.token as? AnyObject {\n                self.notificationCenter.removeObserver(token)\n            }\n        #endif\n    }\n}\n\nprivate let mainThread = pthread_self()\n\npublic func postNotifications<T where T: Matcher, T.ValueType == [NSNotification]>(\n    notificationsMatcher: T,\n    fromNotificationCenter center: NSNotificationCenter = NSNotificationCenter.defaultCenter())\n    -> MatcherFunc<Any> {\n        let _ = mainThread // Force lazy-loading of this value\n        let collector = NotificationCollector(notificationCenter: center)\n        collector.startObserving()\n        var once: Bool = false\n        return MatcherFunc { actualExpression, failureMessage in\n            let collectorNotificationsExpression = Expression(memoizedExpression: { _ in\n                return collector.observedNotifications\n                }, location: actualExpression.location, withoutCaching: true)\n\n            assert(pthread_equal(mainThread, pthread_self()) != 0, \"Only expecting closure to be evaluated on main thread.\")\n            if !once {\n                once = true\n                try actualExpression.evaluate()\n            }\n\n            let match = try notificationsMatcher.matches(collectorNotificationsExpression, failureMessage: failureMessage)\n            if collector.observedNotifications.isEmpty {\n                failureMessage.actualValue = \"no notifications\"\n            } else {\n                failureMessage.actualValue = \"<\\(stringify(collector.observedNotifications))>\"\n            }\n            return match\n        }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/RaisesException.swift",
    "content": "import Foundation\n\n// This matcher requires the Objective-C, and being built by Xcode rather than the Swift Package Manager \n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\n/// A Nimble matcher that succeeds when the actual expression raises an\n/// exception with the specified name, reason, and/or\u0013 userInfo.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the raised exception. The closure only gets called when an exception\n/// is raised.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func raiseException(\n    named named: String? = nil,\n    reason: String? = nil,\n    userInfo: NSDictionary? = nil,\n    closure: ((NSException) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var exception: NSException?\n            let capture = NMBExceptionCapture(handler: ({ e in\n                exception = e\n            }), finally: nil)\n\n            capture.tryBlock {\n                try! actualExpression.evaluate()\n                return\n            }\n\n            setFailureMessageForException(failureMessage, exception: exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n            return exceptionMatchesNonNilFieldsOrClosure(exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n        }\n}\n\ninternal func setFailureMessageForException(\n    failureMessage: FailureMessage,\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) {\n        failureMessage.postfixMessage = \"raise exception\"\n\n        if let named = named {\n            failureMessage.postfixMessage += \" with name <\\(named)>\"\n        }\n        if let reason = reason {\n            failureMessage.postfixMessage += \" with reason <\\(reason)>\"\n        }\n        if let userInfo = userInfo {\n            failureMessage.postfixMessage += \" with userInfo <\\(userInfo)>\"\n        }\n        if let _ = closure {\n            failureMessage.postfixMessage += \" that satisfies block\"\n        }\n        if named == nil && reason == nil && userInfo == nil && closure == nil {\n            failureMessage.postfixMessage = \"raise any exception\"\n        }\n\n        if let exception = exception {\n            failureMessage.actualValue = \"\\(classAsString(exception.dynamicType)) { name=\\(exception.name), reason='\\(stringify(exception.reason))', userInfo=\\(stringify(exception.userInfo)) }\"\n        } else {\n            failureMessage.actualValue = \"no exception\"\n        }\n}\n\ninternal func exceptionMatchesNonNilFieldsOrClosure(\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) -> Bool {\n        var matches = false\n\n        if let exception = exception {\n            matches = true\n\n            if named != nil && exception.name != named {\n                matches = false\n            }\n            if reason != nil && exception.reason != reason {\n                matches = false\n            }\n            if userInfo != nil && exception.userInfo != userInfo {\n                matches = false\n            }\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(exception)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        }\n        \n        return matches\n}\n\npublic class NMBObjCRaiseExceptionMatcher : NSObject, NMBMatcher {\n    internal var _name: String?\n    internal var _reason: String?\n    internal var _userInfo: NSDictionary?\n    internal var _block: ((NSException) -> Void)?\n\n    internal init(name: String?, reason: String?, userInfo: NSDictionary?, block: ((NSException) -> Void)?) {\n        _name = name\n        _reason = reason\n        _userInfo = userInfo\n        _block = block\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let block: () -> Any? = ({ actualBlock(); return nil })\n        let expr = Expression(expression: block, location: location)\n\n        return try! raiseException(\n            named: _name,\n            reason: _reason,\n            userInfo: _userInfo,\n            closure: _block\n        ).matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        return !matches(actualBlock, failureMessage: failureMessage, location: location)\n    }\n\n    public var named: (name: String) -> NMBObjCRaiseExceptionMatcher {\n        return ({ name in\n            return NMBObjCRaiseExceptionMatcher(\n                name: name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var reason: (reason: String?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ reason in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var userInfo: (userInfo: NSDictionary?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ userInfo in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var satisfyingBlock: (block: ((NSException) -> Void)?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ block in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: block\n            )\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func raiseExceptionMatcher() -> NMBObjCRaiseExceptionMatcher {\n        return NMBObjCRaiseExceptionMatcher(name: nil, reason: nil, userInfo: nil, block: nil)\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value matches with any of the matchers\n/// provided in the variable list of matchers. \npublic func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: U...) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(matchers)\n}\n\ninternal func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: [U]) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc<T> { actualExpression, failureMessage in\n        let postfixMessages = NSMutableArray()\n        var matches = false\n        for matcher in matchers {\n            if try matcher.matches(actualExpression, failureMessage: failureMessage) {\n                matches = true\n            }\n            postfixMessages.addObject(NSString(string: \"{\\(failureMessage.postfixMessage)}\"))\n        }\n\n        failureMessage.postfixMessage = \"match one of: \" + postfixMessages.componentsJoinedByString(\", or \")\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"\\(actualValue)\"\n        }\n\n        return matches\n    }\n}\n\npublic func ||<T>(left: NonNilMatcherFunc<T>, right: NonNilMatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\npublic func ||<T>(left: MatcherFunc<T>, right: MatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func satisfyAnyOfMatcher(matchers: [NMBObjCMatcher]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            if matchers.isEmpty {\n                failureMessage.stringValue = \"satisfyAnyOf must be called with at least one matcher\"\n                return false\n            }\n            \n            var elementEvaluators = [NonNilMatcherFunc<NSObject>]()\n            for matcher in matchers {\n                let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                    expression, failureMessage in\n                    return matcher.matches(\n                        {try! expression.evaluate()}, failureMessage: failureMessage, location: actualExpression.location)\n                }\n                \n                elementEvaluators.append(NonNilMatcherFunc(elementEvaluator))\n            }\n            \n            return try! satisfyAnyOf(elementEvaluators).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Matchers/ThrowError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression throws an\n/// error of the specified type or from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the thrown error. The closure only gets called when an error was thrown.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func throwError<T: ErrorType>(\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n\n            setFailureMessageForError(failureMessage, actualError: actualError, error: error, errorType: errorType, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, error: error, errorType: errorType, closure: closure)\n        }\n}\n\n/// A Nimble matcher that succeeds when the actual expression throws any\n/// error or when the passed closures' arbitrary custom matching succeeds.\n///\n/// This duplication to it's generic adequate is required to allow to receive\n/// values of the existential type ErrorType in the closure.\n///\n/// The closure only gets called when an error was thrown.\npublic func throwError(\n    closure closure: ((ErrorType) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n            \n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n            \n            setFailureMessageForError(failureMessage, actualError: actualError, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, closure: closure)\n        }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Nimble.h",
    "content": "#import <Foundation/Foundation.h>\n#import \"NMBExceptionCapture.h\"\n#import \"NMBStringify.h\"\n#import \"DSL.h\"\n\nFOUNDATION_EXPORT double NimbleVersionNumber;\nFOUNDATION_EXPORT const unsigned char NimbleVersionString[];\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Async.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nimport Dispatch\n\nprivate let timeoutLeeway: UInt64 = NSEC_PER_MSEC\nprivate let pollLeeway: UInt64 = NSEC_PER_MSEC\n\n/// Stores debugging information about callers\ninternal struct WaitingInfo: CustomStringConvertible {\n    let name: String\n    let file: FileString\n    let lineNumber: UInt\n\n    var description: String {\n        return \"\\(name) at \\(file):\\(lineNumber)\"\n    }\n}\n\ninternal protocol WaitLock {\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt)\n    func releaseWaitingLock()\n    func isWaitingLocked() -> Bool\n}\n\ninternal class AssertionWaitLock: WaitLock {\n    private var currentWaiter: WaitingInfo? = nil\n    init() { }\n\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt) {\n        let info = WaitingInfo(name: fnName, file: file, lineNumber: line)\n        nimblePrecondition(\n            NSThread.isMainThread(),\n            \"InvalidNimbleAPIUsage\",\n            \"\\(fnName) can only run on the main thread.\"\n        )\n        nimblePrecondition(\n            currentWaiter == nil,\n            \"InvalidNimbleAPIUsage\",\n            \"Nested async expectations are not allowed to avoid creating flaky tests.\\n\\n\" +\n            \"The call to\\n\\t\\(info)\\n\" +\n            \"triggered this exception because\\n\\t\\(currentWaiter!)\\n\" +\n            \"is currently managing the main run loop.\"\n        )\n        currentWaiter = info\n    }\n\n    func isWaitingLocked() -> Bool {\n        return currentWaiter != nil\n    }\n\n    func releaseWaitingLock() {\n        currentWaiter = nil\n    }\n}\n\ninternal enum AwaitResult<T> {\n    /// Incomplete indicates None (aka - this value hasn't been fulfilled yet)\n    case Incomplete\n    /// TimedOut indicates the result reached its defined timeout limit before returning\n    case TimedOut\n    /// BlockedRunLoop indicates the main runloop is too busy processing other blocks to trigger\n    /// the timeout code.\n    ///\n    /// This may also mean the async code waiting upon may have never actually ran within the\n    /// required time because other timers & sources are running on the main run loop.\n    case BlockedRunLoop\n    /// The async block successfully executed and returned a given result\n    case Completed(T)\n    /// When a Swift Error is thrown\n    case ErrorThrown(ErrorType)\n    /// When an Objective-C Exception is raised\n    case RaisedException(NSException)\n\n    func isIncomplete() -> Bool {\n        switch self {\n        case .Incomplete: return true\n        default: return false\n        }\n    }\n\n    func isCompleted() -> Bool {\n        switch self {\n        case .Completed(_): return true\n        default: return false\n        }\n    }\n}\n\n/// Holds the resulting value from an asynchronous expectation.\n/// This class is thread-safe at receiving an \"response\" to this promise.\ninternal class AwaitPromise<T> {\n    private(set) internal var asyncResult: AwaitResult<T> = .Incomplete\n    private var signal: dispatch_semaphore_t\n\n    init() {\n        signal = dispatch_semaphore_create(1)\n    }\n\n    /// Resolves the promise with the given result if it has not been resolved. Repeated calls to\n    /// this method will resolve in a no-op.\n    ///\n    /// @returns a Bool that indicates if the async result was accepted or rejected because another\n    ///          value was recieved first.\n    func resolveResult(result: AwaitResult<T>) -> Bool {\n        if dispatch_semaphore_wait(signal, DISPATCH_TIME_NOW) == 0 {\n            self.asyncResult = result\n            return true\n        } else {\n            return false\n        }\n    }\n}\n\ninternal struct AwaitTrigger {\n    let timeoutSource: dispatch_source_t\n    let actionSource: dispatch_source_t?\n    let start: () throws -> Void\n}\n\n/// Factory for building fully configured AwaitPromises and waiting for their results.\n///\n/// This factory stores all the state for an async expectation so that Await doesn't\n/// doesn't have to manage it.\ninternal class AwaitPromiseBuilder<T> {\n    let awaiter: Awaiter\n    let waitLock: WaitLock\n    let trigger: AwaitTrigger\n    let promise: AwaitPromise<T>\n\n    internal init(\n        awaiter: Awaiter,\n        waitLock: WaitLock,\n        promise: AwaitPromise<T>,\n        trigger: AwaitTrigger) {\n            self.awaiter = awaiter\n            self.waitLock = waitLock\n            self.promise = promise\n            self.trigger = trigger\n    }\n\n    func timeout(timeoutInterval: NSTimeInterval, forcefullyAbortTimeout: NSTimeInterval) -> Self {\n        // = Discussion =\n        //\n        // There's a lot of technical decisions here that is useful to elaborate on. This is\n        // definitely more lower-level than the previous NSRunLoop based implementation.\n        //\n        //\n        // Why Dispatch Source?\n        //\n        //\n        // We're using a dispatch source to have better control of the run loop behavior.\n        // A timer source gives us deferred-timing control without having to rely as much on\n        // a run loop's traditional dispatching machinery (eg - NSTimers, DefaultRunLoopMode, etc.)\n        // which is ripe for getting corrupted by application code.\n        //\n        // And unlike dispatch_async(), we can control how likely our code gets prioritized to\n        // executed (see leeway parameter) + DISPATCH_TIMER_STRICT.\n        //\n        // This timer is assumed to run on the HIGH priority queue to ensure it maintains the\n        // highest priority over normal application / test code when possible.\n        //\n        //\n        // Run Loop Management\n        //\n        // In order to properly interrupt the waiting behavior performed by this factory class,\n        // this timer stops the main run loop to tell the waiter code that the result should be\n        // checked.\n        //\n        // In addition, stopping the run loop is used to halt code executed on the main run loop.\n        dispatch_source_set_timer(\n            trigger.timeoutSource,\n            dispatch_time(DISPATCH_TIME_NOW, Int64(timeoutInterval * Double(NSEC_PER_SEC))),\n            DISPATCH_TIME_FOREVER,\n            timeoutLeeway\n        )\n        dispatch_source_set_event_handler(trigger.timeoutSource) {\n            guard self.promise.asyncResult.isIncomplete() else { return }\n            let timedOutSem = dispatch_semaphore_create(0)\n            let semTimedOutOrBlocked = dispatch_semaphore_create(0)\n            dispatch_semaphore_signal(semTimedOutOrBlocked)\n            let runLoop = CFRunLoopGetMain()\n            CFRunLoopPerformBlock(runLoop, kCFRunLoopDefaultMode) {\n                if dispatch_semaphore_wait(semTimedOutOrBlocked, DISPATCH_TIME_NOW) == 0 {\n                    dispatch_semaphore_signal(timedOutSem)\n                    dispatch_semaphore_signal(semTimedOutOrBlocked)\n                    if self.promise.resolveResult(.TimedOut) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n            // potentially interrupt blocking code on run loop to let timeout code run\n            CFRunLoopStop(runLoop)\n            let now = dispatch_time(DISPATCH_TIME_NOW, Int64(forcefullyAbortTimeout * Double(NSEC_PER_SEC)))\n            let didNotTimeOut = dispatch_semaphore_wait(timedOutSem, now) != 0\n            let timeoutWasNotTriggered = dispatch_semaphore_wait(semTimedOutOrBlocked, 0) == 0\n            if didNotTimeOut && timeoutWasNotTriggered {\n                if self.promise.resolveResult(.BlockedRunLoop) {\n                    CFRunLoopStop(CFRunLoopGetMain())\n                }\n            }\n        }\n        return self\n    }\n\n    /// Blocks for an asynchronous result.\n    ///\n    /// @discussion\n    /// This function must be executed on the main thread and cannot be nested. This is because\n    /// this function (and it's related methods) coordinate through the main run loop. Tampering\n    /// with the run loop can cause undesireable behavior.\n    ///\n    /// This method will return an AwaitResult in the following cases:\n    ///\n    /// - The main run loop is blocked by other operations and the async expectation cannot be\n    ///   be stopped.\n    /// - The async expectation timed out\n    /// - The async expectation succeeded\n    /// - The async expectation raised an unexpected exception (objc)\n    /// - The async expectation raised an unexpected error (swift)\n    ///\n    /// The returned AwaitResult will NEVER be .Incomplete.\n    func wait(fnName: String = #function, file: FileString = #file, line: UInt = #line) -> AwaitResult<T> {\n        waitLock.acquireWaitingLock(\n            fnName,\n            file: file,\n            line: line)\n\n        let capture = NMBExceptionCapture(handler: ({ exception in\n            self.promise.resolveResult(.RaisedException(exception))\n        }), finally: ({\n            self.waitLock.releaseWaitingLock()\n        }))\n        capture.tryBlock {\n            do {\n                try self.trigger.start()\n            } catch let error {\n                self.promise.resolveResult(.ErrorThrown(error))\n            }\n            dispatch_resume(self.trigger.timeoutSource)\n            while self.promise.asyncResult.isIncomplete() {\n                // Stopping the run loop does not work unless we run only 1 mode\n                NSRunLoop.currentRunLoop().runMode(NSDefaultRunLoopMode, beforeDate: NSDate.distantFuture())\n            }\n            dispatch_suspend(self.trigger.timeoutSource)\n            dispatch_source_cancel(self.trigger.timeoutSource)\n            if let asyncSource = self.trigger.actionSource {\n                dispatch_source_cancel(asyncSource)\n            }\n        }\n\n        return promise.asyncResult\n    }\n}\n\ninternal class Awaiter {\n    let waitLock: WaitLock\n    let timeoutQueue: dispatch_queue_t\n    let asyncQueue: dispatch_queue_t\n\n    internal init(\n        waitLock: WaitLock,\n        asyncQueue: dispatch_queue_t,\n        timeoutQueue: dispatch_queue_t) {\n            self.waitLock = waitLock\n            self.asyncQueue = asyncQueue\n            self.timeoutQueue = timeoutQueue\n    }\n\n    private func createTimerSource(queue: dispatch_queue_t) -> dispatch_source_t {\n        return dispatch_source_create(\n            DISPATCH_SOURCE_TYPE_TIMER,\n            0,\n            DISPATCH_TIMER_STRICT,\n            queue\n        )\n    }\n\n    func performBlock<T>(\n        closure: ((T) -> Void) throws -> Void) -> AwaitPromiseBuilder<T> {\n            let promise = AwaitPromise<T>()\n            let timeoutSource = createTimerSource(timeoutQueue)\n            var completionCount = 0\n            let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: nil) {\n                try closure() {\n                    completionCount += 1\n                    nimblePrecondition(\n                        completionCount < 2,\n                        \"InvalidNimbleAPIUsage\",\n                        \"Done closure's was called multiple times. waitUntil(..) expects its \" +\n                        \"completion closure to only be called once.\")\n                    if promise.resolveResult(.Completed($0)) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n\n            return AwaitPromiseBuilder(\n                awaiter: self,\n                waitLock: waitLock,\n                promise: promise,\n                trigger: trigger)\n    }\n\n    func poll<T>(pollInterval: NSTimeInterval, closure: () throws -> T?) -> AwaitPromiseBuilder<T> {\n        let promise = AwaitPromise<T>()\n        let timeoutSource = createTimerSource(timeoutQueue)\n        let asyncSource = createTimerSource(asyncQueue)\n        let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: asyncSource) {\n            let interval = UInt64(pollInterval * Double(NSEC_PER_SEC))\n            dispatch_source_set_timer(asyncSource, DISPATCH_TIME_NOW, interval, pollLeeway)\n            dispatch_source_set_event_handler(asyncSource) {\n                do {\n                    if let result = try closure() {\n                        if promise.resolveResult(.Completed(result)) {\n                            CFRunLoopStop(CFRunLoopGetCurrent())\n                        }\n                    }\n                } catch let error {\n                    if promise.resolveResult(.ErrorThrown(error)) {\n                        CFRunLoopStop(CFRunLoopGetCurrent())\n                    }\n                }\n            }\n            dispatch_resume(asyncSource)\n        }\n\n        return AwaitPromiseBuilder(\n            awaiter: self,\n            waitLock: waitLock,\n            promise: promise,\n            trigger: trigger)\n    }\n}\n\ninternal func pollBlock(\n    pollInterval pollInterval: NSTimeInterval,\n    timeoutInterval: NSTimeInterval,\n    file: FileString,\n    line: UInt,\n    fnName: String = #function,\n    expression: () throws -> Bool) -> AwaitResult<Bool> {\n        let awaiter = NimbleEnvironment.activeInstance.awaiter\n        let result = awaiter.poll(pollInterval) { () throws -> Bool? in\n            do {\n                if try expression() {\n                    return true\n                }\n                return nil\n            } catch let error {\n                throw error\n            }\n        }.timeout(timeoutInterval, forcefullyAbortTimeout: timeoutInterval / 2.0).wait(fnName, file: file, line: line)\n\n        return result\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Errors.swift",
    "content": "import Foundation\n\n// Generic\n\ninternal func setFailureMessageForError<T: ErrorType>(\n    failureMessage: FailureMessage,\n    postfixMessageVerb: String = \"throw\",\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) {\n    failureMessage.postfixMessage = \"\\(postfixMessageVerb) error\"\n\n    if let error = error {\n        if let error = error as? CustomDebugStringConvertible {\n            failureMessage.postfixMessage += \" <\\(error.debugDescription)>\"\n        } else {\n            failureMessage.postfixMessage += \" <\\(error)>\"\n        }\n    } else if errorType != nil || closure != nil {\n        failureMessage.postfixMessage += \" from type <\\(T.self)>\"\n    }\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    }\n    if error == nil && errorType == nil && closure == nil {\n        failureMessage.postfixMessage = \"\\(postfixMessageVerb) any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    return actualError._domain == expectedError._domain\n        && actualError._code   == expectedError._code\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType where T: Equatable>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    if let actualError = actualError as? T {\n        return actualError == expectedError\n    }\n    return false\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure<T: ErrorType>(\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let error = error {\n            if !errorMatchesExpectedError(actualError, expectedError: error) {\n                matches = false\n            }\n        }\n        if let actualError = actualError as? T {\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(actualError as T)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        } else if errorType != nil && closure != nil {\n            // The closure expects another ErrorType as argument, so this\n            // is _supposed_ to fail, so that it becomes more obvious.\n            let assertions = gatherExpectations {\n                expect(actualError is T).to(equal(true))\n            }\n            precondition(assertions.map { $0.message }.count > 0)\n            matches = false\n        }\n    }\n\n    return matches\n}\n\n// Non-generic\n\ninternal func setFailureMessageForError(\n    failureMessage: FailureMessage,\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) {\n    failureMessage.postfixMessage = \"throw error\"\n\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    } else {\n        failureMessage.postfixMessage = \"throw any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure(\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let closure = closure {\n            let assertions = gatherFailingExpectations {\n                closure(actualError)\n            }\n            let messages = assertions.map { $0.message }\n            if messages.count > 0 {\n                matches = false\n            }\n        }\n    }\n\n    return matches\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Functional.swift",
    "content": "import Foundation\n\nextension SequenceType {\n    internal func all(fn: Generator.Element -> Bool) -> Bool {\n        for item in self {\n            if !fn(item) {\n                return false\n            }\n        }\n        return true\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Utils/SourceLocation.swift",
    "content": "import Foundation\n\n// Ideally we would always use `StaticString` as the type for tracking the file name\n// that expectations originate from, for consistency with `assert` etc. from the\n// stdlib, and because recent versions of the XCTest overlay require `StaticString`\n// when calling `XCTFail`. Under the Objective-C runtime (i.e. building on Mac), we\n// have to use `String` instead because StaticString can't be generated from Objective-C\n#if _runtime(_ObjC)\npublic typealias FileString = String\n#else\npublic typealias FileString = StaticString\n#endif\n\npublic final class SourceLocation : NSObject {\n    public let file: FileString\n    public let line: UInt\n\n    override init() {\n        file = \"Unknown File\"\n        line = 0\n    }\n\n    init(file: FileString, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n\n    override public var description: String {\n        return \"\\(file):\\(line)\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Sources/Nimble/Utils/Stringers.swift",
    "content": "import Foundation\n\n\ninternal func identityAsString(value: AnyObject?) -> String {\n    if let value = value {\n        return NSString(format: \"<%p>\", unsafeBitCast(value, Int.self)).description\n    } else {\n        return \"nil\"\n    }\n}\n\ninternal func classAsString(cls: AnyClass) -> String {\n#if _runtime(_ObjC)\n    return NSStringFromClass(cls)\n#else\n    return String(cls)\n#endif\n}\n\ninternal func arrayAsString<T>(items: [T], joiner: String = \", \") -> String {\n    return items.reduce(\"\") { accum, item in\n        let prefix = (accum.isEmpty ? \"\" : joiner)\n        return accum + prefix + \"\\(stringify(item))\"\n    }\n}\n\n/// A type with a customized test output text representation.\n///\n/// This textual representation is produced when values will be\n/// printed in test runs, and may be useful when producing\n/// error messages in custom matchers.\n///\n/// - SeeAlso: `CustomDebugStringConvertible`\npublic protocol TestOutputStringConvertible {\n    var testDescription: String { get }\n}\n\nextension Double: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(double: self).testDescription\n    }\n}\n\nextension Float: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(float: self).testDescription\n    }\n}\n\nextension NSNumber: TestOutputStringConvertible {\n    // This is using `NSString(format:)` instead of\n    // `String(format:)` because the latter somehow breaks\n    // the travis CI build on linux.\n    public var testDescription: String {\n        let description = self.description\n        \n        if description.containsString(\".\") {\n            // Travis linux swiftpm build doesn't like casting String to NSString,\n            // which is why this annoying nested initializer thing is here.\n            // Maybe this will change in a future snapshot.\n            let decimalPlaces = NSString(string: NSString(string: description)\n                .componentsSeparatedByString(\".\")[1])\n            \n            if decimalPlaces.length > 4 {\n                return NSString(format: \"%0.4f\", self.doubleValue).description\n            }\n        }\n        return self.description\n    }\n}\n\nextension Array: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = self.map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension AnySequence: TestOutputStringConvertible {\n    public var testDescription: String {\n        let generator = self.generate()\n        var strings = [String]()\n        var value: AnySequence.Generator.Element?\n        \n        repeat {\n            value = generator.next()\n            if let value = value {\n                strings.append(stringify(value))\n            }\n        } while value != nil\n        \n        let list = strings.joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension NSArray: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension NSIndexSet: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension String: TestOutputStringConvertible {\n    public var testDescription: String {\n        return self\n    }\n}\n\nextension NSData: TestOutputStringConvertible {\n    public var testDescription: String {\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11-16)\n            return \"NSData<length=\\(self.length)>\"\n        #else\n            return \"NSData<hash=\\(self.hash),length=\\(self.length)>\"\n        #endif\n    }\n}\n\n///\n/// Returns a string appropriate for displaying in test output\n/// from the provided value.\n///\n/// - parameter value: A value that will show up in a test's output.\n///\n/// - returns: The string that is returned can be\n///     customized per type by conforming a type to the `TestOutputStringConvertible`\n///     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n///     function will return the value's debug description and then its\n///     normal description if available and in that order. Otherwise it\n///     will return the result of constructing a string from the value.\n///\n/// - SeeAlso: `TestOutputStringConvertible`\n@warn_unused_result\npublic func stringify<T>(value: T) -> String {\n    if let value = value as? TestOutputStringConvertible {\n        return value.testDescription\n    }\n    \n    if let value = value as? CustomDebugStringConvertible {\n        return value.debugDescription\n    }\n    \n    return String(value)\n}\n\n/// -SeeAlso: `stringify<T>(value: T)`\n@warn_unused_result\npublic func stringify<T>(value: T?) -> String {\n    if let unboxed = value {\n        return stringify(unboxed)\n    }\n    return \"nil\"\n}\n\n#if _runtime(_ObjC)\n@objc public class NMBStringer: NSObject {\n    @warn_unused_result\n    @objc public class func stringify(obj: AnyObject?) -> String {\n        return Nimble.stringify(obj)\n    }\n}\n#endif\n\n// MARK: Collection Type Stringers\n\n/// Attempts to generate a pretty type string for a given value. If the value is of a Objective-C\n/// collection type, or a subclass thereof, (e.g. `NSArray`, `NSDictionary`, etc.). \n/// This function will return the type name of the root class of the class cluster for better\n/// readability (e.g. `NSArray` instead of `__NSArrayI`).\n///\n/// For values that don't have a type of an Objective-C collection, this function returns the\n/// default type description.\n///\n/// - parameter value: A value that will be used to determine a type name.\n///\n/// - returns: The name of the class cluster root class for Objective-C collection types, or the\n/// the `dynamicType` of the value for values of any other type.\npublic func prettyCollectionType<T>(value: T) -> String {\n    #if _runtime(_ObjC)\n    // Check for types that are not in corelibs-foundation separately\n    if value is NSHashTable {\n        return String(NSHashTable.self)\n    }\n    #endif\n\n    switch value {\n    case is NSArray:\n        return String(NSArray.self)\n    case is NSDictionary:\n        return String(NSDictionary.self)\n    case is NSSet:\n        return String(NSSet.self)\n    case is NSIndexSet:\n        return String(NSIndexSet.self)\n    default:\n        return String(value)\n    }\n}\n\n/// Returns the type name for a given collection type. This overload is used by Swift\n/// collection types.\n///\n/// - parameter collection: A Swift `CollectionType` value.\n///\n/// - returns: A string representing the `dynamicType` of the value.\npublic func prettyCollectionType<T: CollectionType>(collection: T) -> String {\n    return String(collection.dynamicType)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/LinuxMain.swift",
    "content": "import XCTest\n@testable import Nimbletest\n\n// This is the entry point for NimbleTests on Linux\n\nXCTMain([\n    // AsynchronousTests(),\n    SynchronousTest(),\n    UserDescriptionTest(),\n\n    // Matchers\n    AllPassTest(),\n    // BeAKindOfTest(),\n    BeAnInstanceOfTest(),\n    BeCloseToTest(),\n    BeginWithTest(),\n    BeGreaterThanOrEqualToTest(),\n    BeGreaterThanTest(),\n    BeIdenticalToObjectTest(),\n    BeIdenticalToTest(),\n    BeLessThanOrEqualToTest(),\n    BeLessThanTest(),\n    BeTruthyTest(),\n    BeTrueTest(),\n    BeFalsyTest(),\n    BeFalseTest(),\n    BeNilTest(),\n    ContainTest(),\n    EndWithTest(),\n    EqualTest(),\n    HaveCountTest(),\n    // MatchTest(),\n    // RaisesExceptionTest(),\n    ThrowErrorTest(),\n    SatisfyAnyOfTest(),\n    PostNotificationTest(),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/AsynchronousTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\n// These tests require the ObjC runtimes do not currently have the GCD and run loop facilities\n// required for working with Nimble's async matchers\n#if _runtime(_ObjC)\n\nclass AsyncTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToEventuallyPositiveMatches\", testToEventuallyPositiveMatches),\n            (\"testToEventuallyNegativeMatches\", testToEventuallyNegativeMatches),\n            (\"testWaitUntilPositiveMatches\", testWaitUntilPositiveMatches),\n            (\"testToEventuallyWithCustomDefaultTimeout\", testToEventuallyWithCustomDefaultTimeout),\n            (\"testWaitUntilTimesOutIfNotCalled\", testWaitUntilTimesOutIfNotCalled),\n            (\"testWaitUntilTimesOutWhenExceedingItsTime\", testWaitUntilTimesOutWhenExceedingItsTime),\n            (\"testWaitUntilNegativeMatches\", testWaitUntilNegativeMatches),\n            (\"testWaitUntilDetectsStalledMainThreadActivity\", testWaitUntilDetectsStalledMainThreadActivity),\n            (\"testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed\", testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed),\n            (\"testWaitUntilErrorsIfDoneIsCalledMultipleTimes\", testWaitUntilErrorsIfDoneIsCalledMultipleTimes),\n            (\"testWaitUntilMustBeInMainThread\", testWaitUntilMustBeInMainThread),\n            (\"testToEventuallyMustBeInMainThread\", testToEventuallyMustBeInMainThread),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSInternalInconsistencyException, code: 42, userInfo: nil)\n\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testToEventuallyPositiveMatches() {\n        var value = 0\n        deferToMainQueue { value = 1 }\n        expect { value }.toEventually(equal(1))\n\n        deferToMainQueue { value = 0 }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testToEventuallyNegativeMatches() {\n        let value = 0\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got <0>\") {\n            expect { value }.toEventuallyNot(equal(0))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got <0>\") {\n            expect { value }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventuallyNot(equal(0))\n        }\n    }\n\n    func testToEventuallyWithCustomDefaultTimeout() {\n        AsyncDefaults.Timeout = 2\n        defer {\n            AsyncDefaults.Timeout = 1\n        }\n\n        var value = 0\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 1\n        }\n        expect { value }.toEventually(equal(1))\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 0\n        }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testWaitUntilPositiveMatches() {\n        waitUntil { done in\n            done()\n        }\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilTimesOutIfNotCalled() {\n        failsWithErrorMessage(\"Waited more than 1.0 second\") {\n            waitUntil(timeout: 1) { done in return }\n        }\n    }\n\n    func testWaitUntilTimesOutWhenExceedingItsTime() {\n        var waiting = true\n        failsWithErrorMessage(\"Waited more than 0.01 seconds\") {\n            waitUntil(timeout: 0.01) { done in\n                dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n                    NSThread.sleepForTimeInterval(0.1)\n                    done()\n                    waiting = false\n                }\n            }\n        }\n\n        // \"clear\" runloop to ensure this test doesn't poison other tests\n        repeat {\n            NSRunLoop.mainRunLoop().runUntilDate(NSDate().dateByAddingTimeInterval(0.2))\n        } while(waiting)\n    }\n\n    func testWaitUntilNegativeMatches() {\n        failsWithErrorMessage(\"expected to equal <2>, got <1>\") {\n            waitUntil { done in\n                NSThread.sleepForTimeInterval(0.1)\n                expect(1).to(equal(2))\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilDetectsStalledMainThreadActivity() {\n        let msg = \"-waitUntil() timed out but was unable to run the timeout handler because the main thread is unresponsive (0.5 seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n        failsWithErrorMessage(msg) {\n            waitUntil(timeout: 1) { done in\n                NSThread.sleepForTimeInterval(5.0)\n                done()\n            }\n        }\n    }\n\n    func testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed() {\n        // Currently we are unable to catch Objective-C exceptions when built by the Swift Package Manager\n#if !SWIFT_PACKAGE\n        let referenceLine = #line + 9\n        var msg = \"Unexpected exception raised: Nested async expectations are not allowed \"\n        msg += \"to avoid creating flaky tests.\"\n        msg += \"\\n\\n\"\n        msg += \"The call to\\n\\t\"\n        msg += \"expect(...).toEventually(...) at \\(#file):\\(referenceLine + 7)\\n\"\n        msg += \"triggered this exception because\\n\\t\"\n        msg += \"waitUntil(...) at \\(#file):\\(referenceLine + 1)\\n\"\n        msg += \"is currently managing the main run loop.\"\n        failsWithErrorMessage(msg) { // reference line\n            waitUntil(timeout: 2.0) { done in\n                var protected: Int = 0\n                dispatch_async(dispatch_get_main_queue()) {\n                    protected = 1\n                }\n\n                expect(protected).toEventually(equal(1))\n                done()\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilErrorsIfDoneIsCalledMultipleTimes() {\n#if !SWIFT_PACKAGE\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n                expect {\n                    done()\n                }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                waitUntil { done in done() }\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n\n    func testToEventuallyMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                expect(1).toEventually(equal(2))\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n}\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/ObjectWithLazyProperty.swift",
    "content": "import Foundation\n\nclass ObjectWithLazyProperty {\n    init() {}\n    lazy var value: String = \"hello\"\n    lazy var anotherValue: String = { return \"world\" }()\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Helpers/utils.swift",
    "content": "import Foundation\n@testable import Nimble\nimport XCTest\n\nfunc failsWithErrorMessage(messages: [String], file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () throws -> Void) {\n    var filePath = file\n    var lineNumber = line\n\n    let recorder = AssertionRecorder()\n    withAssertionHandler(recorder, closure: closure)\n\n    for msg in messages {\n        var lastFailure: AssertionRecord?\n        var foundFailureMessage = false\n\n        for assertion in recorder.assertions {\n            lastFailure = assertion\n            if assertion.message.stringValue == msg {\n                foundFailureMessage = true\n                break\n            }\n        }\n\n        if foundFailureMessage {\n            continue\n        }\n\n        if preferOriginalSourceLocation {\n            if let failure = lastFailure {\n                filePath = failure.location.file\n                lineNumber = failure.location.line\n            }\n        }\n\n        let message: String\n        if let lastFailure = lastFailure {\n            message = \"Got failure message: \\\"\\(lastFailure.message.stringValue)\\\", but expected \\\"\\(msg)\\\"\"\n        } else {\n            message = \"expected failure message, but got none\"\n        }\n        NimbleAssertionHandler.assert(false,\n                                      message: FailureMessage(stringValue: message),\n                                      location: SourceLocation(file: filePath, line: lineNumber))\n    }\n}\n\nfunc failsWithErrorMessage(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    return failsWithErrorMessage(\n        [message],\n        file: file,\n        line: line,\n        preferOriginalSourceLocation: preferOriginalSourceLocation,\n        closure: closure\n    )\n}\n\nfunc failsWithErrorMessageForNil(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    failsWithErrorMessage(\"\\(message) (use beNil() to match nils)\", file: file, line: line, preferOriginalSourceLocation: preferOriginalSourceLocation, closure: closure)\n}\n\n#if _runtime(_ObjC)\n    func deferToMainQueue(action: () -> Void) {\n        dispatch_async(dispatch_get_main_queue()) {\n            NSThread.sleepForTimeInterval(0.01)\n            action()\n        }\n    }\n#endif\n\npublic class NimbleHelper : NSObject {\n    public class func expectFailureMessage(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessages(messages: [NSString], block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(messages.map({ String($0) }), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessageForNil(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessageForNil(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n}\n\nextension NSDate {\n    convenience init(dateTimeString:String) {\n        let dateFormatter = NSDateFormatter()\n        dateFormatter.dateFormat = \"yyyy-MM-dd HH:mm:ss\"\n        dateFormatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n        let date = dateFormatter.dateFromString(dateTimeString)!\n        self.init(timeInterval:0, sinceDate:date)\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/AllPassTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass AllPassTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllPassArray\", testAllPassArray),\n            (\"testAllPassMatcher\", testAllPassMatcher),\n            (\"testAllPassCollectionsWithOptionalsDontWork\", testAllPassCollectionsWithOptionalsDontWork),\n            (\"testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer\", testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer),\n            (\"testAllPassSet\", testAllPassSet),\n            (\"testAllPassWithNilAsExpectedValue\", testAllPassWithNilAsExpectedValue),\n        ]\n    }\n\n    func testAllPassArray() {\n        expect([1,2,3,4]).to(allPass({$0 < 5}))\n        expect([1,2,3,4]).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\n            \"expected to all pass a condition, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass({$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect([1,2,3,4]).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\n            \"expected to all be something, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(\"be something\", {$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect([1,2,3,4]).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassMatcher() {\n        expect([1,2,3,4]).to(allPass(beLessThan(5)))\n        expect([1,2,3,4]).toNot(allPass(beGreaterThan(5)))\n        \n        failsWithErrorMessage(\n            \"expected to all be less than <3>, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(beLessThan(3)))\n        }\n        failsWithErrorMessage(\"expected to not all be less than <5>\") {\n            expect([1,2,3,4]).toNot(allPass(beLessThan(5)))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsDontWork() {\n        failsWithErrorMessage(\"expected to all be nil, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass(beNil()))\n        }\n        failsWithErrorMessage(\"expected to all pass a condition, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass({$0 == nil}))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer() {\n        expect([nil, nil, nil] as [Int?]).to(allPass({$0! == nil}))\n        expect([nil, 1, nil] as [Int?]).toNot(allPass({$0! == nil}))\n        expect([1, 1, 1] as [Int?]).to(allPass({$0! == 1}))\n        expect([1, 1, nil] as [Int?]).toNot(allPass({$0! == 1}))\n        expect([1, 2, 3] as [Int?]).to(allPass({$0! < 4}))\n        expect([1, 2, 3] as [Int?]).toNot(allPass({$0! < 3}))\n        expect([1, 2, nil] as [Int?]).to(allPass({$0! < 3}))\n    }\n\n    func testAllPassSet() {\n        expect(Set([1,2,3,4])).to(allPass({$0 < 5}))\n        expect(Set([1,2,3,4])).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect(Set([1,2,3,4])).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect(Set([1,2,3,4])).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassWithNilAsExpectedValue() {\n        failsWithErrorMessageForNil(\"expected to all pass\") {\n            expect(nil as [Int]?).to(allPass(beLessThan(5)))\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeAKindOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass TestNull : NSNull {}\n\nclass BeAKindOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(TestNull()).to(beAKindOf(NSNull))\n        expect(NSObject()).to(beAKindOf(NSObject))\n        expect(NSNumber(integer:1)).toNot(beAKindOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be a kind of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAKindOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be a kind of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to be a kind of NSString, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be a kind of NSNumber, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAKindOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAKindOf(Int))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAKindOf(String))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAKindOf(TestEnum))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeAnInstanceOfTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeAnInstanceOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(NSNull()).to(beAnInstanceOf(NSNull))\n        expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be an instance of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAnInstanceOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be an instance of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAnInstanceOf(NSString))\n        }\n#if _runtime(_ObjC)\n        let numberTypeName = \"__NSCFNumber\"\n#else\n        let numberTypeName = \"NSNumber\"\n#endif\n        failsWithErrorMessage(\"expected to be an instance of NSString, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).to(beAnInstanceOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be an instance of NSNumber, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAnInstanceOf(Int))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAnInstanceOf(String))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAnInstanceOf(TestEnum))\n        }\n    }\n    \n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeCloseToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeCloseToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeCloseTo\", testBeCloseTo),\n            (\"testBeCloseToWithin\", testBeCloseToWithin),\n            (\"testBeCloseToWithNSNumber\", testBeCloseToWithNSNumber),\n            (\"testBeCloseToWithNSDate\", testBeCloseToWithNSDate),\n            (\"testBeCloseToOperator\", testBeCloseToOperator),\n            (\"testBeCloseToWithinOperator\", testBeCloseToWithinOperator),\n            (\"testPlusMinusOperator\", testPlusMinusOperator),\n            (\"testBeCloseToOperatorWithNSDate\", testBeCloseToOperatorWithNSDate),\n            (\"testBeCloseToWithinOperatorWithNSDate\", testBeCloseToWithinOperatorWithNSDate),\n            (\"testPlusMinusOperatorWithNSDate\", testPlusMinusOperatorWithNSDate),\n            (\"testBeCloseToArray\", testBeCloseToArray),\n        ]\n    }\n\n    func testBeCloseTo() {\n        expect(1.2).to(beCloseTo(1.2001))\n        expect(1.2 as CDouble).to(beCloseTo(1.2001))\n        expect(1.2 as Float).to(beCloseTo(1.2001))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 0.0001), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001))\n        }\n    }\n\n    func testBeCloseToWithin() {\n        expect(1.2).to(beCloseTo(9.300, within: 10))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n\n    func testBeCloseToWithNSNumber() {\n        expect(NSNumber(double:1.2)).to(beCloseTo(9.300, within: 10))\n        expect(NSNumber(double:1.2)).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        expect(1.2).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(NSNumber(double:1.2)).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n    \n    func testBeCloseToWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).to(beCloseTo(NSDate(dateTimeString: \"2015-08-26 11:43:05\"), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <2015-08-26 11:43:00.0050> (within 0.004), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).toNot(beCloseTo(expectedDate, within: 0.004))\n        }\n#endif\n    }\n    \n    func testBeCloseToOperator() {\n        expect(1.2) ≈ 1.2001\n        expect(1.2 as CDouble) ≈ 1.2001\n        \n        failsWithErrorMessage(\"expected to be close to <1.2002> (within 0.0001), got <1.2>\") {\n            expect(1.2) ≈ 1.2002\n        }\n    }\n\n    func testBeCloseToWithinOperator() {\n        expect(1.2) ≈ (9.300, 10)\n        expect(1.2) == (9.300, 10)\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ (1.0, 0.1)\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == (1.0, 0.1)\n        }\n    }\n    \n    func testPlusMinusOperator() {\n        expect(1.2) ≈ 9.300 ± 10\n        expect(1.2) == 9.300 ± 10\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ 1.0 ± 0.1\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == 1.0 ± 0.1\n        }\n    }\n\n    func testBeCloseToOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:00\")\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.0001), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate\n        }\n#endif\n    }\n\n    func testBeCloseToWithinOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (expectedDate, 0.006)\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (expectedDate, 0.006)\n        }\n#endif\n    }\n\n    func testPlusMinusOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate ± 0.006\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == expectedDate ± 0.006\n        }\n#endif\n    }\n\n    func testBeCloseToArray() {\n        expect([0.0, 1.1, 2.2]) ≈ [0.0001, 1.1001, 2.2001]\n        expect([0.0, 1.1, 2.2]).to(beCloseTo([0.1, 1.2, 2.3], within: 0.1))\n        \n        failsWithErrorMessage(\"expected to be close to <[0, 1]> (each within 0.0001), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]) ≈ [0.0, 1.0]\n        }\n        failsWithErrorMessage(\"expected to be close to <[0.2, 1.2]> (each within 0.1), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]).to(beCloseTo([0.2, 1.2], within: 0.1))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeEmptyTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeEmptyTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeEmptyPositive\", testBeEmptyPositive),\n            (\"testBeEmptyNegative\", testBeEmptyNegative),\n        ]\n    }\n\n    func testBeEmptyPositive() {\n        expect([] as [Int]).to(beEmpty())\n        expect([1]).toNot(beEmpty())\n\n        expect([] as [CInt]).to(beEmpty())\n        expect([1] as [CInt]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSDictionary() as? [Int:Int]).to(beEmpty())\n        expect(NSDictionary(object: 1, forKey: 1) as? [Int:Int]).toNot(beEmpty())\n#endif\n\n        expect(Dictionary<Int, Int>()).to(beEmpty())\n        expect([\"hi\": 1]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSArray() as? [Int]).to(beEmpty())\n        expect(NSArray(array: [1]) as? [Int]).toNot(beEmpty())\n#endif\n\n        expect(NSSet()).to(beEmpty())\n        expect(NSSet(array: [NSNumber(integer: 1)])).toNot(beEmpty())\n\n        expect(NSIndexSet()).to(beEmpty())\n        expect(NSIndexSet(index: 1)).toNot(beEmpty())\n\n        expect(NSString()).to(beEmpty())\n        expect(NSString(string: \"hello\")).toNot(beEmpty())\n\n        expect(\"\").to(beEmpty())\n        expect(\"foo\").toNot(beEmpty())\n    }\n\n    func testBeEmptyNegative() {\n        failsWithErrorMessageForNil(\"expected to be empty, got <nil>\") {\n            expect(nil as NSString?).to(beEmpty())\n        }\n        failsWithErrorMessageForNil(\"expected to not be empty, got <nil>\") {\n            expect(nil as [CInt]?).toNot(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSArray()).toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <[1]>\") {\n            expect([1]).to(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <{()}>\") {\n            expect(NSSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <{(1)}>\") {\n            expect(NSSet(object: NSNumber(int: 1))).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSIndexSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <(1)>\") {\n            expect(NSIndexSet(index: 1)).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <>\") {\n            expect(\"\").toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <foo>\") {\n            expect(\"foo\").to(beEmpty())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeGreaterThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThanOrEqualTo\", testGreaterThanOrEqualTo),\n            (\"testGreaterThanOrEqualToOperator\", testGreaterThanOrEqualToOperator),\n        ]\n    }\n\n    func testGreaterThanOrEqualTo() {\n        expect(10).to(beGreaterThanOrEqualTo(10))\n        expect(10).to(beGreaterThanOrEqualTo(2))\n        expect(1).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:1)).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:2)).to(beGreaterThanOrEqualTo(NSNumber(int:2)))\n#if _runtime(_ObjC)\n        expect(1).to(beGreaterThanOrEqualTo(NSNumber(int:0)))\n#endif\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <0>\") {\n            expect(0).to(beGreaterThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be greater than or equal to <1>, got <1>\") {\n            expect(1).toNot(beGreaterThanOrEqualTo(1))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThanOrEqualTo(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than or equal to <1>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThanOrEqualTo(1))\n        }\n    }\n\n    func testGreaterThanOrEqualToOperator() {\n        expect(0) >= 0\n        expect(1) >= 0\n        expect(NSNumber(int:1)) >= 1\n        expect(NSNumber(int:1)) >= NSNumber(int:1)\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <1>\") {\n            expect(1) >= 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeGreaterThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThan\", testGreaterThan),\n            (\"testGreaterThanOperator\", testGreaterThanOperator),\n        ]\n    }\n    \n    func testGreaterThan() {\n        expect(10).to(beGreaterThan(2))\n        expect(1).toNot(beGreaterThan(2))\n#if _runtime(_ObjC)\n        expect(NSNumber(int:3)).to(beGreaterThan(2))\n#endif\n        expect(NSNumber(int:1)).toNot(beGreaterThan(NSNumber(int:2)))\n\n        failsWithErrorMessage(\"expected to be greater than <2>, got <0>\") {\n            expect(0).to(beGreaterThan(2))\n        }\n        failsWithErrorMessage(\"expected to not be greater than <0>, got <1>\") {\n            expect(1).toNot(beGreaterThan(0))\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThan(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than <0>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThan(0))\n        }\n    }\n\n    func testGreaterThanOperator() {\n        expect(1) > 0\n        expect(NSNumber(int:1)) > NSNumber(int:0)\n#if _runtime(_ObjC)\n        expect(NSNumber(int:1)) > 0\n#endif\n        failsWithErrorMessage(\"expected to be greater than <2>, got <1>\") {\n            expect(1) > 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeIdenticalToObjectTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeIdenticalToObjectTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testFailsOnNils\", testFailsOnNils),\n            (\"testOperators\", testOperators),\n        ]\n    }\n\n    private class BeIdenticalToObjectTester {}\n    private let testObjectA = BeIdenticalToObjectTester()\n    private let testObjectB = BeIdenticalToObjectTester()\n\n    func testBeIdenticalToPositive() {\n        expect(self.testObjectA).to(beIdenticalTo(testObjectA))\n    }\n    \n    func testBeIdenticalToNegative() {\n        expect(self.testObjectA).toNot(beIdenticalTo(testObjectB))\n    }\n    \n    func testBeIdenticalToPositiveMessage() {\n        let message = String(NSString(format: \"expected to be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectB, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).to(beIdenticalTo(self.testObjectB))\n        }\n    }\n    \n    func testBeIdenticalToNegativeMessage() {\n        let message = String(NSString(format: \"expected to not be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectA, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n\n    func testFailsOnNils() {\n        let message1 = String(NSString(format: \"expected to be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message1) {\n            expect(nil as BeIdenticalToObjectTester?).to(beIdenticalTo(self.testObjectA))\n        }\n\n        let message2 = String(NSString(format: \"expected to not be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message2) {\n            expect(nil as BeIdenticalToObjectTester?).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n    \n    func testOperators() {\n        expect(self.testObjectA) === testObjectA\n        expect(self.testObjectA) !== testObjectB\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeIdenticalToTest.swift",
    "content": "import Foundation\nimport XCTest\n@testable import Nimble\n\nclass BeIdenticalToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testOperators\", testOperators),\n            (\"testBeAlias\", testBeAlias)\n        ]\n    }\n\n    func testBeIdenticalToPositive() {\n        let value = NSDate()\n        expect(value).to(beIdenticalTo(value))\n    }\n\n    func testBeIdenticalToNegative() {\n        expect(NSNumber(integer:1)).toNot(beIdenticalTo(NSString(string: \"yo\")))\n        expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n    }\n\n    func testBeIdenticalToPositiveMessage() {\n        let num1 = NSNumber(integer:1)\n        let num2 = NSNumber(integer:2)\n        let message = \"expected to be identical to \\(identityAsString(num2)), got \\(identityAsString(num1))\"\n        failsWithErrorMessage(message) {\n            expect(num1).to(beIdenticalTo(num2))\n        }\n    }\n\n    func testBeIdenticalToNegativeMessage() {\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(beIdenticalTo(value2))\n        }\n    }\n\n    func testOperators() {\n        let value = NSDate()\n        expect(value) === value\n        expect(NSNumber(integer:1)) !== NSNumber(integer:2)\n    }\n\n    func testBeAlias() {\n        let value = NSDate()\n        expect(value).to(be(value))\n        expect(NSNumber(integer:1)).toNot(be(NSString(stringLiteral: \"turtles\")))\n        #if _runtime(_ObjC)\n            expect([1]).toNot(be([1]))\n        #else\n            expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n        #endif\n\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(be(value2))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLessThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThanOrEqualTo\", testLessThanOrEqualTo),\n            (\"testLessThanOrEqualToOperator\", testLessThanOrEqualToOperator),\n        ]\n    }\n\n    func testLessThanOrEqualTo() {\n        expect(10).to(beLessThanOrEqualTo(10))\n        expect(2).to(beLessThanOrEqualTo(10))\n        expect(2).toNot(beLessThanOrEqualTo(1))\n\n        expect(NSNumber(int:2)).to(beLessThanOrEqualTo(10))\n        expect(NSNumber(int:2)).toNot(beLessThanOrEqualTo(1))\n#if _runtime(_ObjC)\n        expect(2).to(beLessThanOrEqualTo(NSNumber(int:10)))\n        expect(2).toNot(beLessThanOrEqualTo(NSNumber(int:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than or equal to <0>, got <2>\") {\n            expect(2).to(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be less than or equal to <0>, got <0>\") {\n            expect(0).toNot(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be less than or equal to <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThanOrEqualTo(-2))\n            return\n        }\n    }\n\n    func testLessThanOrEqualToOperator() {\n        expect(0) <= 1\n        expect(1) <= 1\n\n        failsWithErrorMessage(\"expected to be less than or equal to <1>, got <2>\") {\n            expect(2) <= 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLessThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThan\", testLessThan),\n            (\"testLessThanOperator\", testLessThanOperator),\n        ]\n    }\n\n    func testLessThan() {\n        expect(2).to(beLessThan(10))\n        expect(2).toNot(beLessThan(1))\n#if _runtime(_ObjC)\n        expect(NSNumber(integer:2)).to(beLessThan(10))\n        expect(NSNumber(integer:2)).toNot(beLessThan(1))\n\n        expect(2).to(beLessThan(NSNumber(integer:10)))\n        expect(2).toNot(beLessThan(NSNumber(integer:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than <0>, got <2>\") {\n            expect(2).to(beLessThan(0))\n        }\n        failsWithErrorMessage(\"expected to not be less than <1>, got <0>\") {\n            expect(0).toNot(beLessThan(1))\n        }\n\n        failsWithErrorMessageForNil(\"expected to be less than <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThan(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than <-1>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThan(-1))\n        }\n    }\n\n    func testLessThanOperator() {\n        expect(0) < 1\n#if _runtime(_ObjC)\n        expect(NSNumber(int:0)) < 1\n#endif\n        failsWithErrorMessage(\"expected to be less than <1>, got <2>\") {\n            expect(2) < 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeLogicalTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum ConvertsToBool : BooleanType, CustomStringConvertible {\n    case TrueLike, FalseLike\n\n    var boolValue : Bool {\n        switch self {\n        case .TrueLike: return true\n        case .FalseLike: return false\n        }\n    }\n\n    var description : String {\n        switch self {\n        case .TrueLike: return \"TrueLike\"\n        case .FalseLike: return \"FalseLike\"\n        }\n    }\n}\n\nclass BeTruthyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNonNilTypes\", testShouldMatchNonNilTypes),\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchNilTypes\", testShouldNotMatchNilTypes),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n            (\"testShouldMatchBoolConvertibleTypesThatConvertToTrue\", testShouldMatchBoolConvertibleTypesThatConvertToTrue),\n            (\"testShouldNotMatchBoolConvertibleTypesThatConvertToFalse\", testShouldNotMatchBoolConvertibleTypesThatConvertToFalse),\n        ]\n    }\n\n    func testShouldMatchNonNilTypes() {\n        expect(true as Bool?).to(beTruthy())\n        expect(1 as Int?).to(beTruthy())\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <true>\") {\n            expect(true).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilTypes() {\n        expect(false as Bool?).toNot(beTruthy())\n        expect(nil as Bool?).toNot(beTruthy())\n        expect(nil as Int?).toNot(beTruthy())\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <false>\") {\n            expect(false).to(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        expect(nil as Bool?).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <nil>\") {\n            expect(nil as Bool?).to(beTruthy())\n        }\n    }\n\n    func testShouldMatchBoolConvertibleTypesThatConvertToTrue() {\n        expect(ConvertsToBool.TrueLike).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <TrueLike>\") {\n            expect(ConvertsToBool.TrueLike).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchBoolConvertibleTypesThatConvertToFalse() {\n        expect(ConvertsToBool.FalseLike).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <FalseLike>\") {\n            expect(ConvertsToBool.FalseLike).to(beTruthy())\n        }\n    }\n}\n\nclass BeTrueTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTrue())\n\n        failsWithErrorMessage(\"expected to not be true, got <true>\") {\n            expect(true).toNot(beTrue())\n        }\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTrue())\n\n        failsWithErrorMessage(\"expected to be true, got <false>\") {\n            expect(false).to(beTrue())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to not be true, got <nil>\") {\n            expect(nil as Bool?).toNot(beTrue())\n        }\n\n        failsWithErrorMessageForNil(\"expected to be true, got <nil>\") {\n            expect(nil as Bool?).to(beTrue())\n        }\n    }\n}\n\nclass BeFalsyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNilTypes\", testShouldMatchNilTypes),\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldNotMatchNonNilTypes\", testShouldNotMatchNonNilTypes),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldMatchNilBools\", testShouldMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchNilTypes() {\n        expect(false as Bool?).to(beFalsy())\n        expect(nil as Bool?).to(beFalsy())\n        expect(nil as Int?).to(beFalsy())\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalsy())\n\n        failsWithErrorMessage(\"expected to be falsy, got <true>\") {\n            expect(true).to(beFalsy())\n        }\n    }\n\n    func testShouldNotMatchNonNilTypes() {\n        expect(true as Bool?).toNot(beFalsy())\n        expect(1 as Int?).toNot(beFalsy())\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <false>\") {\n            expect(false).toNot(beFalsy())\n        }\n    }\n\n    func testShouldMatchNilBools() {\n        expect(nil as Bool?).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalsy())\n        }\n    }\n}\n\nclass BeFalseTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalse())\n\n        failsWithErrorMessage(\"expected to be false, got <true>\") {\n            expect(true).to(beFalse())\n        }\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalse())\n\n        failsWithErrorMessage(\"expected to not be false, got <false>\") {\n            expect(false).toNot(beFalse())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to be false, got <nil>\") {\n            expect(nil as Bool?).to(beFalse())\n        }\n\n        failsWithErrorMessageForNil(\"expected to not be false, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalse())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeNilTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeNilTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeNil\", testBeNil),\n        ]\n    }\n\n    func producesNil() -> Array<Int>? {\n        return nil\n    }\n\n    func testBeNil() {\n        expect(nil as Int?).to(beNil())\n        expect(1 as Int?).toNot(beNil())\n        expect(self.producesNil()).to(beNil())\n\n        failsWithErrorMessage(\"expected to not be nil, got <nil>\") {\n            expect(nil as Int?).toNot(beNil())\n        }\n\n        failsWithErrorMessage(\"expected to be nil, got <1>\") {\n            expect(1 as Int?).to(beNil())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeVoidTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeVoidTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeVoid\", testBeVoid),\n        ]\n    }\n\n    func testBeVoid() {\n        expect(()).to(beVoid())\n        expect(() as ()?).to(beVoid())\n        expect(nil as ()?).toNot(beVoid())\n\n        expect(()) == ()\n        expect(() as ()?) == ()\n        expect(nil as ()?) != ()\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(()).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(() as ()?).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to be void, got <nil>\") {\n            expect(nil as ()?).to(beVoid())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/BeginWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeginWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testNegativeMatches\", testNegativeMatches),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect([1, 2, 3]).to(beginWith(1))\n        expect([1, 2, 3]).toNot(beginWith(2))\n\n        expect(\"foobar\").to(beginWith(\"foo\"))\n        expect(\"foobar\").toNot(beginWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(beginWith(\"foo\"))\n        expect(NSString(string: \"foobar\").description).toNot(beginWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(beginWith(\"a\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(beginWith(\"b\"))\n#endif\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessageForNil(\"expected to begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).to(beginWith(NSString(string: \"b\")))\n        }\n        failsWithErrorMessageForNil(\"expected to not begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).toNot(beginWith(NSString(string: \"b\")))\n        }\n\n        failsWithErrorMessage(\"expected to begin with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(beginWith(2))\n        }\n        failsWithErrorMessage(\"expected to not begin with <1>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(beginWith(1))\n        }\n        failsWithErrorMessage(\"expected to begin with <atm>, got <batman>\") {\n            expect(\"batman\").to(beginWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not begin with <bat>, got <batman>\") {\n            expect(\"batman\").toNot(beginWith(\"bat\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/ContainTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass ContainTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testContain\", testContain),\n            (\"testContainSubstring\", testContainSubstring),\n            (\"testContainObjCSubstring\", testContainObjCSubstring),\n            (\"testVariadicArguments\", testVariadicArguments),\n            (\"testCollectionArguments\", testCollectionArguments),\n        ]\n    }\n\n    func testContain() {\n        expect([1, 2, 3]).to(contain(1))\n        expect([1, 2, 3] as [CInt]).to(contain(1 as CInt))\n        expect([1, 2, 3] as Array<CInt>).to(contain(1 as CInt))\n        expect([\"foo\", \"bar\", \"baz\"]).to(contain(\"baz\"))\n        expect([1, 2, 3]).toNot(contain(4))\n        expect([\"foo\", \"bar\", \"baz\"]).toNot(contain(\"ba\"))\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\"])).to(contain(NSString(string: \"a\")))\n        expect(NSArray(array: [\"a\"])).toNot(contain(NSString(string:\"b\")))\n        expect(NSArray(object: 1) as NSArray?).to(contain(1))\n#endif\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"b\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to contain <bar>, got <nil>\") {\n            expect(nil as [String]?).to(contain(\"bar\"))\n        }\n        failsWithErrorMessageForNil(\"expected to not contain <b>, got <nil>\") {\n            expect(nil as [String]?).toNot(contain(\"b\"))\n        }\n    }\n\n    func testContainSubstring() {\n        expect(\"foo\").to(contain(\"o\"))\n        expect(\"foo\").to(contain(\"oo\"))\n        expect(\"foo\").toNot(contain(\"z\"))\n        expect(\"foo\").toNot(contain(\"zz\"))\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <foo>\") {\n            expect(\"foo\").to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <oo>, got <foo>\") {\n            expect(\"foo\").toNot(contain(\"oo\"))\n        }\n    }\n\n    func testContainObjCSubstring() {\n        let str = NSString(string: \"foo\")\n        expect(str).to(contain(NSString(string: \"o\")))\n        expect(str).to(contain(NSString(string: \"oo\")))\n        expect(str).toNot(contain(NSString(string: \"z\")))\n        expect(str).toNot(contain(NSString(string: \"zz\")))\n    }\n\n    func testVariadicArguments() {\n        expect([1, 2, 3]).to(contain(1, 2))\n        expect([1, 2, 3]).toNot(contain(1, 4))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"a\", \"bar\"))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"bar\", \"b\"))\n        }\n    }\n\n    func testCollectionArguments() {\n        expect([1, 2, 3]).to(contain([1, 2]))\n        expect([1, 2, 3]).toNot(contain([1, 4]))\n\n        let collection = Array(1...10)\n        let slice = Array(collection[3...5])\n        expect(collection).to(contain(slice))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain([\"a\", \"bar\"]))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain([\"bar\", \"b\"]))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/EndWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EndWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEndWithPositives\", testEndWithPositives),\n            (\"testEndWithNegatives\", testEndWithNegatives),\n        ]\n    }\n\n    func testEndWithPositives() {\n        expect([1, 2, 3]).to(endWith(3))\n        expect([1, 2, 3]).toNot(endWith(2))\n\n        expect(\"foobar\").to(endWith(\"bar\"))\n        expect(\"foobar\").toNot(endWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(endWith(\"bar\"))\n        expect(NSString(string: \"foobar\").description).toNot(endWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(endWith(\"b\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(endWith(\"a\"))\n#endif\n    }\n\n    func testEndWithNegatives() {\n        failsWithErrorMessageForNil(\"expected to end with <2>, got <nil>\") {\n            expect(nil as [Int]?).to(endWith(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not end with <2>, got <nil>\") {\n            expect(nil as [Int]?).toNot(endWith(2))\n        }\n\n        failsWithErrorMessage(\"expected to end with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(endWith(2))\n        }\n        failsWithErrorMessage(\"expected to not end with <3>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(endWith(3))\n        }\n        failsWithErrorMessage(\"expected to end with <atm>, got <batman>\") {\n            expect(\"batman\").to(endWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not end with <man>, got <batman>\") {\n            expect(\"batman\").toNot(endWith(\"man\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/EqualTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EqualTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEquality\", testEquality),\n            (\"testArrayEquality\", testArrayEquality),\n            (\"testSetEquality\", testSetEquality),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n            (\"testDictionaryEquality\", testDictionaryEquality),\n            (\"testDataEquality\", testDataEquality),\n            (\"testNSObjectEquality\", testNSObjectEquality),\n            (\"testOperatorEquality\", testOperatorEquality),\n            (\"testOperatorEqualityWithArrays\", testOperatorEqualityWithArrays),\n            (\"testOperatorEqualityWithDictionaries\", testOperatorEqualityWithDictionaries),\n            (\"testOptionalEquality\", testOptionalEquality),\n            (\"testArrayOfOptionalsEquality\", testArrayOfOptionalsEquality),\n            (\"testDictionariesWithDifferentSequences\", testDictionariesWithDifferentSequences),\n        ]\n    }\n\n    func testEquality() {\n        expect(1 as CInt).to(equal(1 as CInt))\n        expect(1 as CInt).to(equal(1))\n        expect(1).to(equal(1))\n        expect(\"hello\").to(equal(\"hello\"))\n        expect(\"hello\").toNot(equal(\"world\"))\n\n        expect {\n            1\n        }.to(equal(1))\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\").to(equal(\"world\"))\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\").toNot(equal(\"hello\"))\n        }\n    }\n\n    func testArrayEquality() {\n        expect([1, 2, 3]).to(equal([1, 2, 3]))\n        expect([1, 2, 3]).toNot(equal([1, 2]))\n        expect([1, 2, 3]).toNot(equal([1, 2, 4]))\n\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        expect(array1).to(equal(array2))\n        expect(array1).to(equal([1, 2, 3]))\n        expect(array1).toNot(equal([1, 2] as Array<Int>))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [1, 2, 3])).to(equal(NSArray(array: [1, 2, 3])))\n#endif\n\n        failsWithErrorMessage(\"expected to equal <[1, 2]>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(equal([1, 2]))\n        }\n    }\n\n    func testSetEquality() {\n        expect(Set([1, 2])).to(equal(Set([1, 2])))\n        expect(Set<Int>()).to(equal(Set<Int>()))\n        expect(Set<Int>()) == Set<Int>()\n        expect(Set([1, 2])) != Set<Int>()\n\n        failsWithErrorMessageForNil(\"expected to equal <[1, 2]>, got <nil>\") {\n            expect(nil as Set<Int>?).to(equal(Set([1, 2])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3]>, missing <[1]>\") {\n            expect(Set([2, 3])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[1, 2, 3, 4]>, extra <[4]>\") {\n            expect(Set([1, 2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])) == Set([1, 2, 3])\n        }\n\n        failsWithErrorMessage(\"expected to not equal <[1, 2, 3]>, got <[1, 2, 3]>\") {\n            expect(Set([1, 2, 3])) != Set([1, 2, 3])\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as String?).to(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <foo>\") {\n            expect(\"foo\").toNot(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <bar>, got <nil>\") {\n            expect(nil as String?).toNot(equal(\"bar\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int]?).to(equal(nil as [Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1]>, got <nil>\") {\n            expect(nil as [Int]?).toNot(equal([1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1]>\") {\n            expect([1]).toNot(equal(nil as [Int]?))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int: Int]?).to(equal(nil as [Int: Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1: 1]>, got <nil>\") {\n            expect(nil as [Int: Int]?).toNot(equal([1: 1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1: 1]>\") {\n            expect([1: 1]).toNot(equal(nil as [Int: Int]?))\n        }\n    }\n\n    func testDictionaryEquality() {\n        expect([\"foo\": \"bar\"]).to(equal([\"foo\": \"bar\"]))\n        expect([\"foo\": \"bar\"]).toNot(equal([\"foo\": \"baz\"]))\n\n        let actual = [\"foo\": \"bar\"]\n        let expected = [\"foo\": \"bar\"]\n        let unexpected = [\"foo\": \"baz\"]\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n#if _runtime(_ObjC)\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal([\"foo\": \"bar\"]))\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal(expected))\n#endif\n    }\n\n    func testDataEquality() {\n        let actual = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let expected = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let unexpected = \"foobarfoo\".dataUsingEncoding(NSUTF8StringEncoding)\n\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11)\n            let expectedErrorMessage = \"expected to equal <NSData<length=9>>, got <NSData<length=6>>\"\n        #else\n            let expectedErrorMessage = \"expected to equal <NSData<hash=92856895,length=9>>,\"\n                + \" got <NSData<hash=114710658,length=6>>\"\n        #endif\n\n        failsWithErrorMessage(expectedErrorMessage) {\n            expect(actual).to(equal(unexpected))\n        }\n    }\n\n    func testNSObjectEquality() {\n        expect(NSNumber(integer:1)).to(equal(NSNumber(integer:1)))\n        expect(NSNumber(integer:1)) == NSNumber(integer:1)\n        expect(NSNumber(integer:1)) != NSNumber(integer:2)\n        expect { NSNumber(integer:1) }.to(equal(1))\n    }\n\n    func testOperatorEquality() {\n        expect(\"foo\") == \"foo\"\n        expect(\"foo\") != \"bar\"\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\") == \"world\"\n            return\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\") != \"hello\"\n            return\n        }\n    }\n\n    func testOperatorEqualityWithArrays() {\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        let array3: Array<Int> = [1, 2]\n        expect(array1) == array2\n        expect(array1) != array3\n    }\n\n    func testOperatorEqualityWithDictionaries() {\n        let dict1 = [\"foo\": \"bar\"]\n        let dict2 = [\"foo\": \"bar\"]\n        let dict3 = [\"foo\": \"baz\"]\n        expect(dict1) == dict2\n        expect(dict1) != dict3\n    }\n\n    func testOptionalEquality() {\n        expect(1 as CInt?).to(equal(1))\n        expect(1 as CInt?).to(equal(1 as CInt?))\n\n        expect(1).toNot(equal(nil))\n    }\n    \n    func testArrayOfOptionalsEquality() {\n        let array1: Array<Int?> = [1, nil, 3]\n        let array2: Array<Int?> = [nil, 2, 3]\n        let array3: Array<Int?> = [1, nil, 3]\n        \n        expect(array1).toNot(equal(array2))\n        expect(array1).to(equal(array3))\n        expect(array2).toNot(equal(array3))\n        \n        let allNils1: Array<String?> = [nil, nil, nil, nil]\n        let allNils2: Array<String?> = [nil, nil, nil, nil]\n        let notReallyAllNils: Array<String?> = [nil, nil, nil, \"turtles\"]\n        \n        expect(allNils1).to(equal(allNils2))\n        expect(allNils1).toNot(equal(notReallyAllNils))\n        \n        let noNils1: Array<Int?> = [1, 2, 3, 4, 5]\n        let noNils2: Array<Int?> = [1, 3, 5, 7, 9]\n        \n        expect(noNils1).toNot(equal(noNils2))\n        \n        failsWithErrorMessage(\"expected to equal <[Optional(1), nil]>, got <[nil, Optional(2)]>\") {\n            let arrayOfOptionalInts: Array<Int?> = [nil, 2]\n            let anotherArrayOfOptionalInts: Array<Int?> = [1, nil]\n            expect(arrayOfOptionalInts).to(equal(anotherArrayOfOptionalInts))\n            return\n        }\n    }\n\n    func testDictionariesWithDifferentSequences() {\n        // see: https://github.com/Quick/Nimble/issues/61\n        // these dictionaries generate different orderings of sequences.\n        let result = [\"how\":1, \"think\":1, \"didnt\":2, \"because\":1,\n            \"interesting\":1, \"always\":1, \"right\":1, \"such\":1,\n            \"to\":3, \"say\":1, \"cool\":1, \"you\":1,\n            \"weather\":3, \"be\":1, \"went\":1, \"was\":2,\n            \"sometimes\":1, \"and\":3, \"mind\":1, \"rain\":1,\n            \"whole\":1, \"everything\":1, \"weather.\":1, \"down\":1,\n            \"kind\":1, \"mood.\":1, \"it\":2, \"everyday\":1, \"might\":1,\n            \"more\":1, \"have\":2, \"person\":1, \"could\":1, \"tenth\":2,\n            \"night\":1, \"write\":1, \"Youd\":1, \"affects\":1, \"of\":3,\n            \"Who\":1, \"us\":1, \"an\":1, \"I\":4, \"my\":1, \"much\":2,\n            \"wrong.\":1, \"peacefully.\":1, \"amazing\":3, \"would\":4,\n            \"just\":1, \"grade.\":1, \"Its\":2, \"The\":2, \"had\":1, \"that\":1,\n            \"the\":5, \"best\":1, \"but\":1, \"essay\":1, \"for\":1, \"summer\":2,\n            \"your\":1, \"grade\":1, \"vary\":1, \"pretty\":1, \"at\":1, \"rain.\":1,\n            \"about\":1, \"allow\":1, \"thought\":1, \"in\":1, \"sleep\":1, \"a\":1,\n            \"hot\":1, \"really\":1, \"beach\":1, \"life.\":1, \"we\":1, \"although\":1]\n\n        let storyCount = [\"The\":2, \"summer\":2, \"of\":3, \"tenth\":2, \"grade\":1,\n            \"was\":2, \"the\":5, \"best\":1, \"my\":1, \"life.\":1, \"I\":4,\n            \"went\":1, \"to\":3, \"beach\":1, \"everyday\":1, \"and\":3,\n            \"we\":1, \"had\":1, \"amazing\":3, \"weather.\":1, \"weather\":3,\n            \"didnt\":2, \"really\":1, \"vary\":1, \"much\":2, \"always\":1,\n            \"pretty\":1, \"hot\":1, \"although\":1, \"sometimes\":1, \"at\":1,\n            \"night\":1, \"it\":2, \"would\":4, \"rain.\":1, \"mind\":1, \"rain\":1,\n            \"because\":1, \"cool\":1, \"everything\":1, \"down\":1, \"allow\":1,\n            \"us\":1, \"sleep\":1, \"peacefully.\":1, \"Its\":2, \"how\":1,\n            \"affects\":1, \"your\":1, \"mood.\":1, \"Who\":1, \"have\":2,\n            \"thought\":1, \"that\":1, \"could\":1, \"write\":1, \"a\":1,\n            \"whole\":1, \"essay\":1, \"just\":1, \"about\":1, \"in\":1,\n            \"grade.\":1, \"kind\":1, \"right\":1, \"Youd\":1, \"think\":1,\n            \"for\":1, \"such\":1, \"an\":1, \"interesting\":1, \"person\":1,\n            \"might\":1, \"more\":1, \"say\":1, \"but\":1, \"you\":1, \"be\":1, \"wrong.\":1]\n\n        expect(result).to(equal(storyCount))\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/HaveCountTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass HaveCountTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testHaveCountForArray\", testHaveCountForArray),\n            (\"testHaveCountForDictionary\", testHaveCountForDictionary),\n            (\"testHaveCountForSet\", testHaveCountForSet),\n        ]\n    }\n\n    func testHaveCountForArray() {\n        expect([1, 2, 3]).to(haveCount(3))\n        expect([1, 2, 3]).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Array<Int> with count 1, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Array<Int> with count 3, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForDictionary() {\n        let dictionary = [\"1\":1, \"2\":2, \"3\":3]\n        expect(dictionary).to(haveCount(3))\n        expect(dictionary).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Dictionary<String, Int> with count 1, got 3\\nActual Value: \\(stringify(dictionary))\") {\n            expect(dictionary).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Dictionary<String, Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(dictionary))\") {\n                expect(dictionary).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForSet() {\n        let set = Set([1, 2, 3])\n        expect(set).to(haveCount(3))\n        expect(set).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Set<Int> with count 1, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Set<Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).notTo(haveCount(3))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/MatchErrorTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass MatchErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchErrorPositive\", testMatchErrorPositive),\n            (\"testMatchErrorNegative\", testMatchErrorNegative),\n            (\"testMatchNSErrorPositive\", testMatchNSErrorPositive),\n            (\"testMatchNSErrorNegative\", testMatchNSErrorNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n        ]\n    }\n\n    func testMatchErrorPositive() {\n        expect(Error.Laugh).to(matchError(Error.Laugh))\n        expect(Error.Laugh).to(matchError(Error.self))\n        expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 1)))\n\n        expect(Error.Laugh as ErrorType).to(matchError(Error.Laugh))\n    }\n\n    func testMatchErrorNegative() {\n        expect(Error.Laugh).toNot(matchError(Error.Cry))\n        expect(Error.Laugh as ErrorType).toNot(matchError(Error.Cry))\n    }\n\n    func testMatchNSErrorPositive() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 0, userInfo: nil)\n\n        expect(error1).to(matchError(error2))\n    }\n\n    func testMatchNSErrorNegative() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n\n        expect(error1).toNot(matchError(error2))\n    }\n\n    func testMatchPositiveMessage() {\n        failsWithErrorMessage(\"expected to match error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 2)))\n        }\n        failsWithErrorMessage(\"expected to match error <Cry>, got <Laugh>\") {\n            expect(Error.Laugh).to(matchError(Error.Cry))\n        }\n        failsWithErrorMessage(\"expected to match error <code=1>, got <code=0>\") {\n            expect(CustomDebugStringConvertibleError.A).to(matchError(CustomDebugStringConvertibleError.B))\n        }\n\n        failsWithErrorMessage(\"expected to match error <Error Domain=err Code=1 \\\"(null)\\\">, got <Error Domain=err Code=0 \\\"(null)\\\">\") {\n            let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n            let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n            expect(error1).to(matchError(error2))\n        }\n    }\n\n    func testMatchNegativeMessage() {\n        failsWithErrorMessage(\"expected to not match error <Laugh>, got <Laugh>\") {\n            expect(Error.Laugh).toNot(matchError(Error.Laugh))\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).to(matchError(Error.Laugh))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).toNot(matchError(Error.Laugh))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/MatchTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass MatchTest:XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchPositive\", testMatchPositive),\n            (\"testMatchNegative\", testMatchNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testMatchNils\", testMatchNils),\n        ]\n    }\n\n    func testMatchPositive() {\n        expect(\"11:14\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchNegative() {\n        expect(\"hello\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchPositiveMessage() {\n        let message = \"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\"\n        failsWithErrorMessage(message) {\n            expect(\"hello\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n    \n    func testMatchNegativeMessage() {\n        let message = \"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:14>\"\n        failsWithErrorMessage(message) {\n            expect(\"11:14\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n\n    func testMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/PostNotificationTest.swift",
    "content": "import XCTest\nimport Nimble\nimport Foundation\n\nclass PostNotificationTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPassesWhenNoNotificationsArePosted\", testPassesWhenNoNotificationsArePosted),\n            (\"testPassesWhenExpectedNotificationIsPosted\", testPassesWhenExpectedNotificationIsPosted),\n            (\"testPassesWhenAllExpectedNotificationsArePosted\", testPassesWhenAllExpectedNotificationsArePosted),\n            (\"testFailsWhenNoNotificationsArePosted\", testFailsWhenNoNotificationsArePosted),\n            (\"testFailsWhenNotificationWithWrongNameIsPosted\", testFailsWhenNotificationWithWrongNameIsPosted),\n            (\"testFailsWhenNotificationWithWrongObjectIsPosted\", testFailsWhenNotificationWithWrongObjectIsPosted),\n            (\"testPassesWhenExpectedNotificationEventuallyIsPosted\", testPassesWhenExpectedNotificationEventuallyIsPosted),\n        ]\n    }\n\n    var notificationCenter: NSNotificationCenter!\n\n    #if _runtime(_ObjC)\n    override func setUp() {\n        _setUp()\n        super.setUp()\n    }\n    #else\n    func setUp() {\n        _setUp()\n    }\n    #endif\n\n\n    func _setUp() {\n        notificationCenter = NSNotificationCenter()\n    }\n\n    func testPassesWhenNoNotificationsArePosted() {\n        expect {\n            // no notifications here!\n            return nil\n        }.to(postNotifications(beEmpty(), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenExpectedNotificationIsPosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        expect {\n            self.notificationCenter.postNotification(testNotification)\n        }.to(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenAllExpectedNotificationsArePosted() {\n        let foo = NSNumber(int: 1)\n        let bar = NSNumber(int: 2)\n        let n1 = NSNotification(name: \"Foo\", object: foo)\n        let n2 = NSNotification(name: \"Bar\", object: bar)\n        expect {\n            self.notificationCenter.postNotification(n1)\n            self.notificationCenter.postNotification(n2)\n            return nil\n        }.to(postNotifications(equal([n1, n2]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testFailsWhenNoNotificationsArePosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(testNotification)]>, got no notifications\") {\n            expect {\n                // no notifications here!\n                return nil\n            }.to(postNotifications(equal([testNotification]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongNameIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name + \"a\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongObjectIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name, object: NSObject())\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testPassesWhenExpectedNotificationEventuallyIsPosted() {\n        #if _runtime(_ObjC)\n            let testNotification = NSNotification(name: \"Foo\", object: nil)\n            expect {\n                deferToMainQueue {\n                    self.notificationCenter.postNotification(testNotification)\n                }\n                return nil\n            }.toEventually(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n        #else\n            print(\"\\(#function) is missing because toEventually is not implement on this platform\")\n        #endif\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/RaisesExceptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\nclass RaisesExceptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutException\", testNegativeMatchesDoNotCallClosureWithoutException),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    var anException = NSException(name: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"])\n\n    func testPositiveMatches() {\n        expect { self.anException.raise() }.to(raiseException())\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n            expect(exception.name).to(equal(\"laugh\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"df\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessage(\"expected to raise exception with name <foo>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"foo\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <bar>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"bar\"))\n        }\n\n        failsWithErrorMessage(\n            \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{k = v;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"k\": \"v\"]))\n        }\n\n        failsWithErrorMessage(\"expected to raise any exception, got no exception\") {\n            expect { self.anException }.to(raiseException())\n        }\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <Lulz>, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <bar> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"bar\", reason: \"Lulz\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutException() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to raise exception with name <foo> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <ha> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"ha\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <Lulz> with userInfo <{}> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n                })\n        }\n\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        let innerFailureMessage = \"expected to begin with <fo>, got <laugh>\"\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <wrong> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"wrong\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <Lulz> with userInfo <{}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/SatisfyAnyOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass SatisfyAnyOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testSatisfyAnyOf\", testSatisfyAnyOf),\n            (\"testOperatorOr\", testOperatorOr),\n        ]\n    }\n\n    func testSatisfyAnyOf() {\n        expect(2).to(satisfyAnyOf(equal(2), equal(3)))\n#if _runtime(_ObjC)\n        expect(2).toNot(satisfyAnyOf(equal(3), equal(\"turtles\")))\n#endif\n        expect([1,2,3]).to(satisfyAnyOf(equal([1,2,3]), allPass({$0 < 4}), haveCount(3)))\n        expect(\"turtle\").toNot(satisfyAnyOf(contain(\"a\"), endWith(\"magic\")))\n        expect(82.0).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        expect(false).to(satisfyAnyOf(beTrue(), beFalse()))\n        expect(true).to(satisfyAnyOf(beTruthy(), beFalsy()))\n        \n        failsWithErrorMessage(\n            \"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\") {\n                expect(2).to(satisfyAnyOf(equal(3), equal(4), equal(5)))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {all be less than 4, but failed first at element <5> in <[5, 6, 7]>}, or {equal <[1, 2, 3, 4]>}, got [5, 6, 7]\") {\n                expect([5,6,7]).to(satisfyAnyOf(allPass(\"be less than 4\", {$0 < 4}), equal([1,2,3,4])))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {be true}, got false\") {\n                expect(false).to(satisfyAnyOf(beTrue()))\n        }\n        failsWithErrorMessage(\n            \"expected to not match one of: {be less than <10.5>}, or {be greater than <100.75>}, or {be close to <50.1> (within 0.0001)}, got 50.10001\") {\n                expect(50.10001).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        }\n    }\n    \n    func testOperatorOr() {\n        expect(2).to(equal(2) || equal(3))\n#if _runtime(_ObjC)\n        expect(2).toNot(equal(3) || equal(\"turtles\"))\n#endif\n        expect(\"turtle\").toNot(contain(\"a\") || endWith(\"magic\"))\n        expect(82.0).toNot(beLessThan(10.5) || beGreaterThan(100.75))\n        expect(false).to(beTrue() || beFalse())\n        expect(true).to(beTruthy() || beFalsy())\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/Matchers/ThrowErrorTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum Error : ErrorType {\n    case Laugh\n    case Cry\n}\n\nenum EquatableError : ErrorType {\n    case Parameterized(x: Int)\n}\n\nextension EquatableError : Equatable {\n}\n\nfunc ==(lhs: EquatableError, rhs: EquatableError) -> Bool {\n    switch (lhs, rhs) {\n    case (.Parameterized(let l), .Parameterized(let r)):\n        return l == r\n    }\n}\n\nenum CustomDebugStringConvertibleError : ErrorType {\n    case A\n    case B\n}\n\nextension CustomDebugStringConvertibleError : CustomDebugStringConvertible {\n    var debugDescription : String {\n        return \"code=\\(_code)\"\n    }\n}\n\nclass ThrowErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testPositiveNegatedMatches\", testPositiveNegatedMatches),\n            (\"testNegativeNegatedMatches\", testNegativeNegatedMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutError\", testNegativeMatchesDoNotCallClosureWithoutError),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect { throw Error.Laugh }.to(throwError())\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh))\n        expect { throw Error.Laugh }.to(throwError(errorType: Error.self))\n        expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 1)))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        // Generic typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { error in\n            guard case EquatableError.Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Explicit typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { (error: EquatableError) in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over errorType argument\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError(errorType: EquatableError.self) { error in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).to(beginWith(\"Nim\"))\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Different case\n        failsWithErrorMessage(\"expected to throw error <Cry>, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry))\n        }\n        // Different case with closure\n        failsWithErrorMessage(\"expected to throw error <Cry> that satisfies block, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry) { _ in return })\n        }\n        // Different case, implementing CustomDebugStringConvertible\n        failsWithErrorMessage(\"expected to throw error <code=1>, got <code=0>\") {\n            expect { throw CustomDebugStringConvertibleError.A }.to(throwError(CustomDebugStringConvertibleError.B))\n        }\n    }\n\n    func testPositiveNegatedMatches() {\n        // No error at all\n        expect { return }.toNot(throwError())\n        // Different case\n        expect { throw Error.Laugh }.toNot(throwError(Error.Cry))\n    }\n\n    func testNegativeNegatedMatches() {\n        // No error at all\n        failsWithErrorMessage(\"expected to not throw any error, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError())\n        }\n        // Different error\n        failsWithErrorMessage(\"expected to not throw error <Laugh>, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError(Error.Laugh))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutError() {\n        failsWithErrorMessage(\"expected to throw error that satisfies block, got no error\") {\n            expect { return }.to(throwError { error in\n                fail()\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to throw error <Laugh> that satisfies block, got no error\") {\n            expect { return }.to(throwError(Error.Laugh) { error in\n                fail()\n            })\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n#if SWIFT_PACKAGE\n        let moduleName = \"Nimbletest\"\n#else\n        let moduleName = \"NimbleTests\"\n#endif\n        let innerFailureMessage = \"expected to equal <foo>, got <\\(moduleName).Error>\"\n        let closure = { (error: Error) in\n            print(\"** In closure! With domain \\(error._domain)\")\n            expect(error._domain).to(equal(\"foo\"))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error from type <Error> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(closure: closure))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error <Laugh> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(Error.Laugh, closure: closure))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/SynchronousTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass SynchronousTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testFailAlwaysFails\", testFailAlwaysFails),\n            (\"testUnexpectedErrorsThrownFails\", testUnexpectedErrorsThrownFails),\n            (\"testToMatchesIfMatcherReturnsTrue\", testToMatchesIfMatcherReturnsTrue),\n            (\"testToProvidesActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToMatchAgainstLazyProperties\", testToMatchAgainstLazyProperties),\n            (\"testToNotMatchesIfMatcherReturnsTrue\", testToNotMatchesIfMatcherReturnsTrue),\n            (\"testToNotProvidesActualValueExpression\", testToNotProvidesActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpression\", testToNotProvidesAMemoizedActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToNotNegativeMatches\", testToNotNegativeMatches),\n            (\"testNotToMatchesLikeToNot\", testNotToMatchesLikeToNot),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSCocoaErrorDomain, code: 42, userInfo: nil)\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testFailAlwaysFails() {\n        failsWithErrorMessage(\"My error message\") {\n            fail(\"My error message\")\n        }\n        failsWithErrorMessage(\"fail() always fails\") {\n            fail()\n        }\n    }\n\n    func testUnexpectedErrorsThrownFails() {\n#if _runtime(_ObjC) // This test triggers a weird segfault on Linux currently\n        failsWithErrorMessage(\"expected to equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.to(equal(1))\n        }\n        failsWithErrorMessage(\"expected to not equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toNot(equal(1))\n        }\n#endif\n    }\n\n    func testToMatchesIfMatcherReturnsTrue() {\n        expect(1).to(MatcherFunc { expr, failure in true })\n        expect{1}.to(MatcherFunc { expr, failure in true })\n    }\n\n    func testToProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).to(MatcherFunc { expr, failure in value = try expr.evaluate(); return true })\n        expect(value).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToMatchAgainstLazyProperties() {\n        expect(ObjectWithLazyProperty().value).to(equal(\"hello\"))\n        expect(ObjectWithLazyProperty().value).toNot(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).to(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).toNot(equal(\"hello\"))\n    }\n\n    // repeated tests from to() for toNot()\n    func testToNotMatchesIfMatcherReturnsTrue() {\n        expect(1).toNot(MatcherFunc { expr, failure in false })\n        expect{1}.toNot(MatcherFunc { expr, failure in false })\n    }\n\n    func testToNotProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).toNot(MatcherFunc { expr, failure in value = try expr.evaluate(); return false })\n        expect(value).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotNegativeMatches() {\n        failsWithErrorMessage(\"expected to not match, got <1>\") {\n            expect(1).toNot(MatcherFunc { expr, failure in true })\n        }\n    }\n\n\n    func testNotToMatchesLikeToNot() {\n        expect(1).notTo(MatcherFunc { expr, failure in false })\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/UserDescriptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass UserDescriptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToMatcher_CustomFailureMessage\", testToMatcher_CustomFailureMessage),\n            (\"testNotToMatcher_CustomFailureMessage\", testNotToMatcher_CustomFailureMessage),\n            (\"testToNotMatcher_CustomFailureMessage\", testToNotMatcher_CustomFailureMessage),\n            (\"testToEventuallyMatch_CustomFailureMessage\", testToEventuallyMatch_CustomFailureMessage),\n            (\"testToEventuallyNotMatch_CustomFailureMessage\", testToEventuallyNotMatch_CustomFailureMessage),\n            (\"testToNotEventuallyMatch_CustomFailureMessage\", testToNotEventuallyMatch_CustomFailureMessage),\n        ]\n    }\n    \n    func testToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to match, got <1>\") {\n                expect(1).to(MatcherFunc { expr, failure in false }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testNotToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).notTo(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToNotMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).toNot(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These aren't eventually equal!\\n\" +\n            \"expected to eventually equal <1>, got <0>\") {\n                expect { 0 }.toEventually(equal(1), description: \"These aren't eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToEventuallyNotMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToNotEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/NimbleSpecHelper.h",
    "content": "@import Nimble;\n#import \"NimbleTests-Swift.h\"\n\n// Use this when you want to verify the failure message for when an expectation fails\n#define expectFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessage:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n#define expectFailureMessages(MSGS, BLOCK) \\\n[NimbleHelper expectFailureMessages:(MSGS) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n\n// Use this when you want to verify the failure message with the nil message postfixed\n// to it: \" (use beNil() to match nils)\"\n#define expectNilFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessageForNil:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCAllPassTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAllPassTest : XCTestCase\n\n@end\n\n@implementation ObjCAllPassTest\n\n- (void)testPositiveMatches {\n    expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n    expect(@[@1, @2, @3,@4]).toNot(allPass(beGreaterThan(@5)));\n    \n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).to(allPass(beLessThan(@5)));\n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beGreaterThan(@5)));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to all be less than <3>, but failed first at element\"\n                         \" <3> in <[1, 2, 3, 4]>\", ^{\n                             expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@3)));\n                         });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect(@[@1, @2, @3,@4]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).to(allPass(beLessThan(@5)));\n                         });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).toNot(allPass(beLessThan(@5)));\n                         });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCAsyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAsyncTest : XCTestCase\n\n@end\n\n@implementation ObjCAsyncTest\n\n- (void)testAsync {\n    __block id obj = @1;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = nil;\n    });\n    expect(obj).toEventually(beNil());\n}\n\n\n- (void)testAsyncWithCustomTimeout {\n    __block id obj = nil;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = @1;\n    });\n    expect(obj).withTimeout(5).toEventuallyNot(beNil());\n}\n\n- (void)testAsyncCallback {\n    waitUntil(^(void (^done)(void)){\n        done();\n    });\n\n    expectFailureMessage(@\"Waited more than 1.0 second\", ^{\n        waitUntil(^(void (^done)(void)){ /* ... */ });\n    });\n\n    expectFailureMessage(@\"Waited more than 0.01 seconds\", ^{\n        waitUntilTimeout(0.01, ^(void (^done)(void)){\n            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n                [NSThread sleepForTimeInterval:0.1];\n                done();\n            });\n        });\n    });\n\n    expectFailureMessage(@\"expected to equal <goodbye>, got <hello>\", ^{\n        waitUntil(^(void (^done)(void)){\n            [NSThread sleepForTimeInterval:0.1];\n            expect(@\"hello\").to(equal(@\"goodbye\"));\n            done();\n        });\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeAnInstanceOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeAnInstanceOfTest : XCTestCase\n@end\n\n@implementation ObjCBeAnInstanceOfTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beAnInstanceOf([NSNull class]));\n    expect(@1).toNot(beAnInstanceOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be an instance of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAnInstanceOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be an instance of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be an instance of NSNull, got <nil>\", ^{\n        expect(nil).to(beAnInstanceOf([NSNull class]));\n    });\n\n    expectNilFailureMessage(@\"expected to not be an instance of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeCloseToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeCloseToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeCloseToTest\n\n- (void)testPositiveMatches {\n    expect(@1.2).to(beCloseTo(@1.2001));\n    expect(@1.2).to(beCloseTo(@2).within(10));\n    expect(@2).toNot(beCloseTo(@1));\n    expect(@1.00001).toNot(beCloseTo(@1).within(0.00000001));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be close to <0> (within 0.001), got <1>\", ^{\n        expect(@1).to(beCloseTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be close to <0> (within 0.001), got <0.0001>\", ^{\n        expect(@(0.0001)).toNot(beCloseTo(@0));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).to(beCloseTo(@0));\n    });\n    expectNilFailureMessage(@\"expected to not be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).toNot(beCloseTo(@0));\n    });\n}\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeEmptyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeEmptyTest : XCTestCase\n@end\n\n@implementation ObjCBeEmptyTest\n\n- (void)testPositiveMatches {\n    expect(@[]).to(beEmpty());\n    expect(@\"\").to(beEmpty());\n    expect(@{}).to(beEmpty());\n    expect([NSSet set]).to(beEmpty());\n    expect([NSIndexSet indexSet]).to(beEmpty());\n    expect([NSHashTable hashTableWithOptions:NSPointerFunctionsWeakMemory]).to(beEmpty());\n\n    expect(@[@1, @2]).toNot(beEmpty());\n    expect(@\"a\").toNot(beEmpty());\n    expect(@{@\"key\": @\"value\"}).toNot(beEmpty());\n    expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    expect(table).toNot(beEmpty());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be empty, got <foo>\", ^{\n        expect(@\"foo\").to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect(@[@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{key = value;}>\", ^{\n        expect(@{@\"key\": @\"value\"}).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).to(beEmpty());\n    });\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    NSString *tableString = [[table description] stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be empty, got <%@>\", tableString]), ^{\n        expect(table).to(beEmpty());\n    });\n\n    expectFailureMessage(@\"expected to not be empty, got <>\", ^{\n        expect(@\"\").toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <()>\", ^{\n        expect(@[]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{}>\", ^{\n        expect(@{}).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <NSHashTable {}>\", ^{\n        expect([NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory]).toNot(beEmpty());\n    });\n}\n\n- (void)testItDoesNotMatchNil {\n    expectNilFailureMessage(@\"expected to be empty, got <nil>\", ^{\n        expect(nil).to(beEmpty());\n    });\n    expectNilFailureMessage(@\"expected to not be empty, got <nil>\", ^{\n        expect(nil).toNot(beEmpty());\n    });\n}\n\n- (void)testItReportsTypesItMatchesAgainst {\n    expectFailureMessage(@\"expected to be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).toNot(beEmpty());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeFalseTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalseTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalseTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalse());\n    expect(@YES).toNot(beFalse());\n}\n\n- (void)testNegativeMatches {\n    expectNilFailureMessage(@\"expected to be false, got <nil>\", ^{\n        expect(nil).to(beFalse());\n    });\n    expectNilFailureMessage(@\"expected to not be false, got <nil>\", ^{\n        expect(nil).toNot(beFalse());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeFalsyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalsyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalsyTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalsy());\n    expect(@YES).toNot(beFalsy());\n    expect(nil).to(beFalsy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to not be falsy, got <nil>\", ^{\n        expect(nil).toNot(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be falsy, got <1>\", ^{\n        expect(@1).to(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThanOrEqualTo(@2));\n    expect(@2).toNot(beGreaterThanOrEqualTo(@3));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than or equal to <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThanOrEqualTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be greater than or equal to <1>, got <2>\", ^{\n        expect(@2).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than or equal to <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThanOrEqualTo(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than or equal to <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThan(@1));\n    expect(@2).toNot(beGreaterThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThan(@(0)));\n    });\n    expectFailureMessage(@\"expected to not be greater than <1>, got <0>\", ^{\n        expect(@0).toNot(beGreaterThan(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThan(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeIdenticalToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeIdenticalToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeIdenticalToTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beIdenticalTo([NSNull null]));\n    expect(@2).toNot(beIdenticalTo(@3));\n}\n\n- (void)testNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(beIdenticalTo(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(beIdenticalTo(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testAliasPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(be([NSNull null]));\n    expect(@2).toNot(be(@3));\n}\n\n- (void)testAliasNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(be(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(be(obj));\n    });\n}\n\n- (void)testAliasNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(be(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(be(obj));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeKindOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeKindOfTest : XCTestCase\n\n@end\n\n@implementation ObjCBeKindOfTest\n\n- (void)testPositiveMatches {\n    NSMutableArray *array = [NSMutableArray array];\n    expect(array).to(beAKindOf([NSArray class]));\n    expect(@1).toNot(beAKindOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be a kind of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAKindOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be a kind of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be a kind of NSNull, got <nil>\", ^{\n        expect(nil).to(beAKindOf([NSNull class]));\n    });\n    expectNilFailureMessage(@\"expected to not be a kind of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeLessThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThanOrEqualTo(@2));\n    expect(@2).toNot(beLessThanOrEqualTo(@1));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than or equal to <1>, got <2>\", ^{\n        expect(@2).to(beLessThanOrEqualTo(@1));\n    });\n    expectFailureMessage(@\"expected to not be less than or equal to <1>, got <1>\", ^{\n        expect(@1).toNot(beLessThanOrEqualTo(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than or equal to <1>, got <nil>\", ^{\n        expect(nil).to(beLessThanOrEqualTo(@1));\n    });\n    expectNilFailureMessage(@\"expected to not be less than or equal to <-1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThanOrEqualTo(@(-1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeLessThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThan(@3));\n    expect(@2).toNot(beLessThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beLessThan(@0));\n    });\n    expectFailureMessage(@\"expected to not be less than <1>, got <0>\", ^{\n        expect(@0).toNot(beLessThan(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than <-1>, got <nil>\", ^{\n        expect(nil).to(beLessThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be less than <1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThan(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeNilTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeNilTest : XCTestCase\n\n@end\n\n@implementation ObjCBeNilTest\n\n- (void)testPositiveMatches {\n    expect(nil).to(beNil());\n    expect(@NO).toNot(beNil());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be nil, got <1>\", ^{\n        expect(@1).to(beNil());\n    });\n    expectFailureMessage(@\"expected to not be nil, got <nil>\", ^{\n        expect(nil).toNot(beNil());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeTrueTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTrueTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTrueTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTrue());\n    expect(@NO).toNot(beTrue());\n    expect(nil).toNot(beTrue());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be true, got <0>\", ^{\n        expect(@NO).to(beTrue());\n    });\n    expectFailureMessage(@\"expected to be true, got <nil>\", ^{\n        expect(nil).to(beTrue());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeTruthyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTruthyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTruthyTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTruthy());\n    expect(@NO).toNot(beTruthy());\n    expect(nil).toNot(beTruthy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be truthy, got <nil>\", ^{\n        expect(nil).to(beTruthy());\n    });\n    expectFailureMessage(@\"expected to not be truthy, got <1>\", ^{\n        expect(@1).toNot(beTruthy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCBeginWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeginWithTest : XCTestCase\n\n@end\n\n@implementation ObjCBeginWithTest\n\n- (void)testPositiveMatches {\n    expect(@\"hello world!\").to(beginWith(@\"hello\"));\n    expect(@\"hello world!\").toNot(beginWith(@\"world\"));\n\n    NSArray *array = @[@1, @2];\n    expect(array).to(beginWith(@1));\n    expect(array).toNot(beginWith(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to begin with <bar>, got <foo>\", ^{\n        expect(@\"foo\").to(beginWith(@\"bar\"));\n    });\n    expectFailureMessage(@\"expected to not begin with <foo>, got <foo>\", ^{\n        expect(@\"foo\").toNot(beginWith(@\"foo\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to begin with <1>, got <nil>\", ^{\n        expect(nil).to(beginWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not begin with <1>, got <nil>\", ^{\n        expect(nil).toNot(beginWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCContainTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCContainTest : XCTestCase\n\n@end\n\n@implementation ObjCContainTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1));\n    expect(array).toNot(contain(@\"HI\"));\n    expect(@\"String\").to(contain(@\"Str\"));\n    expect(@\"Other\").toNot(contain(@\"Str\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to contain <3>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).to(contain(@3));\n    });\n    expectFailureMessage(@\"expected to not contain <2>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).toNot(contain(@2));\n    });\n\n    expectFailureMessage(@\"expected to contain <hi>, got <la>\", ^{\n        expect(@\"la\").to(contain(@\"hi\"));\n    });\n    expectFailureMessage(@\"expected to not contain <hi>, got <hihihi>\", ^{\n        expect(@\"hihihi\").toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to contain <3>, got <nil>\", ^{\n        expect(nil).to(contain(@3));\n    });\n    expectNilFailureMessage(@\"expected to not contain <3>, got <nil>\", ^{\n        expect(nil).toNot(contain(@3));\n    });\n\n    expectNilFailureMessage(@\"expected to contain <hi>, got <nil>\", ^{\n        expect(nil).to(contain(@\"hi\"));\n    });\n    expectNilFailureMessage(@\"expected to not contain <hi>, got <nil>\", ^{\n        expect(nil).toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testVariadicArguments {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1, @2));\n    expect(array).toNot(contain(@\"HI\", @\"whale\"));\n    expect(@\"String\").to(contain(@\"Str\", @\"ng\"));\n    expect(@\"Other\").toNot(contain(@\"Str\", @\"Oth\"));\n\n\n    expectFailureMessage(@\"expected to contain <Optional(a), Optional(bar)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).to(contain(@\"a\", @\"bar\"));\n    });\n\n    expectFailureMessage(@\"expected to not contain <Optional(bar), Optional(b)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).toNot(contain(@\"bar\", @\"b\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCEndWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEndWithTest : XCTestCase\n\n@end\n\n@implementation ObjCEndWithTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(@\"hello world!\").to(endWith(@\"world!\"));\n    expect(@\"hello world!\").toNot(endWith(@\"hello\"));\n    expect(array).to(endWith(@2));\n    expect(array).toNot(endWith(@1));\n    expect(@1).toNot(contain(@\"foo\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to end with <?>, got <hello world!>\", ^{\n        expect(@\"hello world!\").to(endWith(@\"?\"));\n    });\n    expectFailureMessage(@\"expected to not end with <!>, got <hello world!>\", ^{\n        expect(@\"hello world!\").toNot(endWith(@\"!\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to end with <1>, got <nil>\", ^{\n        expect(nil).to(endWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not end with <1>, got <nil>\", ^{\n        expect(nil).toNot(endWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCEqualTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEqualTest : XCTestCase\n\n@end\n\n@implementation ObjCEqualTest\n\n- (void)testPositiveMatches {\n    expect(@1).to(equal(@1));\n    expect(@1).toNot(equal(@2));\n    expect(@1).notTo(equal(@2));\n    expect(@\"hello\").to(equal(@\"hello\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to equal <2>, got <1>\", ^{\n        expect(@1).to(equal(@2));\n    });\n    expectFailureMessage(@\"expected to not equal <1>, got <1>\", ^{\n        expect(@1).toNot(equal(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to equal <nil>, got <nil>\", ^{\n        expect(nil).to(equal(nil));\n    });\n    expectNilFailureMessage(@\"expected to not equal <nil>, got <nil>\", ^{\n        expect(nil).toNot(equal(nil));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCHaveCount.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCHaveCountTest : XCTestCase\n\n@end\n\n@implementation ObjCHaveCountTest\n\n- (void)testHaveCountForNSArray {\n    expect(@[@1, @2, @3]).to(haveCount(@3));\n    expect(@[@1, @2, @3]).notTo(haveCount(@1));\n\n    expect(@[]).to(haveCount(@0));\n    expect(@[@1]).notTo(haveCount(@0));\n\n    expectFailureMessage(@\"expected to have NSArray with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSArray with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).notTo(haveCount(@3));\n    });\n\n}\n\n- (void)testHaveCountForNSDictionary {\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@3));\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSDictionary with count 1, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSDictionary with count 3, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSHashtable {\n    NSHashTable *const table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    [table addObject:@2];\n    [table addObject:@3];\n\n    expect(table).to(haveCount(@3));\n    expect(table).notTo(haveCount(@1));\n\n    NSString *msg = [NSString stringWithFormat:\n                     @\"expected to have NSHashTable with count 1, got 3\\nActual Value: %@\",\n                     [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).to(haveCount(@1));\n    });\n\n\n    msg = [NSString stringWithFormat:\n           @\"expected to not have NSHashTable with count 3, got 3\\nActual Value: %@\",\n           [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSSet {\n    NSSet *const set = [NSSet setWithArray:@[@1, @2, @3]];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSSet with count 1, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSSet with count 3, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSIndexSet {\n    NSIndexSet *const set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSIndexSet with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSIndexSet with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForUnsupportedTypes {\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFConstantString\", ^{\n        expect(@\"string\").to(haveCount(@6));\n    });\n\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFNumber\", ^{\n        expect(@1).to(haveCount(@6));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCMatchTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCMatchTest : XCTestCase\n\n@end\n\n@implementation ObjCMatchTest\n\n- (void)testPositiveMatches {\n    expect(@\"11:14\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    expect(@\"hello\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\", ^{\n        expect(@\"hello\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:22>\", ^{\n        expect(@\"11:22\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectNilFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCRaiseExceptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCRaiseExceptionTest : XCTestCase\n\n@end\n\n@implementation ObjCRaiseExceptionTest\n\n- (void)testPositiveMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ @throw exception; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException().named(NSInvalidArgumentException));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\"));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}));\n\n    expectAction(^{ }).toNot(raiseException());\n}\n\n- (void)testPositiveMatchesWithBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n}\n\n- (void)testNegativeMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n\n    expectFailureMessage(@\"expected to raise any exception, got no exception\", ^{\n        expectAction(^{ }).to(raiseException());\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <foo>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(@\"foo\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <cakes>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"cakes\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{k = v;}>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"No food\").\n                              userInfo(@{@\"k\": @\"v\"}));\n    });\n\n    expectFailureMessage(@\"expected to not raise any exception, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\", ^{\n        expectAction(^{ [exception raise]; }).toNot(raiseException());\n    });\n}\n\n- (void)testNegativeMatchesWithPassingBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectFailureMessage(@\"expected to raise exception that satisfies block, got no exception\", ^{\n        expect(exception).to(raiseException().\n                             satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"LOL\"));\n        }));\n    });\n\n    NSString *outerFailureMessage = @\"expected to raise exception that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <foo> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(@\"foo\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <bar> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"bar\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n}\n\n- (void)testNegativeMatchesWithNegativeBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    NSString *outerFailureMessage;\n\n    NSString const *innerFailureMessage = @\"expected to equal <foo>, got <NSInvalidArgumentException>\";\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{key = value;}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{@\"key\": @\"value\"}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCSatisfyAnyOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSatisfyAnyOfTest : XCTestCase\n\n@end\n\n@implementation ObjCSatisfyAnyOfTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(satisfyAnyOf(equal(@2), equal(@3)));\n    expect(@2).toNot(satisfyAnyOf(equal(@3), equal(@16)));\n    expect(@[@1, @2, @3]).to(satisfyAnyOf(equal(@[@1, @2, @3]), allPass(beLessThan(@4))));\n    expect(@NO).to(satisfyAnyOf(beTrue(), beFalse()));\n    expect(@YES).to(satisfyAnyOf(beTrue(), beFalse()));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\", ^{\n        expect(@2).to(satisfyAnyOf(equal(@3), equal(@4), equal(@5)));\n    });\n    \n    expectFailureMessage(@\"expected to match one of: {all be less than <4>, but failed first at element\"\n                         \" <5> in <[5, 6, 7]>}, or {equal <(1, 2, 3, 4)>}, got (5,6,7)\", ^{\n                             expect(@[@5, @6, @7]).to(satisfyAnyOf(allPass(beLessThan(@4)), equal(@[@1, @2, @3, @4])));\n                         });\n    \n    expectFailureMessage(@\"satisfyAnyOf must be called with at least one matcher\", ^{\n        expect(@\"turtles\").to(satisfyAnyOf());\n    });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCSyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSyncTest : XCTestCase\n\n@end\n\n@implementation ObjCSyncTest\n\n- (void)testFailureExpectation {\n    expectFailureMessage(@\"fail() always fails\", ^{\n        fail();\n    });\n\n    expectFailureMessage(@\"This always fails\", ^{\n        failWithMessage(@\"This always fails\");\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjCUserDescriptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCUserDescriptionTest : XCTestCase\n\n@end\n\n@implementation ObjCUserDescriptionTest\n\n- (void)testToWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to equal <2>, got <1>\", ^{\n                             expect(@1).toWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).toNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testNotToWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).notToWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToEventuallyWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to eventually equal <2>, got <1>\", ^{\n                             expect(@1).toEventuallyWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToEventuallyNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toEventuallyNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToNotEventuallyWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toNotEventuallyWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/Tests/Nimble/objc/ObjcStringersTest.m",
    "content": "@import XCTest;\n@import Nimble;\n\n@interface ObjcStringersTest : XCTestCase\n\n@end\n\n@implementation ObjcStringersTest\n\n- (void)testItCanStringifyArrays {\n    NSArray *array = @[@1, @2, @3];\n    NSString *result = NMBStringify(array);\n    \n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItCanStringifyIndexSets {\n    NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n    NSString *result = NMBStringify(indexSet);\n\n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItRoundsLongDecimals {\n    NSNumber *num = @291.123782163;\n    NSString *result = NMBStringify(num);\n    \n    expect(result).to(equal(@\"291.1238\"));\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ndependencies:\n  pre:\n    - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n\ntest:\n  override:\n    - NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 ./test ios\n    - NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 ./test osx\n    - eval \"$(swiftenv init -)\"; ./test swiftpm:\n        environment:\n          SWIFTENV_ROOT: $HOME/.swiftenv\n          PATH: $SWIFTENV_ROOT/bin:$PATH\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Nimble\nPODSPEC=Nimble.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"---------------- Released as $VERSION_TAG ----------------\"\necho \n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for GitHub styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Nimble/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Nimble/test",
    "content": "#!/bin/bash\n\nGREEN=\"\\033[0;32m\"\nCLEAR=\"\\033[0m\"\n\nif which xcodebuild > /dev/null; then\n    echo -e \"Gathering ${GREEN}xcodebuild sdk versions${CLEAR}...\"\n    BUILD_DIR=`pwd`/build\n    LATEST_IOS_SDK_VERSION=`xcodebuild -showsdks | grep iphonesimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_TVOS_SDK_VERSION=`xcodebuild -showsdks | grep appletvsimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_OSX_SDK_VERSION=`xcodebuild -showsdks | grep 'macosx' | cut -d ' ' -f 3 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    BUILD_IOS_SDK_VERSION=${NIMBLE_BUILD_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    RUNTIME_IOS_SDK_VERSION=${NIMBLE_RUNTIME_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    BUILD_TVOS_SDK_VERSION=${NIMBLE_BUILD_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    RUNTIME_TVOS_SDK_VERSION=${NIMBLE_RUNTIME_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    BUILD_OSX_SDK_VERSION=${NIMBLE_BUILD_OSX_SDK_VERSION:-$LATEST_OSX_SDK_VERSION}\nfi\n\nset -e\n\nfunction color_if_overridden {\n    local actual=$1\n    local env_var=$2\n    if [ -z \"$env_var\" ]; then\n        printf \"$actual\"\n    else\n        printf \"$GREEN$actual$CLEAR\"\n    fi\n}\n\nfunction print_env {\n    echo \"=== Environment ===\"\n    echo \" iOS:\"\n    echo \"   Latest iOS SDK: $LATEST_IOS_SDK_VERSION\"\n    echo \"   Building with iOS SDK: `color_if_overridden $BUILD_IOS_SDK_VERSION $NIMBLE_BUILD_IOS_SDK_VERSION`\"\n    echo \"   Running with iOS SDK: `color_if_overridden $RUNTIME_IOS_SDK_VERSION $NIMBLE_RUNTIME_IOS_SDK_VERSION`\"\n    echo\n    echo \" tvOS:\"\n    echo \"   Latest tvOS SDK: $LATEST_TVOS_SDK_VERSION\"\n    echo \"   Building with tvOS SDK: `color_if_overridden $BUILD_TVOS_SDK_VERSION $NIMBLE_BUILD_TVOS_SDK_VERSION`\"\n    echo \"   Running with tvOS SDK: `color_if_overridden $RUNTIME_TVOS_SDK_VERSION $NIMBLE_RUNTIME_TVOS_SDK_VERSION`\"\n    echo\n    echo \" Mac OS X:\"\n    echo \"   Latest OS X SDK: $LATEST_OSX_SDK_VERSION\"\n    echo \"   Building with OS X SDK: `color_if_overridden $BUILD_OSX_SDK_VERSION $NIMBLE_BUILD_OSX_SDK_VERSION`\"\n    echo\n    echo \"======= END =======\"\n    echo\n}\n\nfunction run {\n    echo -e \"$GREEN==>$CLEAR $@\"\n    \"$@\"\n}\n\nfunction test_ios {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPad Air,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPhone 5s,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n}\n\nfunction test_tvos {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-tvOS\" -configuration \"Debug\" -sdk \"appletvsimulator$BUILD_TVOS_SDK_VERSION\" -destination \"name=Apple TV 1080p,OS=$RUNTIME_TVOS_SDK_VERSION\" build test\n}\n\nfunction test_osx {\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-OSX\" -configuration \"Debug\" -sdk \"macosx$BUILD_OSX_SDK_VERSION\" build test\n}\n\nfunction test_podspec {\n    echo \"Gathering CocoaPods installation information...\"\n    run bundle exec pod --version\n    echo \"Linting podspec...\"\n    run bundle exec pod lib lint Nimble.podspec\n}\n\nfunction test_swiftpm {\n    run swift build --clean && swift build && swift test\n}\n\nfunction test() {\n    test_ios\n    test_tvos\n    test_osx\n\n    if which swift-test; then\n        test_swiftpm\n    else\n        echo \"Not testing with the Swift Package Manager because swift-test is not installed\"\n    fi\n}\n\nfunction clean {\n    run rm -rf ~/Library/Developer/Xcode/DerivedData\\; true\n}\n\nfunction help {\n    echo \"Usage: $0 COMMANDS\"\n    echo\n    echo \"COMMANDS:\"\n    echo \" clean        - Cleans the derived data directory of Xcode. Assumes default location\"\n    echo \" ios          - Runs the tests as an iOS device\"\n    echo \" tvos         - Runs the tests as an tvOS device\"\n    echo \" osx          - Runs the tests on Mac OS X 10.10 (Yosemite and newer only)\"\n    echo \" podspec      - Runs pod lib lint against the podspec to detect breaking changes\"\n    echo \" all          - Runs the all tests of ios, tvos and osx\"\n    echo \" swiftpm      - Runs the tests built by the Swift Package Manager\"\n    echo \" help         - Displays this help\"\n    echo\n    exit 1\n}\n\nfunction main {\n    print_env\n    for arg in $@\n    do\n        case \"$arg\" in\n            clean) clean ;;\n            ios) test_ios ;;\n            tvos) test_tvos ;;\n            osx) test_osx ;;\n            podspec) test_podspec ;;\n            test) test ;;\n            all) test ;;\n            swiftpm) test_swiftpm ;;\n            help) help ;;\n        esac\n    done\n\n    if [ $# -eq 0 ]; then\n        clean\n        test\n    fi\n}\n\nmain $@\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/.gitignore",
    "content": "# Xcode\n#\n# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore\n\n## Build generated\nbuild/\nDerivedData\n\n## Various settings\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata\n\n## Other\n*.xccheckout\n*.moved-aside\n*.xcuserstate\n*.xcscmblueprint\n\n## Obj-C/Swift specific\n*.hmap\n*.ipa\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\nPackages/\n.build/\n\n# CocoaPods\n#\n# We recommend against adding the Pods directory to your .gitignore. However\n# you should judge for yourself, the pros and cons are mentioned at:\n# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control\n#\n# Pods/\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# fastlane\n#\n# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the\n# screenshots whenever they are needed.\n# For more information about the recommended setup visit:\n# https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md\n\nfastlane/report.xml\nfastlane/screenshots\n\n# Mac OS X\n.DS_Store\n\n# Quick\nQuick.framework.zip\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/.gitmodules",
    "content": "[submodule \"Externals/Nimble\"]\n\tpath = Externals/Nimble\n\turl = https://github.com/Quick/Nimble.git\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      env:\n        - PLATFORM=osx\n    - os: osx\n      env:\n        - PLATFORM=ios\n    - os: osx\n      env:\n        - PLATFORM=tvos\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=osx\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=ios\n    - os: osx\n      osx_image: xcode8\n      env:\n        - PLATFORM=tvos\n    - os: osx\n      sudo: required\n      env:\n        - PODSPEC=1\n    - os: osx\n      env: \n        - XCTOOL=1\n        - PLATFORM=osx\n    - os: osx\n      env: \n        - XCTOOL=1\n        - PLATFORM=ios\n    - os: osx\n      env: \n        - XCTOOL=1\n        - PLATFORM=tvos\n    - os: linux\n      env:\n        - PLATFORM=linux\n      sudo: required\n      dist: trusty\ninstall:\n  - if [[ \"$TRAVIS_OS_NAME\" == \"osx\"   ]]; then ./script/travis-install-osx;   fi\n  - if [[ \"$TRAVIS_OS_NAME\" == \"linux\" ]]; then ./script/travis-install-linux; fi\n  - if [[ \"$PODSPEC\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - if [[ \"$TRAVIS_OS_NAME\" == \"osx\"   ]]; then ./script/travis-script-osx;   fi\n  - if [[ \"$TRAVIS_OS_NAME\" == \"linux\" ]]; then ./script/travis-script-linux; fi\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](http://doctoc.herokuapp.com/)*\n\n- [Welcome to Quick!](#welcome-to-quick!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n  - [Creating a Release](#creating-a-release)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Quick!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nQuick should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Quick / Nimble (eg - v0.7.0 or git sha `7d0b8c21357839a8c5228863b77faecf709254a9`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- After cloning the repository, run `git submodule update --init` to pull the Nimble submodule.\n- Use `Quick.xcworkspace` to work on Quick. The workspace includes\n  Nimble, which is used in Quick's tests.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of both Quick\n  and Nimble pass before submitting your pull request. You can run all\n  the iOS and OS X unit tests using `rake`.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods. See `QuickSpec.m` for an example.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  Pull requests should be issued from personal forks. The Quick repo\n  should be reserved for long-running feature branches.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n## Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Quick/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/ArrangeActAssert.md",
    "content": "# Effective Tests Using XCTest: Arrange, Act, and Assert\n\nWhether you're using XCTest, Quick, or another testing framework, you can write\neffective unit tests by following a simple pattern:\n\n1. Arrange\n2. Act\n3. Assert\n\n## Using Arrange, Act, and Assert\n\nFor example, let's look at a simple class called `Banana`:\n\n```swift\n// Banana/Banana.swift\n\n/** A delicious banana. Tastes better if you peel it first. */\npublic class Banana {\n  private var isPeeled = false\n\n  /** Peels the banana. */\n  public func peel() {\n    isPeeled = true\n  }\n\n  /** You shouldn't eat a banana unless it's been peeled. */\n  public var isEdible: Bool {\n    return isPeeled\n  }\n}\n```\n\nLet's verify the `Banana.peel()` method does what it's supposed to:\n\n```swift\n// BananaTests/BananaTests.swift\n\nclass BananaTests: XCTestCase {\n  func testPeel() {\n    // Arrange: Create the banana we'll be peeling.\n    let banana = Banana()\n\n    // Act: Peel the banana.\n    banana.peel()\n\n    // Assert: Verify that the banana is now edible.\n    XCTAssertTrue(banana.isEdible)\n  }\n}\n```\n\n## Using Clear Test Names\n\nOur `testPeel()` makes sure that, if the `Banana.peel()` method ever\nstops working right, we'll know. This usually happens when our application\ncode changes, which either means:\n\n1. We accidentally broke our application code, so we have to fix the application code\n2. We changed how our application code works--maybe because we're adding a new\n   feature--so we have to change the test code\n\nIf our tests start breaking, how do we know which one of these cases applies? It might\nsurprise you that **the name of the test** is our best indication. Good test names:\n\n1. Are clear about what is being tested.\n2. Are clear about when the test should pass or fail.\n\nIs our `testPeel()` method clearly named? Let's make it clearer:\n\n```diff\n// BananaTests.swift\n\n-func testPeel() {\n+func testPeel_makesTheBananaEdible() {\n  // Arrange: Create the banana we'll be peeling.\n  let banana = Banana()\n\n  // Act: Peel the banana.\n  banana.peel()\n\n  // Assert: Verify that the banana is now edible.\n  XCTAssertTrue(banana.isEdible)\n}\n```\n\nThe new name:\n\n1. Is clear about what is being tested: `testPeel` indicates it's the `Banana.peel()` method.\n2. Is clear about when the test should pass: `makesTheBananaEdible` indicates the\n   banana is edible once the method has been called.\n\n## Testing Conditions\n\nLet's say we want to offer people bananas, using a function called `offer()`:\n\n```swift\n// Banana/Offer.swift\n\n/** Given a banana, returns a string that can be used to offer someone the banana. */\npublic func offer(banana: Banana) -> String {\n  if banana.isEdible {\n    return \"Hey, want a banana?\"\n  } else {\n    return \"Hey, want me to peel this banana for you?\"\n  }\n}\n```\n\nOur application code does one of two things:\n\n1. Either it offers a banana that's already been peeled...\n2. ...or it offers an unpeeled banana.\n\nLet's write tests for these two cases:\n\n```swift\n// BananaTests/OfferTests.swift\n\nclass OfferTests: XCTestCase {\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n    // Arrange: Create a banana and peel it.\n    let banana = Banana()\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n    // Arrange: Create a banana.\n    let banana = Banana()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\nOur test names clearly indicate the **conditions** under which our tests should pass:\nin the case that `whenTheBananaIsPeeled`, `offer()` should `offersTheBanana`. And if\nthe banana isn't peeled? Well, we have a test for that, too!\n\nNotice that we have one test per `if` statement in our application code.\nThis is a great pattern when writing tests: it makes sure every set of conditions\nis tested. If one of those conditions no longer works, or needs to be changed, we'll know\nexactly which test needs to be looked at.\n\n## Shorter \"Arrange\" Steps with `XCTestCase.setUp()`\n\nBoth of our `OfferTests` tests contain the same \"Arrange\" code: they both\ncreate a banana. We should move that code into a single place. Why?\n\n1. As-is, if we change the `Banana` initializer, we'll have to change every test that creates a banana.\n2. Our test methods will be shorter--which is a good thing if (and **only if**) that makes\n   the tests easier to read.\n\nLet's move the `Banana` initialization into the `XCTestCase.setUp()` method, which is called\nonce before every test method.\n\n```diff\n// OfferTests.swift\n\nclass OfferTests: XCTestCase {\n+  var banana: Banana!\n+\n+  override func setUp() {\n+    super.setUp()\n+    banana = Banana()\n+  }\n+\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n-    // Arrange: Create a banana and peel it.\n-    let banana = Banana()\n+    // Arrange: Peel the banana.\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n-    // Arrange: Create a banana.\n-    let banana = Banana()\n-\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n## Sharing \"Arrange\" Code Across Multiple Tests\n\nIf you find yourself using the same \"arrange\" steps across multiple tests,\nyou may want to define a helper function within your test target:\n\n```swift\n// BananaTests/BananaHelpers.swift\n\ninternal func createNewPeeledBanana() -> Banana {\n  let banana = Banana()\n  banana.peel()\n  return banana\n}\n```\n\n> Use a function to define your helpers: functions can't be subclassed, nor\n  can they retain any state. Subclassing and mutable state can make your tests\n  harder to read.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/BehavioralTesting.md",
    "content": "# Don't Test Code, Instead Verify Behavior\n\nTests should only fail if the application **behaves differently**.\nThey should test *what* the application code does, not *how* it does those things.\n\n- Tests that verify *what* an application does are **behavioral tests**.\n- Tests that break if the application code changes, even if the behavior\n  remains the same, are **brittle tests**.\n\nLet's say we have a banana database, called `GorillaDB`.\n`GorillaDB` is a key-value store for bananas. We can save bananas:\n\n```swift\nlet database = GorillaDB()\nlet banana = Banana()\ndatabase.save(banana: banana, key: \"my-banana\")\n```\n\nAnd we can restore bananas from disk later:\n\n```swift\nlet banana = database.load(key: \"my-banana\")\n```\n\n## Brittle Tests\n\nHow can we test this behavior? One way would be to check the size of the database\nafter we save a banana:\n\n```swift\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n  // Assert: The size of the database should have increased by one.\n  XCTAssertEqual(database.size, originalSize + 1)\n}\n```\n\n\nImagine, however, that the source code of `GorillaDB` changes. In order to make\nreading bananas from the database faster, it maintains a cache of the most frequently\nused bananas. `GorillaDB.size` grows as the size of the cache grows, and our test fails:\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/Screenshot_database_size_fail.png)\n\n## Behavioral Tests\n\nThe key to writing behavioral tests is determining exactly what you're expecting\nyour application code to do.\n\nIn the context of our `testSave_savesTheBananaToTheDatabase` test: what is the\nbehavior we expect when we \"save\" a banana to the database? \"Saving\" implies, to me,\nthat we can load it later. So instead of testing that the size of the database increases,\nwe should test that we can load a banana.\n\n```diff\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n-  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n-  // Assert: The size of the database should have increased by one.\n-  XCTAssertEqual(database.size, originalSize + 1)\n+  // Assert: The bananas saved to and loaded from the database should be the same.\n+  XCTAssertEqual(database.load(key: \"test-banana\"), banana)\n}\n```\n\nThe key to writing behavioral tests is asking:\n\n- What exactly should this application code do?\n- Is my test verifying *only* that behavior?\n  Or could it fail due to other aspects of how the code works?\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/ConfiguringQuick.md",
    "content": "# Configuring How Quick Behaves\n\nYou can customize how Quick behaves by subclassing `QuickConfiguration` and\noverriding the `QuickConfiguration.Type.configure()` class method:\n\n```swift\n// Swift\n\nimport Quick\n\nclass ProjectDataTestConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    // ...set options on the configuration object here.\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(ProjectDataTestConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  // ...set options on the configuration object here.\n}\n\nQuickConfigurationEnd\n```\n\nProjects may include several configurations. Quick does not make any\nguarantee about the order in which those configurations are executed.\n\n## Adding Global `beforeEach` and `afterEach` Closures\n\nUsing `QuickConfiguration.beforeEach` and `QuickConfiguration.afterEach`, you\ncan specify closures to be run before or after *every* example in a test suite:\n\n```swift\n// Swift\n\nimport Quick\nimport Sea\n\nclass FinConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach {\n      Dorsal.sharedFin().height = 0\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n#import \"Dorsal.h\"\n\nQuickConfigurationBegin(FinConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEach:^{\n    [Dorsal sharedFin].height = 0;\n  }];\n}\n\nQuickConfigurationEnd\n```\n\nIn addition, Quick allows you to access metadata regarding the current\nexample being run:\n\n```swift\n// Swift\n\nimport Quick\n\nclass SeaConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach { exampleMetadata in\n      // ...use the example metadata object to access the current example name, and more.\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(SeaConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEachWithMetadata:^(ExampleMetadata *data) {\n    // ...use the example metadata object to access the current example name, and more.\n  }];\n}\n\nQuickConfigurationEnd\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/InstallingFileTemplates.md",
    "content": "# Installing Quick File Templates\n\nThe Quick repository includes file templates for both Swift and\nObjective-C specs.\n\n## Alcatraz\n\nQuick templates can be installed via [Alcatraz](https://github.com/supermarin/Alcatraz),\na package manager for Xcode. Just search for the templates from the\nPackage Manager window.\n\n![](http://f.cl.ly/items/3T3q0G1j0b2t1V0M0T04/Screen%20Shot%202014-06-27%20at%202.01.10%20PM.png)\n\n## Manually via the Rakefile\n\nTo manually install the templates, just clone the repository and\nrun the `templates:install` rake task:\n\n```sh\n$ git clone git@github.com:Quick/Quick.git\n$ rake templates:install\n```\n\nUninstalling is easy, too:\n\n```sh\n$ rake templates:uninstall\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/InstallingQuick.md",
    "content": "# Installing Quick\n\n> **If you're using Xcode 7.1,** use the latest version of Quick--`v0.9.0` at the time of writing.\n> New releases are developed on the `swift-2.0` branch.\n\n\n\nQuick provides the syntax to define examples and example groups. Nimble\nprovides the `expect(...).to` assertion syntax. You may use either one,\nor both, in your tests.\n\nThere are three recommended ways of linking Quick to your tests:\n\n1. [Git Submodules](#git-submodules)\n2. [CocoaPods](#cocoapods)\n3. [Carthage](#carthage)\n4. [Swift Package Manager (experimental)](#swift-package-manager)\n\nChoose one and follow the instructions below. Once you've completed them,\nyou should be able to `import Quick` from within files in your test target.\n\n## Git Submodules\n\nTo link Quick and Nimble using Git submodules:\n\n1. Add submodule for Quick.\n2. If you don't already have a `.xcworkspace` for your project, create one. ([Here's how](https://developer.apple.com/library/ios/recipes/xcode_help-structure_navigator/articles/Adding_an_Existing_Project_to_a_Workspace.html))\n3. Add `Quick.xcodeproj` to your project's `.xcworkspace`.\n4. Add `Nimble.xcodeproj` to your project's `.xcworkspace`. It exists in `path/to/Quick/Externals/Nimble`. By adding Nimble from Quick's dependencies (as opposed to adding directly as a submodule), you'll ensure that you're using the correct version of Nimble for whatever version of Quick you're using.\n5. Link `Quick.framework` and `Nimble.framework` in your test target's\n   \"Link Binary with Libraries\" build phase.\n\nFirst, if you don't already have one, create a directory for your Git submodules.\nLet's assume you have a directory named `Vendor`.\n\n**Step One:** Download Quick and Nimble as Git submodules:\n\n```sh\ngit submodule add git@github.com:Quick/Quick.git Vendor/Quick\ngit submodule add git@github.com:Quick/Nimble.git Vendor/Nimble\ngit submodule update --init --recursive\n```\n\n**Step Two:** Add the `Quick.xcodeproj` and `Nimble.xcodeproj` files downloaded above to\nyour project's `.xcworkspace`. For example, this is `Guanaco.xcworkspace`, the\nworkspace for a project that is tested using Quick and Nimble:\n\n![](http://f.cl.ly/items/2b2R0e1h09003u2f0Z3U/Screen%20Shot%202015-02-27%20at%202.19.37%20PM.png)\n\n**Step Three:** Link the `Quick.framework` during your test target's\n`Link Binary with Libraries` build phase. You should see two\n`Quick.frameworks`; one is for OS X, and the other is for iOS.\n\n![](http://cl.ly/image/2L0G0H1a173C/Screen%20Shot%202014-06-08%20at%204.27.48%20AM.png)\n\nDo the same for the `Nimble.framework`, and you're done!\n\n**Updating the Submodules:** If you ever want to update the Quick\nor Nimble submodules to latest version, enter the Quick directory\nand pull from the master repository:\n\n```sh\ncd /path/to/your/project/Vendor/Quick\ngit checkout master\ngit pull --rebase origin master\n```\n\nYour Git repository will track changes to submodules. You'll want to\ncommit the fact that you've updated the Quick submodule:\n\n```sh\ncd /path/to/your/project\ngit commit -m \"Updated Quick submodule\"\n```\n\n**Cloning a Repository that Includes a Quick Submodule:** After other people\nclone your repository, they'll have to pull down the submodules as well.\nThey can do so by running the `git submodule update` command:\n\n```sh\ngit submodule update --init --recursive\n```\n\nYou can read more about Git submodules [here](http://git-scm.com/book/en/Git-Tools-Submodules).\n\n## CocoaPods\n\nFirst, update CocoaPods to Version 0.36.0 or newer, which is necessary to install CocoaPods using Swift.\n\nThen, add Quick and Nimble to your Podfile. Additionally, the ```use_frameworks!``` line is necessary for using Swift in CocoaPods:\n\n```rb\n\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick'\n    pod 'Nimble'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\nFinally, download and link Quick and Nimble to your tests:\n\n```sh\npod install\n```\n\n### Using Swift 1.2?\n\nThe latest release of Quick (0.4.0) is for Swift 2 (Xcode 7), but the latest Nimble (1.0.0) is for Swift 1.2 (Xcode 6).\n\nIf you want Xcode 6 do:\n\n```sh\ntarget 'MyTests' do\n  use_frameworks!\n  pod 'Quick', '~>0.3.0'\n  pod 'Nimble', '~>1.0.0'\nend\n```\n\n## [Carthage](https://github.com/Carthage/Carthage)\n\nAs test targets do not have the \"Embedded Binaries\" section, the frameworks must\nbe added to the target's \"Link Binary With Libraries\" as well as a \"Copy Files\" build phase\nto copy them to the target's Frameworks destination.\n\n > As Carthage builds dynamic frameworks, you will need a valid code signing identity set up.\n\n1. Add Quick to your [`Cartfile.private`](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfileprivate):\n\n    ```\n    github \"Quick/Quick\"\n    github \"Quick/Nimble\"\n    ```\n\n2. Run `carthage update`.\n3. From your `Carthage/Build/[platform]/` directory, add both Quick and Nimble to your test target's \"Link Binary With Libraries\" build phase:\n    ![](http://i.imgur.com/pBkDDk5.png)\n\n4. For your test target, create a new build phase of type \"Copy Files\":\n    ![](http://i.imgur.com/jZATIjQ.png)\n\n5. Set the \"Destination\" to \"Frameworks\", then add both frameworks:\n    ![](http://i.imgur.com/rpnyWGH.png)\n\nThis is not \"the one and only way\" to use Carthage to manage dependencies.\nFor further reference check out the [Carthage documentation](https://github.com/Carthage/Carthage/blob/master/README.md).\n\n## [Swift Package Manager](https://github.com/apple/swift-package-manager)\nWith the advent of the [swift.org](https://swift.org) open-source project, Swift now has an official, though nascent, package manager tool. Notably, this provides the possibility of using Quick on non-Apple platforms for the first time. Initial steps have been taken to allow using Quick to test projects using the Swift Package Manager, although frequent breakage is expected at this point since the tool is still under heavy development.\n\nUntil further documentation has been written, the following repository may be useful as an example of how Quick can be declared as a dependency in a `Package.swift` file for SwiftPM:\n\nhttps://github.com/Quick/QuickOnLinuxExample\n\n### (Not Recommended) Running Quick Specs on a Physical iOS Device\n\nIn order to run specs written in Quick on device, you need to add `Quick.framework` and\n`Nimble.framework` as `Embedded Binaries` to the `Host Application` of the\ntest target. After adding a framework as an embedded binary, Xcode will\nautomatically link the host app against the framework.\n\n![](http://indiedev.kapsi.fi/images/embed-in-host.png)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/MoreResources.md",
    "content": "# More Resources\n\n## Examples of Quick Specs\n\nQuick is used by many companies, open-source projects, and individuals,\nincluding [GitHub](https://github.com/github) and\n[ReactiveCocoa](https://github.com/ReactiveCocoa). For examples, check out:\n\n- https://github.com/ReactiveCocoa/ReactiveCocoa\n- https://github.com/github/Archimedes\n- https://github.com/libgit2/objective-git\n- https://github.com/jspahrsummers/RXSwift\n- https://github.com/artsy/eidolon\n- https://github.com/AshFurrow/Moya\n- https://github.com/nerdyc/Squeal\n- https://github.com/pepibumur/SugarRecord\n\n## More on Unit Testing for OS X and iOS Apps\n\n- **[Quality Coding](http://qualitycoding.org/)**:\n  A blog on iOS development that focuses on unit testing.\n- **[OCMock Tutorials](http://ocmock.org/support/)**:\n  Use OCMock when you need \"fake objects\" in your tests.\n- **[Nocilla: Stunning HTTP stubbing for iOS and Mac OS X](https://github.com/luisobo/Nocilla)**:\n  Use this library to test code that sends requests to, and receives responses from, the Internet.\n- **[Pivotal Labs: Writing Beautiful Specs with Jasmine Custom Matchers](http://pivotallabs.com/writing-beautiful-specs-jasmine-custom-matchers/)**:\n  See [the Nimble documentation](https://github.com/Quick/Nimble) for instructions on how to write\n  custom matchers in Nimble.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/NimbleAssertions.md",
    "content": "# Clearer Tests Using Nimble Assertions\n\nWhen code doesn't work the way it's supposed to, unit tests should make it\n**clear** exactly what's wrong.\n\nTake the following function which, given a bunch of monkeys, only returns\nthe silly monkeys in the bunch:\n\n```swift\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n  return monkeys.filter { $0.silliness == .VerySilly }\n}\n```\n\nNow let's say we have a unit test for this function:\n\n```swift\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n  XCTAssertTrue(contains(sillyMonkeys, kiki))\n}\n```\n\nThe test fails with the following failure message:\n\n```\nXCTAssertTrue failed\n```\n\n![](http://f.cl.ly/items/1G17453p47090y30203d/Screen%20Shot%202015-02-26%20at%209.08.27%20AM.png)\n\nThe failure message leaves a lot to be desired. It leaves us wondering,\n\"OK, so something that should have been true was false--but what?\"\nThat confusion slows us down, since we now have to spend time deciphering test code.\n\n## Better Failure Messages, Part 1: Manually Providing `XCTAssert` Failure Messages\n\n`XCTAssert` assertions allow us to specify a failure message of our own, which certainly helps:\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki))\n+  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n}\n```\n\nBut we have to write our own failure message.\n\n## Better Failure Messages, Part 2: Nimble Failure Messages\n\nNimble makes your test assertions, and their failure messages, easier to read:\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n+  expect(sillyMonkeys).to(contain(kiki))\n}\n```\n\nWe don't have to write our own failure message--the one provided by Nimble\nis already very readable:\n\n```\nexpected to contain <Monkey(name: Kiki, sillines: ExtremelySilly)>,\n                got <[Monkey(name: Jane, silliness: VerySilly)]>\n```\n\n![](http://f.cl.ly/items/3N2e3g2K3W123b1L1J0G/Screen%20Shot%202015-02-26%20at%2011.27.02%20AM.png)\n\nThe failure message makes it clear what's wrong: we were expecting `kiki` to be included\nin the result of `silliest()`, but the result only contains `jane`. Now that we know\nexactly what's wrong, it's easy to fix the issue:\n\n```diff\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n-  return monkeys.filter { $0.silliness == .VerySilly }\n+  return monkeys.filter { $0.silliness == .VerySilly || $0.silliness == .ExtremelySilly }\n}\n```\n\nNimble provides many different kind of assertions, each with great failure\nmessages. And unlike `XCTAssert`, you don't have to type your own failure message\nevery time.\n\nFor the full list of Nimble assertions, check out the [Nimble README](https://github.com/Quick/Nimble).\nBelow is just a sample, to whet your appetite:\n\n```swift\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/QuickExamplesAndGroups.md",
    "content": "# Organized Tests with Quick Examples and Example Groups\n\nQuick uses a special syntax to define **examples** and **example groups**.\n\nIn *[Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md)*,\nwe learned that a good test method name is crucial--when a test starts failing, it's\nthe best way to determine whether we have to fix the application code or update the test.\n\nQuick examples and example groups serve two purposes:\n\n1. They encourage you to write descriptive test names.\n2. They greatly simplify the test code in the \"arrange\" step of your tests.\n\n## Examples Using `it`\n\nExamples, defined with the `it` function, use assertions to demonstrate\nhow code should behave. These are like test methods in XCTest.\n\n`it` takes two parameters: the name of the example, and a closure.\nThe examples below specify how the `Sea.Dolphin` class should behave.\nA new dolphin should be smart and friendly:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport Sea\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    it(\"is friendly\") {\n      expect(Dolphin().isFriendly).to(beTruthy())\n    }\n\n    it(\"is smart\") {\n      expect(Dolphin().isSmart).to(beTruthy())\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\nit(@\"is friendly\", ^{\n  expect(@([[Dolphin new] isFriendly])).to(beTruthy());\n});\n\nit(@\"is smart\", ^{\n  expect(@([[Dolphin new] isSmart])).to(beTruthy());\n});\n\nQuickSpecEnd\n```\n\nUse descriptions to make it clear what your examples are testing.\nDescriptions can be of any length and use any character, including\ncharacters from languages besides English, or even emoji! :v: :sunglasses:\n\n## Example Groups Using `describe` and `context`\n\nExample groups are logical groupings of examples. Example groups can share\nsetup and teardown code.\n\n### Describing Classes and Methods Using `describe`\n\nTo specify the behavior of the `Dolphin` class's `click` method--in\nother words, to test the method works--several `it` examples can be\ngrouped together using the `describe` function. Grouping similar\nexamples together makes the spec easier to read:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      describe(\"its click\") {\n        it(\"is loud\") {\n          let click = Dolphin().click()\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          let click = Dolphin().click()\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  describe(@\"its click\", ^{\n    it(@\"is loud\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nWhen these two examples are run in Xcode, they'll display the\ndescription from the `describe` and `it` functions:\n\n1. `DolphinSpec.a_dolphin_its_click_is_loud`\n2. `DolphinSpec.a_dolphin_its_click_has_a_high_frequency`\n\nAgain, it's clear what each of these examples is testing.\n\n### Sharing Setup/Teardown Code Using `beforeEach` and `afterEach`\n\nExample groups don't just make the examples clearer, they're also useful\nfor sharing setup and teardown code among examples in a group.\n\nIn the example below, the `beforeEach` function is used to create a brand\nnew instance of a dolphin and its click before each example in the group.\nThis ensures that both are in a \"fresh\" state for every example:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach {\n        dolphin = Dolphin()\n      }\n\n      describe(\"its click\") {\n        var click: Click!\n        beforeEach {\n          click = dolphin.click()\n        }\n\n        it(\"is loud\") {\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{\n      dolphin = [Dolphin new];\n  });\n\n  describe(@\"its click\", ^{\n    __block Click *click = nil;\n    beforeEach(^{\n      click = [dolphin click];\n    });\n\n    it(@\"is loud\", ^{\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nSharing setup like this might not seem like a big deal with the\ndolphin example, but for more complicated objects, it saves a lot\nof typing!\n\nTo execute code *after* each example, use `afterEach`.\n\n### Specifying Conditional Behavior Using `context`\n\nDolphins use clicks for echolocation. When they approach something\nparticularly interesting to them, they release a series of clicks in\norder to get a better idea of what it is.\n\nThe tests need to show that the `click` method behaves differently in\ndifferent circumstances. Normally, the dolphin just clicks once. But when\nthe dolphin is close to something interesting, it clicks several times.\n\nThis can be expressed using `context` functions: one `context` for the\nnormal case, and one `context` for when the dolphin is close to\nsomething interesting:\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach { dolphin = Dolphin() }\n\n      describe(\"its click\") {\n        context(\"when the dolphin is not near anything interesting\") {\n          it(\"is only emitted once\") {\n            expect(dolphin!.click().count).to(equal(1))\n          }\n        }\n\n        context(\"when the dolphin is near something interesting\") {\n          beforeEach {\n            let ship = SunkenShip()\n            Jamaica.dolphinCove.add(ship)\n            Jamaica.dolphinCove.add(dolphin)\n          }\n\n          it(\"is emitted three times\") {\n            expect(dolphin.click().count).to(equal(3))\n          }\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{ dolphin = [Dolphin new]; });\n\n  describe(@\"its click\", ^{\n    context(@\"when the dolphin is not near anything interesting\", ^{\n      it(@\"is only emitted once\", ^{\n        expect(@([[dolphin click] count])).to(equal(@1));\n      });\n    });\n\n    context(@\"when the dolphin is near something interesting\", ^{\n      beforeEach(^{\n        [[Jamaica dolphinCove] add:[SunkenShip new]];\n        [[Jamaica dolphinCove] add:dolphin];\n      });\n\n      it(@\"is emitted three times\", ^{\n        expect(@([[dolphin click] count])).to(equal(@3));\n      });\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nStrictly speaking, the `context` keyword is a synonym for `describe`, \nbut thoughtful use will make your spec easier to understand.\n\n### Test Readability: Quick and XCTest\n\nIn [Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md),\nwe looked at how one test per condition was a great way to organize test code.\nIn XCTest, that leads to long test method names:\n\n```swift\nfunc testDolphin_click_whenTheDolphinIsNearSomethingInteresting_isEmittedThreeTimes() {\n  // ...\n}\n```\n\nUsing Quick, the conditions are much easier to read, and we can perform setup\nfor each example group:\n\n```swift\ndescribe(\"a dolphin\") {\n  describe(\"its click\") {\n    context(\"when the dolphin is near something interesting\") {\n      it(\"is emitted three times\") {\n        // ...\n      }\n    }\n  }\n}\n```\n\n## Temporarily Disabling Examples or Groups\n\nYou can temporarily disable examples or example groups that don't pass yet.\nThe names of the examples will be printed out along with the test results,\nbut they won't be run.\n\nYou can disable an example or group by prepending `x`:\n\n```swift\n// Swift\n\nxdescribe(\"its click\") {\n  // ...none of the code in this closure will be run.\n}\n\nxcontext(\"when the dolphin is not near anything interesting\") {\n  // ...none of the code in this closure will be run.\n}\n\nxit(\"is only emitted once\") {\n  // ...none of the code in this closure will be run.\n}\n```\n\n```objc\n// Objective-C\n\nxdescribe(@\"its click\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxcontext(@\"when the dolphin is not near anything interesting\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxit(@\"is only emitted once\", ^{\n  // ...none of the code in this closure will be run.\n});\n```\n\n## Temporarily Running a Subset of Focused Examples\n\nSometimes it helps to focus on only one or a few examples. Running one\nor two examples is faster than the entire suite, after all. You can\nrun only one or two by using the `fit` function. You can also focus a\ngroup of examples using `fdescribe` or `fcontext`:\n\n```swift\nfit(\"is loud\") {\n  // ...only this focused example will be run.\n}\n\nit(\"has a high frequency\") {\n  // ...this example is not focused, and will not be run.\n}\n\nfcontext(\"when the dolphin is near something interesting\") {\n  // ...examples in this group are also focused, so they'll be run.\n}\n```\n\n```objc\nfit(@\"is loud\", {\n  // ...only this focused example will be run.\n});\n\nit(@\"has a high frequency\", ^{\n  // ...this example is not focused, and will not be run.\n});\n\nfcontext(@\"when the dolphin is near something interesting\", ^{\n  // ...examples in this group are also focused, so they'll be run.\n});\n```\n\n## Global Setup/Teardown Using `beforeSuite` and `afterSuite`\n\nSome test setup needs to be performed before *any* examples are\nrun. For these cases, use `beforeSuite` and `afterSuite`.\n\nIn the example below, a database of all the creatures in the ocean is\ncreated before any examples are run. That database is torn down once all\nthe examples have finished:\n\n```swift\n// Swift\n\nimport Quick\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    beforeSuite {\n      OceanDatabase.createDatabase(name: \"test.db\")\n      OceanDatabase.connectToDatabase(name: \"test.db\")\n    }\n\n    afterSuite {\n      OceanDatabase.teardownDatabase(name: \"test.db\")\n    }\n\n    describe(\"a dolphin\") {\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n\nbeforeSuite(^{\n  [OceanDatabase createDatabase:@\"test.db\"];\n  [OceanDatabase connectToDatabase:@\"test.db\"];\n});\n\nafterSuite(^{\n  [OceanDatabase teardownDatabase:@\"test.db\"];\n});\n\ndescribe(@\"a dolphin\", ^{\n  // ...\n});\n\nQuickSpecEnd\n```\n\nYou can specify as many `beforeSuite` and `afterSuite` as you like. All\n`beforeSuite` closures will be executed before any tests run, and all\n`afterSuite` closures will be executed after all the tests are finished.\nThere is no guarantee as to what order these closures will be executed in.\n\n## Accessing Metadata for the Current Example\n\nThere may be some cases in which you'd like the know the name of the example\nthat is currently being run, or how many have been run so far. Quick provides\naccess to this metadata in `beforeEach` and `afterEach` closures.\n\n```swift\nbeforeEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) is about to be run.\")\n}\n\nafterEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) has run.\")\n}\n```\n\n```objc\nbeforeEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l is about to be run.\", (long)exampleMetadata.exampleIndex);\n});\n\nafterEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l has run.\", (long)exampleMetadata.exampleIndex);\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/QuickInObjectiveC.md",
    "content": "# Using Quick in Objective-C\n\nQuick works equally well in both Swift and Objective-C.\n\nThere are two notes to keep in mind when using Quick in Objective-C,\nhowever, which are described below.\n\n## The Optional Shorthand Syntax\n\nImporting Quick in an Objective-C file defines macros named `it` and\n`itShouldBehaveLike`, as well as functions like `context()` and `describe()`.\n\nIf the project you are testing also defines symbols with these names, you may\nencounter confusing build failures. In that case, you can avoid namespace\ncollision by turning off Quick's optional \"shorthand\" syntax:\n\n```objc\n#define QUICK_DISABLE_SHORT_SYNTAX 1\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n// ...\nQuickSpecEnd\n```\n\nYou must define the `QUICK_DISABLE_SHORT_SYNTAX` macro *before*\nimporting the Quick header.\n\nAlternatively, you may define the macro in your test target's build configuration:\n\n![](http://d.twobitlabs.com/VFEamhvixX.png)\n\n## Your Test Target Must Include At Least One Swift File\n\nThe Swift stdlib will not be linked into your test target, and thus\nQuick will fail to execute properly, if your test target does not contain\n*at least one* Swift file.\n\nWithout at least one Swift file, your tests will exit prematurely with\nthe following error:\n\n```\n*** Test session exited(82) without checking in. Executable cannot be\nloaded for some other reason, such as a problem with a library it\ndepends on or a code signature/entitlements mismatch.\n```\n\nTo fix the problem, add a blank file called `SwiftSpec.swift` to your test target:\n\n```swift\n// SwiftSpec.swift\n\nimport Quick\n```\n\n> For more details on this issue, see https://github.com/Quick/Quick/issues/164.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/README.md",
    "content": "# Documentation\n\nQuick helps you verify how your Swift and Objective-C programs behave.\nDoing so effectively isn't just a matter of knowing how to use Quick,\nhowever. The guides in this directory can help you write\neffective tests--not just using Quick, but even XCTest or other testing\nframeworks.\n\nEach guide covers a particular topic. If you're completely new to unit\ntesting, consider reading them in the order they're introduced below:\n\n- **[Setting Up Tests in Your Xcode Project](SettingUpYourXcodeProject.md)**:\n  Read this if you're having trouble using your application code from within\n  your test files.\n- **[Effective Tests Using XCTest: Arrange, Act, and Assert](ArrangeActAssert.md)**:\n  Read this to learn how to write `XCTestCase` tests that will help you write\n  code faster and more effectively.\n- **[Don't Test Code, Instead Verify Behavior](BehavioralTesting.md)**:\n  Read this to learn what kinds of tests speed you up, and which ones will only end up\n  slowing you down.\n- **[Clearer Tests Using Nimble Assertions](NimbleAssertions.md)**:\n  Read this to learn how to use Nimble to generate better failure messages.\n  Better failure messages help you move faster, by spending less time figuring out why\n  a test failed.\n- **[Organized Tests with Quick Examples and Example Groups](QuickExamplesAndGroups.md)**:\n  Read this to learn how Quick can help you write even more effective tests, using\n  *examples* and *example groups*.\n- **[Testing OS X and iOS Applications](TestingApps.md)**:\n  Read this to learn more about testing code that uses the AppKit and UIKit frameworks.\n- **[Reducing Test Boilerplate with Shared Assertions](SharedExamples.md)**:\n  Read this to learn how to share sets of assertions among your tests.\n- **[Configuring How Quick Behaves](ConfiguringQuick.md)**:\n  Read this to learn how you can change how Quick behaves when running your test suite.\n- **[Using Quick in Objective-C](QuickInObjectiveC.md)**:\n  Read this if you experience trouble using Quick in Objective-C.\n- **[Installing Quick](InstallingQuick.md)**:\n  Read this for instructions on how to add Quick to your project, using\n  Git submodules, CocoaPods, Carthage, or the Swift Package Manager.\n- **[Installing Quick File Templates](InstallingFileTemplates.md)**:\n  Read this to learn how to install file templates that make writing Quick specs faster.\n- **[More Resources](MoreResources.md)**\n  A list of additional resources on OS X and iOS testing.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/SettingUpYourXcodeProject.md",
    "content": "# Setting Up Tests in Your Xcode Project\n\nWith the exception of the Command Line Tool project type, when you create a new project in Xcode 7, a unit test target is included\nby default. [See specific instructions for a Command Line Tool Project](#setting-up-a-test-target-for-a-command-line-tool-project). To write unit tests, you'll need to be able to use your main\ntarget's code from within your test target. \n\n## Testing Swift Code Using Swift\n\nIn order to test code written in Swift, you'll need to do two things:\n\n1. Set \"defines module\" in your `.xcodeproj` to `YES`.\n\n  * To do this in Xcode: Choose your project, then \"Build Settings\" header, then \"Defines Modules\" line, then select \"Yes\".\n\n2. `@testable import YourAppModuleName` in your unit tests. This will expose Any `public` and `internal` (the default)\n   symbols to your tests. `private` symbols are still unavailable.\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> Some developers advocate adding Swift source files to your test target.\nHowever, this leads to [subtle, hard-to-diagnose\nerrors](https://github.com/Quick/Quick/issues/91), and is not\nrecommended.\n\n## Testing Objective-C Code Using Swift\n\n1. Add a bridging header to your test target.\n2. In the bridging header, import the file containing the code you'd like to test.\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\nYou can now use the code from `MyClass.h` in your Swift test files.\n\n## Testing Swift Code Using Objective-C\n\n1. Bridge Swift classes and functions you'd like to test to Objective-C by\n   using the `@objc` attribute.\n2. Import your module's Swift headers in your unit tests.\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## Testing Objective-C Code Using Objective-C\n\nImport the file defining the code you'd like to test from within your test target:\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### Setting Up a Test Target for a Command Line Tool Project\n\n1. Add a target to your project in the project pane.\n2. Select \"OS X Unit Testing Bundle\".\n3. Edit the scheme of your main target.\n4. Select the \"Test\" node, click the \"+\" under the \"Info\" heading, and select\n   your testing bundle.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/SharedExamples.md",
    "content": "# Reducing Test Boilerplate with Shared Assertions\n\nIn some cases, the same set of specifications apply to multiple objects.\n\nFor example, consider a protocol called `Edible`. When a dolphin\neats something `Edible`, the dolphin becomes happy. `Mackerel` and\n`Cod` are both edible. Quick allows you to easily test that a dolphin is\nhappy to eat either one.\n\nThe example below defines a set of  \"shared examples\" for \"something edible\",\nand specifies that both mackerel and cod behave like \"something edible\":\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass EdibleSharedExamplesConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    sharedExamples(\"something edible\") { (sharedExampleContext: SharedExampleContext) in\n      it(\"makes dolphins happy\") {\n        let dolphin = Dolphin(happy: false)\n        let edible = sharedExampleContext()[\"edible\"]\n        dolphin.eat(edible)\n        expect(dolphin.isHappy).to(beTruthy())\n      }\n    }\n  }\n}\n\nclass MackerelSpec: QuickSpec {\n  override func spec() {\n    var mackerel: Mackerel!\n    beforeEach {\n      mackerel = Mackerel()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": mackerel] }\n  }\n}\n\nclass CodSpec: QuickSpec {\n  override func spec() {\n    var cod: Cod!\n    beforeEach {\n      cod = Cod()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": cod] }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickConfigurationBegin(EdibleSharedExamplesConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  sharedExamples(@\"something edible\", ^(QCKDSLSharedExampleContext exampleContext) {\n    it(@\"makes dolphins happy\") {\n      Dolphin *dolphin = [[Dolphin alloc] init];\n      dolphin.happy = NO;\n      id<Edible> edible = exampleContext()[@\"edible\"];\n      [dolphin eat:edible];\n      expect(dolphin.isHappy).to(beTruthy())\n    }\n  });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(MackerelSpec)\n\n__block Mackerel *mackerel = nil;\nbeforeEach(^{\n  mackerel = [[Mackerel alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": mackerel }; });\n\nQuickSpecEnd\n\nQuickSpecBegin(CodSpec)\n\n__block Mackerel *cod = nil;\nbeforeEach(^{\n  cod = [[Cod alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": cod }; });\n\nQuickSpecEnd\n```\n\nShared examples can include any number of `it`, `context`, and\n`describe` blocks. They save a *lot* of typing when running\nthe same tests against several different kinds of objects.\n\nIn some cases, you won't need any additional context. In Swift, you can\nsimply use `sharedExamples` closures that take no parameters. This\nmight be useful when testing some sort of global state:\n\n```swift\n// Swift\n\nimport Quick\n\nsharedExamples(\"everything under the sea\") {\n  // ...\n}\n\nitBehavesLike(\"everything under the sea\")\n```\n\n> In Objective-C, you'll have to pass a block that takes a\n  `QCKDSLSharedExampleContext`, even if you don't plan on using that\n  argument. Sorry, but that's the way the cookie crumbles!\n  :cookie: :bomb:\n\nYou can also \"focus\" shared examples using the `fitBehavesLike` function.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/en-us/TestingApps.md",
    "content": "# Testing OS X and iOS Applications\n\n*[Setting Up Tests in Your Xcode Project](SettingUpYourXcodeProject.md)*\ncovers everything you need to know to test any Objective-C or Swift function or class.\nIn this section, we'll go over a few additional hints for testing\nclasses like `UIViewController` subclasses.\n\n> You can see a short lightning talk covering most of these topics\n  [here](https://vimeo.com/115671189#t=37m50s) (the talk begins at 37'50\").\n\n## Triggering `UIViewController` Lifecycle Events\n\nNormally, UIKit triggers lifecycle events for your view controller as it's\npresented within the app. When testing a `UIViewController`, however, you'll\nneed to trigger these yourself. You can do so in one of three ways:\n\n1. Accessing `UIViewController.view`, which triggers things like `UIViewController.viewDidLoad()`.\n2. Use `UIViewController.beginAppearanceTransition()` to trigger most lifecycle events.\n3. Directly calling methods like `UIViewController.viewDidLoad()` or `UIViewController.viewWillAppear()`.\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport BananaApp\n\nclass BananaViewControllerSpec: QuickSpec {\n  override func spec() {\n    var viewController: BananaViewController!\n    beforeEach {\n      viewController = BananaViewController()\n    }\n\n    describe(\".viewDidLoad()\") {\n      beforeEach {\n        // Method #1: Access the view to trigger BananaViewController.viewDidLoad().\n        let _ =  viewController.view\n      }\n\n      it(\"sets the banana count label to zero\") {\n        // Since the label is only initialized when the view is loaded, this\n        // would fail if we didn't access the view in the `beforeEach` above.\n        expect(viewController.bananaCountLabel.text).to(equal(\"0\"))\n      }\n    }\n\n    describe(\"the view\") {\n      beforeEach {\n        // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n        viewController.beginAppearanceTransition(true, animated: false)\n        viewController.endAppearanceTransition()\n      }\n      // ...\n    }\n\n    describe(\".viewWillDisappear()\") {\n      beforeEach {\n        // Method #3: Directly call the lifecycle event.\n        viewController.viewWillDisappear(false)\n      }\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n#import \"BananaViewController.h\"\n\nQuickSpecBegin(BananaViewControllerSpec)\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  viewController = [[BananaViewController alloc] init];\n});\n\ndescribe(@\"-viewDidLoad\", ^{\n  beforeEach(^{\n    // Method #1: Access the view to trigger -[BananaViewController viewDidLoad].\n    [viewController view];\n  });\n\n  it(@\"sets the banana count label to zero\", ^{\n    // Since the label is only initialized when the view is loaded, this\n    // would fail if we didn't access the view in the `beforeEach` above.\n    expect(viewController.bananaCountLabel.text).to(equal(@\"0\"))\n  });\n});\n\ndescribe(@\"the view\", ^{\n  beforeEach(^{\n    // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n    [viewController beginAppearanceTransition:YES animated:NO];\n    [viewController endAppearanceTransition];\n  });\n  // ...\n});\n\ndescribe(@\"-viewWillDisappear\", ^{\n  beforeEach(^{\n    // Method #3: Directly call the lifecycle event.\n    [viewController viewWillDisappear:NO];\n  });\n  // ...\n});\n\nQuickSpecEnd\n```\n\n## Initializing View Controllers Defined in Storyboards\n\nTo initialize view controllers defined in a storyboard, you'll need to assign\na **Storyboard ID** to the view controller:\n\n![](http://f.cl.ly/items/2X2G381K1h1l2B2Q0g3L/Screen%20Shot%202015-02-27%20at%2011.58.06%20AM.png)\n\nOnce you've done so, you can instantiate the view controller from within your tests:\n\n```swift\n// Swift\n\nvar viewController: BananaViewController!\nbeforeEach {\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  let storyboard = UIStoryboard(name: \"Main\", bundle: nil)\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = \n    storyboard.instantiateViewControllerWithIdentifier(\n      \"BananaViewControllerID\") as! BananaViewController\n}\n```\n\n```objc\n// Objective-C\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@\"Main\" bundle:nil];\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = [storyboard instantiateViewControllerWithIdentifier:@\"BananaViewControllerID\"];\n});\n```\n\n## Triggering UIControl Events Like Button Taps\n\nButtons and other UIKit classes inherit from `UIControl`, which defines methods\nthat allow us to send control events, like button taps, programmatically.\nTo test behavior that occurs when a button is tapped, you can write:\n\n```swift\n// Swift\n\ndescribe(\"the 'more bananas' button\") {\n  it(\"increments the banana count label when tapped\") {\n    viewController.moreButton.sendActionsForControlEvents(\n      UIControlEvents.TouchUpInside)\n    expect(viewController.bananaCountLabel.text).to(equal(\"1\"))\n  }\n}\n```\n\n```objc\n// Objective-C\n\ndescribe(@\"the 'more bananas' button\", ^{\n  it(@\"increments the banana count label when tapped\", ^{\n    [viewController.moreButton sendActionsForControlEvents:UIControlEventTouchUpInside];\n    expect(viewController.bananaCountLabel.text).to(equal(@\"1\"));\n  });\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/ArrangeActAssert.md",
    "content": "# Effective Tests Using XCTest: Arrange, Act, and Assert\n\nXCTest や Quick に限らず、テストフレームワークを使用する際、このパターンに従うことで効率的なユニットテストを書くことができます。\n\n1. Arrange(環境構築)\n2. Act(実行)\n3. Assert(動作確認)\n\n## パターンに従ってテストを書く\n\n例として Banana クラスを用意します。\n\n```swift\n// Banana/Banana.swift\n\n/** A delicious banana. Tastes better if you peel it first. */\npublic class Banana {\n  private var isPeeled = false\n\n  /** Peels the banana. */\n  public func peel() {\n    isPeeled = true\n  }\n\n  /** You shouldn't eat a banana unless it's been peeled. */\n  public var isEdible: Bool {\n    return isPeeled\n  }\n}\n```\n\nここでは `Banana.peel()` のテストをしてみましょう。このメソッドの期待する振る舞いはこのようになります。\n\n```swift\n// BananaTests/BananaTests.swift\n\nclass BananaTests: XCTestCase {\n  func testPeel() {\n    // Arrange: Create the banana we'll be peeling.\n    let banana = Banana()\n\n    // Act: Peel the banana.\n    banana.peel()\n\n    // Assert: Verify that the banana is now edible.\n    XCTAssertTrue(banana.isEdible)\n  }\n}\n```\n\n## 簡潔なテスト名を用いる\n\nこの `testPeel()` テストのおかげで `Banana.peel()` が正しく動作しない場合、すぐ気付くことができます。\n我々のアプリケーションコードを変更することで正しく動作しないケース(テストが失敗するケース)はしばしば起こります。\nテストが失敗する場合は下記どちらかのケースになります。\n\n1. 間違えてアプリケーションコードを壊してしまっているため、直す必要がある\n2. アプリケーションコードは期待したとおりに動いているが、もともと期待した機能が変わっているためテストコードを直す必要がある\n\nもしテストが失敗した場合、どちらのケースに当てはまる判断する必要が出てきます。そのためテスト名が分かりやすいことが重要になります。\n\n良いテスト名とは、\n\n1. 何をテストしているか明確であること\n2. どのような時にテストがパスするか・失敗するか明確であること\n\n例に挙げた `testPeel()` は良いテスト名でしょうか？分かりやすくしてみましょう。\n\n```diff\n// BananaTests.swift\n\n-func testPeel() {\n+func testPeel_makesTheBananaEdible() {\n  // Arrange: Create the banana we'll be peeling.\n  let banana = Banana()\n\n  // Act: Peel the banana.\n  banana.peel()\n\n  // Assert: Verify that the banana is now edible.\n  XCTAssertTrue(banana.isEdible)\n}\n```\n\n新しいテスト名は、\n\n1. 何をテストしているか明確である: `testPeel` は `Banana.peel()` メソッドをテストしてることを示す。\n2. どのような時にテストがパスするか明確である: `makesTheBananaEdible` はバナナが食べられるか(edible)どうかをテストしていることを示す。\n\n## テスト時の条件\n\n人々がバナナを欲しい時、`offer()` というメソッドを使います。\n\n```swift\n// Banana/Offer.swift\n\n/** Given a banana, returns a string that can be used to offer someone the banana. */\npublic func offer(banana: Banana) -> String {\n  if banana.isEdible {\n    return \"Hey, want a banana?\"\n  } else {\n    return \"Hey, want me to peel this banana for you?\"\n  }\n}\n```\n\n私達のアプリケーションコードは２つのうちどちらかを実行します：\n\n1. 食べられる(すでに皮がむかれている)バナナを注文するか\n2. まだ食べられない(すでに皮がむかれている)バナナを注文するか\n\n両方のケースをテストしてみましょう。\n\n```swift\n// BananaTests/OfferTests.swift\n\nclass OfferTests: XCTestCase {\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n    // Arrange: Create a banana and peel it.\n    let banana = Banana()\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n    // Arrange: Create a banana.\n    let banana = Banana()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n私達のテスト名は'どのような条件でテストをパスするか'を明確に表しています。\n`whenTheBananaIsPeeled`, `offer()` のケースでは `offersTheBanana` となるべきです。またバナナの皮がむかれていない場合は？\nここでは両方共テストしています。\n\nここで大事なことはアプリケーションコード内の各if文に対してそれぞれ１つのテストを持っていることです。\nこれはテストを書く際の重要なアプローチです。このアプローチでは全ての条件(if文)に関してテストされていることを保証します。\nテストのうちどれか１つがでも失敗するようになったらコードの見直しをする必要があります。テスト名が分かりやすいとすぐにチェックすべき箇所が分かります。\n\n## `XCTestCase.setUp()`を用いて簡潔に環境構築をする\n\n`OfferTests` の２つのテストのどちらにも同じ\"環境構築\"のコードが入っています。\nどちらのテストでも banana を作っています。このコードは一箇所にまとめるべきです。なぜでしょう？\n\n1. そのままにしておく場合、もし `Banana` の生成方法が変わったら, 私たちは全てのテストを修正しないといけなくなります。\n2. テストコードが短くなり、テストの可読性が向上します。\n\nBanana の生成方法を `XCTestCase.setUp()` の中に移しましょう。`XCTestCase.setUp()` は各テストの実行前に一度呼び出されます。\n\n```diff\n// OfferTests.swift\n\nclass OfferTests: XCTestCase {\n+  var banana: Banana!\n+\n+  override func setUp() {\n+    super.setUp()\n+    banana = Banana()\n+  }\n+\n  func testOffer_whenTheBananaIsPeeled_offersTheBanana() {\n-    // Arrange: Create a banana and peel it.\n-    let banana = Banana()\n+    // Arrange: Peel the banana.\n    banana.peel()\n\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want a banana?\")\n  }\n\n  func testOffer_whenTheBananaIsntPeeled_offersToPeelTheBanana() {\n-    // Arrange: Create a banana.\n-    let banana = Banana()\n-\n    // Act: Create the string used to offer the banana.\n    let message = offer(banana)\n\n    // Assert: Verify it's the right string.\n    XCTAssertEqual(message, \"Hey, want me to peel this banana for you?\")\n  }\n}\n```\n\n## 複数のテストにまたがって環境構築を共有する\n\nもし複数のテストにまたがって同じ環境構築のコードを使っている部分があれば、 test target 内に'ヘルパー関数'を定義しましょう。\n\n```swift\n// BananaTests/BananaHelpers.swift\n\ninternal func createNewPeeledBanana() -> Banana {\n  let banana = Banana()\n  banana.peel()\n  return banana\n}\n```\n\n> 共通操作を定義するのに関数を使いましょう。関数は継承できず、状態を保持することができません。継承や状態を持たせる場合、テストの可読性が落ちてしまいます。\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/BehavioralTesting.md",
    "content": "# コードをテストせず、動作を確認する\n\nテストはアプリケーションが**期待と異なる動作** をした時のみ失敗するようにすべきです。\nアプリケーションコードが *何を* したかをテストすべきで、*どのように* したかをテストすべきではありません。\n\n- アプリケーションが *何を* したかを確認するテストは **動作テスト(behavioral tests)** といいます。\n- アプリケーションの動作が変わっていなくても、コードを変更すると失敗するようになるテストは **脆弱なテスト(brittle tests)** といいます。\n\nここで `GorillaDB` というバナナのデータベースを用意します。\n`GorillaDB`は Key-Value 型のデータベースでバナナを保存することができます。\n\n```swift\nlet database = GorillaDB()\nlet banana = Banana()\ndatabase.save(banana: banana, key: \"my-banana\")\n```\n\nそしてバナナをディスクから取り出すことができます。\n\n```swift\nlet banana = database.load(key: \"my-banana\")\n```\n\n## 脆弱なテスト(Brittle Tests)\n\nどのようにして動作をテストするのでしょう？一つの方法としてここではバナナを保存した後にバナナのデータベースのサイズをチェックします。\n\n```swift\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n  // Assert: The size of the database should have increased by one.\n  XCTAssertEqual(database.size, originalSize + 1)\n}\n```\n\nここで `GorillaDB` のソースコードを変更したとします。データベースからの読み出しを速くするためにもっとも頻繁に使用するバナナをキャッシュに保持するようにします。\n`GorillaDB.size` はキャッシュのサイズに合わせて大きくなります。この場合ディスクに保存しなくなるため上記のテストは失敗します。\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/Screenshot_database_size_fail.png)\n\n## 動作テスト(Behavioral Tests)\n\n動作のテストの重要なポイントは アプリケーションコードに期待する動作を明確にすることです。\n\n`testSave_savesTheBananaToTheDatabase` というテストで期待する動作は バナナをデータベースに \"保存する\" ことでしょうか？\n\"保存する\"というのは 後から読み出すことができる、という意味です。そのためデータベースのサイズが大きくなることをテストするのではなく、\nバナナを読みだすことができるかをテストすべきです。\n\n\n```diff\n// GorillaDBTests.swift\n\nfunc testSave_savesTheBananaToTheDatabase() {\n  // Arrange: Create a database and get its original size.\n  let database = GorillaDB()\n-  let originalSize = database.size\n\n  // Act: Save a banana to the database.\n  let banana = Banana()\n  database.save(banana: banana, key: \"test-banana\")\n\n-  // Assert: The size of the database should have increased by one.\n-  XCTAssertEqual(database.size, originalSize + 1)\n+  // Assert: The bananas saved to and loaded from the database should be the same.\n+  XCTAssertEqual(database.load(key: \"test-banana\"), banana)\n}\n```\n\n動作テストを書く際の重要なポイント：\n\n- アプリケーションコードが何をすべきか明確にしているか？\n- テストが *動作のみ* をテストしているか？コードの動作が他の要因で意図しない動きにならないか。\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/ConfiguringQuick.md",
    "content": "# Quickの挙動をカスタマイズしましょう\n\nQuickConfiguration を継承したクラスを作成し、`QuickConfiguration.Type.configure()` をオーバーライドすることで Quick の挙動をカスラマイズすることができます。\n\n```swift\n// Swift\n\nimport Quick\n\nclass ProjectDataTestConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    // ...set options on the configuration object here.\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(ProjectDataTestConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  // ...set options on the configuration object here.\n}\n\nQuickConfigurationEnd\n```\n\n一つのプロジェクトで複数の configuration を持つこともできますが\nどの順に configuration が実行されるか保証されません。\n\n## テスト全体で使う `beforeEach` と `afterEach` を追加する\n\n`QuickConfiguration.beforeEach` と `QuickConfiguration.afterEach` を使うと\nテストスイート内の各テストの実行前・実行後に走らせる処理を記述することができます。\n\n```swift\n// Swift\n\nimport Quick\nimport Sea\n\nclass FinConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach {\n      Dorsal.sharedFin().height = 0\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n#import \"Dorsal.h\"\n\nQuickConfigurationBegin(FinConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEach:^{\n    [Dorsal sharedFin].height = 0;\n  }];\n}\n\nQuickConfigurationEnd\n```\n\nさらに現在実行中のテストに関するメタデータを取得することもできます。\n\n```swift\n// Swift\n\nimport Quick\n\nclass SeaConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    configuration.beforeEach { exampleMetadata in\n      // ...use the example metadata object to access the current example name, and more.\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickConfigurationBegin(SeaConfiguration)\n\n+ (void)configure:(Configuration *)configuration {\n  [configuration beforeEachWithMetadata:^(ExampleMetadata *data) {\n    // ...use the example metadata object to access the current example name, and more.\n  }];\n}\n\nQuickConfigurationEnd\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/InstallingFileTemplates.md",
    "content": "# Quickファイル・テンプレートのインストール方法:\n\nQuick のリポジトリには Swift, Objective-C の両方で使用できるテンプレートが含まれています。\n\n## Alcatraz\n\nQuick のテンプレートは Xcode のパッケージマネージャーの [Alcatraz](https://github.com/supermarin/Alcatraz) 経由でインストールできます。\nパッケージマネージャーから検索してみてください。\n\n![](http://f.cl.ly/items/3T3q0G1j0b2t1V0M0T04/Screen%20Shot%202014-06-27%20at%202.01.10%20PM.png)\n\n## Rakefile から手動でインストールする\n\n手動でインストールすることもできます。\nリポジトリを clone して rake task の `templates:install` を実行してください。\n\n```sh\n$ git clone git@github.com:Quick/Quick.git\n$ rake templates:install\n```\n\nアンインストールも簡単です、下記コマンドを実行してください。\n\n```sh\n$ rake templates:uninstall\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/InstallingQuick.md",
    "content": "# Quickのインストール方法\n\n> **もし Xcode 7.1 を使用していたら** 現時点で最新バージョンの Quick--`v0.9.0` を使用してください\n> 最新のリリースは `swift-2.0` branch で開発されています。\n\nQuick は examples(テスト) and example groups(テストグループ)の文法を提供します。\nNimble は `expect(...).to` の文法を提供します。\nテストでは両方を使ってもいいですし、どちらか片方を使う、ということもできます。\n\nQuick をテストに組み込むには３つの方法があります。\n\n1. [Git Submodules](#git-submodules)\n2. [CocoaPods](#cocoapods)\n3. [Carthage](#carthage)\n\n下記のインストール手順の中からどれか選択してインストールを進めてください。\nインストール完了後、テストターゲット内のファイルで Quick を使用(`import Quick`)できるようになります。\n\n## Git Submodules\n\nGit submodules を使って Quick と Nimble をリンクします。手順の流れとしては下記の通りです。\n\n1. Quick を submodule として追加.\n2. プロジェクトで`.xcworkspace`を使っていなければ作成してください。 ([こちらを参照](https://developer.apple.com/library/ios/recipes/xcode_help-structure_navigator/articles/Adding_an_Existing_Project_to_a_Workspace.html))\n3. `Quick.xcodeproj` をプロジェクトの`.xcworkspace`に追加してください。\n4. `Nimble.xcodeproj` をプロジェクトの`.xcworkspace`に追加してください。 `Nimble.xcodeproj` は `path/to/Quick/Externals/Nimble` にあります。 Quick が依存している Niimble を追加することで Quick のバージョンと Nimble のバージョンを合わせられます。\n\n5. `Quick.framework` と `Nimble.framework` を BuildPhase の \"Link Binary with Libraries\" でリンクします。\n\nもしまだ git submodules 用のディレクトリを作っていなかったら、まず始めにディレクトリを作成します。\n`Vendor` という名前のディレクトリを用意しましょう。\n\n**Step One:** Quick と Nimble を Git submodules としてダウンロードする\n\n```sh\ngit submodule add git@github.com:Quick/Quick.git Vendor/Quick\ngit submodule add git@github.com:Quick/Nimble.git Vendor/Nimble\ngit submodule update --init --recursive\n```\n\n**Step Two:** `Quick.xcodeproj` と `Nimble.xcodeproj` をプロジェクトの `.xcworkspace` に追加してください。\n例として `Guanaco.xcworkspace` という workspace に Quick と Nimble を追加します。\n\n![](http://f.cl.ly/items/2b2R0e1h09003u2f0Z3U/Screen%20Shot%202015-02-27%20at%202.19.37%20PM.png)\n\n**Step Three:** build phase の `Link Binary with Libraries` に `Quick.framework` を追加してください。\n2種類の `Quick.frameworks` が表示されますが 1 つは OS X 用で、もう 1 つが iOS 用です。\n\n![](http://cl.ly/image/2L0G0H1a173C/Screen%20Shot%202014-06-08%20at%204.27.48%20AM.png)\n\n`Nimble.framework` も同様に追加してください。これで完了です！\n\n**Submodules をアップデートする:** Quick と Nimble を最新バージョンにアップデートしたい場合は Quick ディレクトリに入って master リポジトリから pull してください。\n\n```sh\ncd /path/to/your/project/Vendor/Quick\ngit checkout master\ngit pull --rebase origin master\n```\n\nあなたのプロジェクトの Git リポジトリは submodule の変更もトラッキングしているので Quick submodules の更新を commit しておきます。\n\n```sh\ncd /path/to/your/project\ngit commit -m \"Updated Quick submodule\"\n```\n\n**Quick Submodule を含んだ リポジトリを git clone する:** 他の開発者があなたのリポジトリを clone したあと、submodules を同様に pull してくる必要があります。`git submodule update` コマンドを実行することで pull できます。\n\n```sh\ngit submodule update --init --recursive\n```\n\ngit submodules に詳細な情報は[こちら](http://git-scm.com/book/en/Git-Tools-Submodules).\n\n## CocoaPods\n\nCocoaPods でインストールする場合、バージョンは 0.36.0 以降である必要(CocoaPods が Swift をサポートしているバージョン)があります。\n\nPodfile に Quick と Nimble を追加して下さい。 Swift では ```use_frameworks!``` も必要です。\n\n```rb\n\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick', '~> 0.9.0'\n    pod 'Nimble', '3.0.0'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\nその後 pod install でダウンロード、リンクします。\n\n```sh\npod install\n```\n\n### Swift 1.2 で使う\n\nQuick の最新版(0.4.0)は Swift 2 (Xcode 7) 用ですが、Nimble の最新版(1.0.0) は Swift 1.2 (Xcode 6) 用です。\n\nもし Xcode6 で使いたい場合は下記のようにバージョン指定してください。\n\n```sh\ntarget 'MyTests' do\n  use_frameworks!\n  pod 'Quick', '~>0.3.0'\n  pod 'Nimble', '~>1.0.0'\nend\n```\n\n## [Carthage](https://github.com/Carthage/Carthage)\n\nテストターゲットは \"Embedded Binaries\" section がないので framework はターゲットの \"Link Binary With Libraries\" に追加する必要があります。 build phase の \"Copy Files\" も同様にターゲットの framework destination を指定して下さい。\n\n > Carthage は dynamic frameworks をビルドするので code signing identity に有効なものを設定しておく必要があります。\n\n1.  Quick を [`Cartfile.private`](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfileprivate) に追加してください。\n\n    ```\n    github \"Quick/Quick\"\n    github \"Quick/Nimble\"\n    ```\n\n2. `carthage update` を実行してください。\n3. `Carthage/Build/[platform]/` ディレクトリから Quick と Nimble をテストターゲットの \"Link Binary With Libraries\" に追加してください。\n    ![](http://i.imgur.com/pBkDDk5.png)\n\n4. テストターゲットの build phase で \"New Copy Files Phase\" を選択してください。\n    ![](http://i.imgur.com/jZATIjQ.png)\n\n5. \"Destination\" を \"Frameworks\" に設定して、２つの framework を追加してください。\n    ![](http://i.imgur.com/rpnyWGH.png)\n\nCarthage の dependency の管理方法はこの方法だけではありません。\n詳細な情報はこちらを参照してください [Carthage documentation](https://github.com/Carthage/Carthage/blob/master/README.md) 。\n\n### (非推奨) 実機で Quick のテストを走らせる\n\nQuick で書かれたテストを実機で走らせるためには `Quick.framework` と `Nimble.framework` を `Embedded Binaries` としてテストターゲットの `ホストアプリケーション` に追加されます。 Embedded binary として framework を追加すると Xcode が自動的にホストアプリケーションにリンクしてしまいます。\n\n![](http://indiedev.kapsi.fi/images/embed-in-host.png)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/MoreResources.md",
    "content": "# その他の参考資料\n\n## Quick のテストのサンプル\n\nQuick は[GitHub](https://github.com/github)や[ReactiveCocoa](https://github.com/ReactiveCocoa)を含む多くの企業、OSS プロジェクト、個人で利用されています。\n\n下記リポジトリを参考にしてみてください。\n\n- https://github.com/ReactiveCocoa/ReactiveCocoa\n- https://github.com/github/Archimedes\n- https://github.com/libgit2/objective-git\n- https://github.com/jspahrsummers/RXSwift\n- https://github.com/artsy/eidolon\n- https://github.com/Moya/Moya\n- https://github.com/nerdyc/Squeal\n- https://github.com/pepibumur/SugarRecord\n\n## OS X と iOS Apps のテストに関する参考資料\n\n- **[Quality Coding](http://qualitycoding.org/)**:\n  ユニットテストにフォーカスした iOS 開発に関するブログ。\n- **[OCMock Tutorials](http://ocmock.org/support/)**:\n  テストでモックが必要な時に使用する OCMock のチュートリアル。\n- **[Nocilla: Stunning HTTP stubbing for iOS and Mac OS X](https://github.com/luisobo/Nocilla)**:\n  通信を行うコードをテストする時はこのライブラリを使用して下さい。\n- **[Pivotal Labs: Writing Beautiful Specs with Jasmine Custom Matchers](http://pivotallabs.com/writing-beautiful-specs-jasmine-custom-matchers/)**:\n  Nimble の matcher の書き方に関するドキュメントはこちら([the Nimble documentation](https://github.com/Quick/Nimble))\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/NimbleAssertions.md",
    "content": "# Nimble Assertions を使ってテストをより簡潔に\n\nテストが期待した通りに動作しない時、ユニットテストは **何が問題か** を明確にすべきです。\n\n次の関数はサルの集団から馬鹿なサルだけを取得します。\n\n```swift\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n  return monkeys.filter { $0.silliness == .VerySilly }\n}\n```\n\nここでこの関数に対するテストを書いてみましょう。\n\n```swift\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n  XCTAssertTrue(contains(sillyMonkeys, kiki))\n}\n```\n\nこのテストは下記のメッセージとともに失敗します。\n\n```\nXCTAssertTrue failed\n```\n\n![](http://f.cl.ly/items/1G17453p47090y30203d/Screen%20Shot%202015-02-26%20at%209.08.27%20AM.png)\n\n失敗した時は多くの情報を残すことが望ましいです。このメッセージのままではよく分かりません。\ntrue や false だけではそれがなにか分かりません。このままではテストコードから原因を見つけるまでに時間がかかってしまいます。\n\n## 良い失敗メッセージを残す： Part 1: XCTAssert に手動でメッセージを渡す\n\n`XCTAssert` は失敗時にメッセージを指定することができます。\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki))\n+  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n}\n```\n\nしかし`XCTAssert`では自分でメッセージを指定しないといけません。\n\n## 良い失敗メッセージを残す： Part 2: Nimble Failure Messages を使う\n\nNimble は Assert, 失敗時のメッセージを読みやすくしてくれます。\n\n```diff\nfunc testSilliest_whenMonkeysContainSillyMonkeys_theyreIncludedInTheResult() {\n  let kiki = Monkey(name: \"Kiki\", silliness: .ExtremelySilly)\n  let carl = Monkey(name: \"Carl\", silliness: .NotSilly)\n  let jane = Monkey(name: \"Jane\", silliness: .VerySilly)\n  let sillyMonkeys = silliest([kiki, carl, jane])\n-  XCTAssertTrue(contains(sillyMonkeys, kiki), \"Expected sillyMonkeys to contain 'Kiki'\")\n+  expect(sillyMonkeys).to(contain(kiki))\n}\n```\n\nNimble では自分でメッセージを指定しなくても Nimble がとても読みやすいメッセージを返してくれます。\n\n```\nexpected to contain <Monkey(name: Kiki, sillines: ExtremelySilly)>,\n                got <[Monkey(name: Jane, silliness: VerySilly)]>\n```\n\n![](http://f.cl.ly/items/3N2e3g2K3W123b1L1J0G/Screen%20Shot%202015-02-26%20at%2011.27.02%20AM.png)\n\n失敗メッセージは何が問題かを明確にします：ここでは `kiki` が `silliest()` の戻り値に含まれることを期待していますが\nこのテストでは 'jane' しか含まれていません。Nimble からのメッセージで何が問題かが分かりやすく伝えられるので、簡単に直すことができます。\n\n```diff\npublic func silliest(monkeys: [Monkey]) -> [Monkey] {\n-  return monkeys.filter { $0.silliness == .VerySilly }\n+  return monkeys.filter { $0.silliness == .VerySilly || $0.silliness == .ExtremelySilly }\n}\n```\n\nNimble は具体的な失敗メッセージを返してくれる多くの種類の Assertion を提供します。\n`XCTAssert` と違って毎回自分でメッセージを指定することはありません。\n\nNimble の全ての assertion はこちらで確認できます： [Nimble README](https://github.com/Quick/Nimble) 。\n下記に幾つかの例を示します。\n\n```swift\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/QuickExamplesAndGroups.md",
    "content": "# QuickのExamplesとExample Groupsで、たくさんのテストでも整理整頓\n\nQuick では **examples** と **example groups** という特別な文法があります。\n\n*[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)* では,\n良いテスト名をつけることがとても重要だということを学びました。\nテストが失敗した時、テスト名はアプリケーションコードを直すべきかテストを修正すべきかを判断する際の重要な材料になります。\n\nQuick の examples(テスト) と example groups(テストグループ) は二つの役に立ちます。\n\n1. 記述的なテスト名を書くためことをサポートします\n2. テスト中の \"環境構築\" 部分におけるコードを簡略化します\n\n## Examples の `it`\n\nExamples は 'it' という「コードがどのように動作すべきかを宣言する」関数を持ちます。\nこれは XCTest の test methods のようなものです。\n\n'it' 関数は２つのパラメータ、example の名前と closure です。\n下記のテストでは `Sea.Dolphin` クラスがどのように動作すべきかを記述しています。\nこの example では「新しく生成された Dolphin は　smart で friendly であるべき」と書いています。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport Sea\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    it(\"is friendly\") {\n      expect(Dolphin().isFriendly).to(beTruthy())\n    }\n\n    it(\"is smart\") {\n      expect(Dolphin().isSmart).to(beTruthy())\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\nit(@\"is friendly\", ^{\n  expect(@([[Dolphin new] isFriendly])).to(beTruthy());\n});\n\nit(@\"is smart\", ^{\n  expect(@([[Dolphin new] isSmart])).to(beTruthy());\n});\n\nQuickSpecEnd\n```\n\nExamples が何をテストしているかを明確にするために Description を使います。\nDescription は文字数制限がなくどの文字でも(絵文字さえも！)使うことができます。\n:v: :sunglasses:\n\n## Example Groups の `describe` と `context`\n\nExample groups では Example のグルーピングができ、 setup と teardown のコードを共有できます。\n\n### `describe` を使ってクラスと関数について記述する\n\n`Dolphin` クラスの `click` 関数の動作を記述する際に、\n言い換えると関数が動作していることをテストする際に、\n複数の 'it' example を `describe` を用いてグルーピングすることができます。\n似ている examples をまとめることで可読性が向上します。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      describe(\"its click\") {\n        it(\"is loud\") {\n          let click = Dolphin().click()\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          let click = Dolphin().click()\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  describe(@\"its click\", ^{\n    it(@\"is loud\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      Click *click = [[Dolphin new] click];\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nXcode でこれらの examples を実行すると`describe` と `it` の記述内容も表示されます。上記のテストの場合、下記のような出力になります。\n\n1. `DolphinSpec.a_dolphin_its_click_is_loud`\n2. `DolphinSpec.a_dolphin_its_click_has_a_high_frequency`\n\nそれぞれの Example が何をテストしているかが明確ですね。\n\n### `beforeEach` と `afterEach` を使って Setup/Teardown のコードを共有する\n\nExample groups はテストの内容をただ分かりやすくするだけでなく同一グループ内のsetup/teardownコードを共有することができます。\n\n下記の例では`its click`の Example group のテストを実行する前に `beforeEach`を使って新しい Dolphin のインスタンスを生成しています。\n各 Example において \"新しい\" 状態でテストが行えます。 \n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach {\n        dolphin = Dolphin()\n      }\n\n      describe(\"its click\") {\n        var click: Click!\n        beforeEach {\n          click = dolphin.click()\n        }\n\n        it(\"is loud\") {\n          expect(click.isLoud).to(beTruthy())\n        }\n\n        it(\"has a high frequency\") {\n          expect(click.hasHighFrequency).to(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{\n      dolphin = [Dolphin new];\n  });\n\n  describe(@\"its click\", ^{\n    __block Click *click = nil;\n    beforeEach(^{\n      click = [dolphin click];\n    });\n\n    it(@\"is loud\", ^{\n      expect(@(click.isLoud)).to(beTruthy());\n    });\n\n    it(@\"has a high frequency\", ^{\n      expect(@(click.hasHighFrequency)).to(beTruthy());\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\nこの例では setup を共有することはあまりメリットがないように見えるかもしれませんが\n複数の複雑なオブジェクトを生成する時などコード量を節約することができます。\n\nそれぞれの Example を実行した後に実行したいコードについては`afterEach`を使います。\n\n### 'context' を使ってある条件での動作を記述する\n\n例の Dolphins(イルカ達) はエコーロケーションのために カチッと音を立てます('click ' 関数を呼び出します)。\nイルカ達は特に興味のあるものに近づく時、それが何かを調べるために連続してエコーロケーション('click' 関数を呼び出します)を行います。\n\nこのシナリオにおいてテストが 異なる状況において click 関数の動作は異なる ということを表す必要があります。\n\n基本的にイルカは一度音を鳴らすだけですが、イルカ達が興味があるものが近くにあると連続して音を鳴らします。\n\nこの状況について 'context' 関数を使って表します。ある 'context' では通常のケースで、もう一方の'context'ではイルカが興味あるものに近づいているケースです。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    describe(\"a dolphin\") {\n      var dolphin: Dolphin!\n      beforeEach { dolphin = Dolphin() }\n\n      describe(\"its click\") {\n        context(\"when the dolphin is not near anything interesting\") {\n          it(\"is only emitted once\") {\n            expect(dolphin!.click().count).to(equal(1))\n          }\n        }\n\n        context(\"when the dolphin is near something interesting\") {\n          beforeEach {\n            let ship = SunkenShip()\n            Jamaica.dolphinCove.add(ship)\n            Jamaica.dolphinCove.add(dolphin)\n          }\n\n          it(\"is emitted three times\") {\n            expect(dolphin.click().count).to(equal(3))\n          }\n        }\n      }\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickSpecBegin(DolphinSpec)\n\ndescribe(@\"a dolphin\", ^{\n  __block Dolphin *dolphin = nil;\n  beforeEach(^{ dolphin = [Dolphin new]; });\n\n  describe(@\"its click\", ^{\n    context(@\"when the dolphin is not near anything interesting\", ^{\n      it(@\"is only emitted once\", ^{\n        expect(@([[dolphin click] count])).to(equal(@1));\n      });\n    });\n\n    context(@\"when the dolphin is near something interesting\", ^{\n      beforeEach(^{\n        [[Jamaica dolphinCove] add:[SunkenShip new]];\n        [[Jamaica dolphinCove] add:dolphin];\n      });\n\n      it(@\"is emitted three times\", ^{\n        expect(@([[dolphin click] count])).to(equal(@3));\n      });\n    });\n  });\n});\n\nQuickSpecEnd\n```\n\n厳密には `context` キーワードは `describe`と同じですがテストを理解しやすくなるので使い分けるとよいです。\n\n### テストの可読性: Quick と XCTest\n\n*[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)*で各条件についてそれぞれテストを用意するのがテストを書く際の重要な方法と述べましたが\nこのアプローチで XCTest でテストを書くとテスト名が長くなってしまいます。\n\n```swift\nfunc testDolphin_click_whenTheDolphinIsNearSomethingInteresting_isEmittedThreeTimes() {\n  // ...\n}\n```\n\nQuick を使うと条件について読みやすく、しかもそれぞれの Example group について環境構築が効率的に行えます。\n\n```swift\ndescribe(\"a dolphin\") {\n  describe(\"its click\") {\n    context(\"when the dolphin is near something interesting\") {\n      it(\"is emitted three times\") {\n        // ...\n      }\n    }\n  }\n}\n```\n\n## 一時的に Examples や Example Groups を無効にする\n\n通っていない Example を一時的に無効にすることもできます。\nExample や Example Groups の先頭に 'x' をつけると無効になります。\nExamples の名前がテスト結果の中に出力されますがテストは実行されなくなります。\n\n\n```swift\n// Swift\n\nxdescribe(\"its click\") {\n  // ...none of the code in this closure will be run.\n}\n\nxcontext(\"when the dolphin is not near anything interesting\") {\n  // ...none of the code in this closure will be run.\n}\n\nxit(\"is only emitted once\") {\n  // ...none of the code in this closure will be run.\n}\n```\n\n```objc\n// Objective-C\n\nxdescribe(@\"its click\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxcontext(@\"when the dolphin is not near anything interesting\", ^{\n  // ...none of the code in this closure will be run.\n});\n\nxit(@\"is only emitted once\", ^{\n  // ...none of the code in this closure will be run.\n});\n```\n\n## 指定した Examples だけ一時的に実行する\n\n一部の Example だけ実行できると便利なこともあります。\nそのような時は実行したい Example を 'fit' 関数を用いて指定します。\n特定の Example group だけ実行したい時は`fdescribe` か `fcontext` を記述します。\n※もともと書いてあるテストコードの先頭に 'f' を追記するだけです。\n\n```swift\nfit(\"is loud\") {\n  // ...only this focused example will be run.\n}\n\nit(\"has a high frequency\") {\n  // ...this example is not focused, and will not be run.\n}\n\nfcontext(\"when the dolphin is near something interesting\") {\n  // ...examples in this group are also focused, so they'll be run.\n}\n```\n\n```objc\nfit(@\"is loud\", {\n  // ...only this focused example will be run.\n});\n\nit(@\"has a high frequency\", ^{\n  // ...this example is not focused, and will not be run.\n});\n\nfcontext(@\"when the dolphin is near something interesting\", ^{\n  // ...examples in this group are also focused, so they'll be run.\n});\n```\n\n## `beforeSuite` と `afterSuite` を使ってテスト全体に対する Setup/Teardown を行う\n\nテストの環境構築の中にはどの Example よりも先に、または最後に実行したいものがある場合もあります。\nこのような時は `beforeSuite` か `afterSuite` を使います。\n\n下記の例では 全ての Example が実行される前に一度だけ海の全ての生物のデータベースが生成され、全ての Exmample が実行された後にデータベースを削除しています。\n\n```swift\n// Swift\n\nimport Quick\n\nclass DolphinSpec: QuickSpec {\n  override func spec() {\n    beforeSuite {\n      OceanDatabase.createDatabase(name: \"test.db\")\n      OceanDatabase.connectToDatabase(name: \"test.db\")\n    }\n\n    afterSuite {\n      OceanDatabase.teardownDatabase(name: \"test.db\")\n    }\n\n    describe(\"a dolphin\") {\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n\nbeforeSuite(^{\n  [OceanDatabase createDatabase:@\"test.db\"];\n  [OceanDatabase connectToDatabase:@\"test.db\"];\n});\n\nafterSuite(^{\n  [OceanDatabase teardownDatabase:@\"test.db\"];\n});\n\ndescribe(@\"a dolphin\", ^{\n  // ...\n});\n\nQuickSpecEnd\n```\n\n`beforeSuite` and `afterSuite` は必要な数だけ定義することができます。\n全ての `beforeSuite` の closure は全てのテストが実行される前に実行され、\n全ての `afterSuite` の closure は全てのテストが実行された後に実行されます。\n\n複数の `beforeSuite`(`afterSuite`) の closure を記述した場合、これらの実行順序は記述した順序で実行されるかは保証されません。\n\n## 実行中の Example でメタデータにアクセスする\n\n実行中の Example の中で、Example名を知りたいケース、これまでに何件の Example を実行したかを知りたいケースがあるかもしれません。 \nQuick ではこれらの情報に `beforeEach` と `afterEach` の closure の中からアクセスすることができます。\n\n```swift\nbeforeEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) is about to be run.\")\n}\n\nafterEach { exampleMetadata in\n  println(\"Example number \\(exampleMetadata.exampleIndex) has run.\")\n}\n```\n\n```objc\nbeforeEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l is about to be run.\", (long)exampleMetadata.exampleIndex);\n});\n\nafterEachWithMetadata(^(ExampleMetadata *exampleMetadata){\n  NSLog(@\"Example number %l has run.\", (long)exampleMetadata.exampleIndex);\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/QuickInObjectiveC.md",
    "content": "# Objective-C で Quick を使う\n\nQuick は Swift でも Objective-C でも問題なく動作します。\n\nですが、Objective-C で Quick を使う場合、2点気を付けておきべきことがあります。\n\n## 簡略記法\n\nObjective-C で Quick を import すると 'it' と `itShouldBehaveLike` というマクロが定義されます。\nまた、`context()` and `describe()`といった関数も同様に定義されます。\n\nもしプロジェクトですでに同じ名前のシンボルを定義していた場合、重複のためビルドエラーになります。\nその場合は下記のように`QUICK_DISABLE_SHORT_SYNTAX`を定義してこの機能を無効にしてください。\n\n```objc\n#define QUICK_DISABLE_SHORT_SYNTAX 1\n\n@import Quick;\n\nQuickSpecBegin(DolphinSpec)\n// ...\nQuickSpecEnd\n```\n\n`QUICK_DISABLE_SHORT_SYNTAX`マクロは Quick ヘッダを import する前に定義する必要があります。\n\n\n## Swift のファイルを テストターゲットに含める\n\nテストターゲットの中に Swift のファイルが含まれていないと Swift stlib が リンクされないため Quick が正しく実行されません。\n\nSwift のファイルが含まれていないと下記のようなエラーが発生します。\n\n```\n*** Test session exited(82) without checking in. Executable cannot be\nloaded for some other reason, such as a problem with a library it\ndepends on or a code signature/entitlements mismatch.\n```\n\nTo fix the problem, add a blank file called `SwiftSpec.swift` to your test target:\n修正するためには `SwiftSpec.swift` という名前の空のファイルをテストターゲットに追加してください。\n\n```swift\n// SwiftSpec.swift\n\nimport Quick\n```\n\n> この問題に関する詳細情報はこちら https://github.com/Quick/Quick/issues/164.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/README.md",
    "content": "# テストの書き方、Quickの使い方\n\nQuickでテストを書くと、SwiftとObjective-Cで書かれたプログラムがどう動作しているか楽に確認できます。\n\nところが、有用なテストはQuickを使わなくても書けます。\n役に立つテストが書けるようになるには、Quickのようなフレームワークの使い方を覚える必要はありません。\n\nこのディレクトリにあるファイルは、QuickかXCTestかを問わず、\n「役に立つ」テストとは何か、そしてどうやってそういったテストが書けるか、\nそれを拙文ながら説明しようとしています。\n\n目次：\n\n（テストについて事前知識がまったくない方は、順に読んでいくことをオススメします。）\n\n- **[Xcodeでテストを用意しましょう](SettingUpYourXcodeProject.md)**:\n  アプリのコードがテスト・ファイルから参照できない場合や、\n  その他スムーズにテストが動かない場合はこのファイルを読み返すといいかもしれません。\n- **[XCTestで役に立つテストを書く方法：Arrange（環境構築）, Act（実行）, and Assert（動作確認）](ArrangeActAssert.md)**:\n  役に立つテストを書くための基本中の基本。これさえ覚えれば、\n  XCTestを使ってあなたも正確に動作するコードをすばやく書けるようになります。\n- **[コードをテストするのではなく、動作の確認をしましょう](BehavioralTesting.md)**:\n  同じ「テスト」でも、開発を進めやすくするテストと、邪魔ばかりするテストとがあります。\n  見分ける方法は、このファイルを読めば分かります。\n- **[Nimbleのassertでテストをより読みやすくしましょう](NimbleAssertions.md)**:\n  Nimbleを使って、テストが失敗したときわかりやすいエラーメッセージを出すようにしましょう。\n  わかりやすいメッセージで、テストがなぜ失敗したのかが一瞬でわかって開発の速度があがります。\n- **[QuickのExamplesとExample Groupsで、たくさんのテストでも整理整頓](QuickExamplesAndGroups.md)**:\n  Quickを使う大きなメリットのひとつはexamplesとexample groupsです。\n  これでより簡潔にたくさんのテストが書けるようになります。\n- **[OS XとiOSアプリのテスト](TestingApps.md)**:\n  AppKitとUIKitを使ったコードをどうやってテストできるか説明します。\n- **[assertの共有でボイラープレートコードをなくしましょう](SharedExamples.md)**:\n  どうやってassertを共有できるか、なぜそうするのが望ましいのか説明します。\n- **[Quickの挙動をカスタマイズしましょう](ConfiguringQuick.md)**:\n  Quickがテストを実行するときの挙動をどうやって変えられるか説明します。\n- **[Objective-CでQuickを使う方法・注意点](QuickInObjectiveC.md)**:\n  QuickをObjective-Cで使ったときに思わぬ不具合・トラブルがあった場合、\n  これを読んでください。\n- **[Quickのインストール方法](InstallingQuick.md)**:\n  あなたのプロジェクトにQuickを導入する方法を説明します。Git submodules、\n  CocoaPods、Carthage、全部サポートしています！\n- **[Quickファイル・テンプレートのインストール方法](InstallingFileTemplates.md)**:\n  Quickテストをすばやく作成するためのファイル・テンプレートをインストールする方法を説明します。\n- **[その他の参考資料](MoreResources.md)**\n  OS X・iOSのテストに関しての資料集を用意しています。\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/SettingUpYourXcodeProject.md",
    "content": "# テストの準備をする\n\nXcode7 では Command Line Tool プロジェクトを除き、デフォルトで Unit test target が生成されます。 [参照：コマンドラインツールプロジェクトでテストの準備をする](#コマンドラインツールプロジェクトでテストの準備をする).\nテストを書くためには Unit test targetから Main target のコードが使用できる必要があります。\n\n## Swift のコードを Swift でテストする\n\nSwift で書かれたコードをテストするためには下記2つの作業を行います。\n\n1. プロジェクトファイル `.xcodeproj` の \"defines module\" を `YES` に設定します。\n\n  * Xcode で対象のプロジェクトを開き、\"Build Settings\" の \"Defines Modules\" の 項目を \"Yes\" にします。\n\n2. 各テストファイルで `@testable import YourAppModuleName` を追記します。 追記することで public, internal のシンボルにアクセスできるようになります。`private` シンボルはアクセスできないままです。\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> Swift のファイルを Test target に含める、という方法もありますが、不具合を引き起こす([subtle, hard-to-diagnose\nerrors](https://github.com/Quick/Quick/issues/91)) ことがあるためお勧めしません。\n\n## Objective-C のコードを Swift でテストする\n\n1. Bridging header を test target に追加します。\n2. Bridging header 内で テストしたいコードを import します。\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\nこれで `MyClass.h' のコードを Swift のテストコードから使用できるようになります。\n\n## Swift のコードを Objective-C でテストする\n\n1. テストしたい Swift のクラスと関数に`@objc`属性を付加します。\n2. テストコードで Module の Swift header を import します。\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## Objective-C のコードを Objective-C でテストする\n\nテストコード内でテスト対象を import します。\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### コマンドラインツールプロジェクトでテストの準備をする\n\n1. プロジェクトのペインからターゲットを追加(+ボタンを押下)\n2. \"OS X Unit Testing Bundle\" または \"iOS Unit Testing Bundle\" を選択\n3. Main target で \"Edit the scheme\" を選択\n4. \"Test\" を選択, \"Info\" タブで \"+\" をクリックして追加した testing bundle を選択\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/SharedExamples.md",
    "content": "# assertの共有でボイラープレートコードをなくしましょう\n\n複数のオブジェクトに対象して同じ内容のテストを行いたい場合があります。\n\n例えば `Edible` という protocol があるとします。\nイルカ(dolphin)が何か食べられる(`Edible`)なものを食べるとイルカが幸せになります。\nサバ(Mackerel)とタラ(Cod)は食べられる(Edibleな)ものです。\n\nQuick は「イルカがどちらかを食べて幸せになる」ということを簡単にテストすることできます。\n\n下記で示すテストは \"(何かを食べる)something edible\" という共有できるテスト(Shared examples)を定義しています。\nまた、この共有できるテストでサバ(Mackerel)とタラ(Cod)を食べることについてのテストを記述しています。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass EdibleSharedExamplesConfiguration: QuickConfiguration {\n  override class func configure(configuration: Configuration) {\n    sharedExamples(\"something edible\") { (sharedExampleContext: SharedExampleContext) in\n      it(\"makes dolphins happy\") {\n        let dolphin = Dolphin(happy: false)\n        let edible = sharedExampleContext()[\"edible\"]\n        dolphin.eat(edible)\n        expect(dolphin.isHappy).to(beTruthy())\n      }\n    }\n  }\n}\n\nclass MackerelSpec: QuickSpec {\n  override func spec() {\n    var mackerel: Mackerel!\n    beforeEach {\n      mackerel = Mackerel()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": mackerel] }\n  }\n}\n\nclass CodSpec: QuickSpec {\n  override func spec() {\n    var cod: Cod!\n    beforeEach {\n      cod = Cod()\n    }\n\n    itBehavesLike(\"something edible\") { [\"edible\": cod] }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n\nQuickConfigurationBegin(EdibleSharedExamplesConfiguration)\n\n+ (void)configure:(Configuration *configuration) {\n  sharedExamples(@\"something edible\", ^(QCKDSLSharedExampleContext exampleContext) {\n    it(@\"makes dolphins happy\") {\n      Dolphin *dolphin = [[Dolphin alloc] init];\n      dolphin.happy = NO;\n      id<Edible> edible = exampleContext()[@\"edible\"];\n      [dolphin eat:edible];\n      expect(dolphin.isHappy).to(beTruthy())\n    }\n  });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(MackerelSpec)\n\n__block Mackerel *mackerel = nil;\nbeforeEach(^{\n  mackerel = [[Mackerel alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": mackerel }; });\n\nQuickSpecEnd\n\nQuickSpecBegin(CodSpec)\n\n__block Mackerel *cod = nil;\nbeforeEach(^{\n  cod = [[Cod alloc] init];\n});\n\nitBehavesLike(@\"someting edible\", ^{ return @{ @\"edible\": cod }; });\n\nQuickSpecEnd\n```\n\nShared examples は `it`, `context` や `describe` のブロックをいくつでも含めることができます。\nこれは異なる種類の対象についてテストをする際のコードを節約することができます。\n\nあるケースでは context を追加する必要もありません。\nSwift では `sharedExamples` closure を使って共有できるテストを定義することができます。\nこのテクニックはある時点での状態をテストしたい時などに役に立つかもしれません。\n\nIn some cases, you won't need any additional context. In Swift, you can\nsimply use `sharedExamples` closures that take no parameters. This\nmight be useful when testing some sort of global state:\n\n```swift\n// Swift\n\nimport Quick\n\nsharedExamples(\"everything under the sea\") {\n  // ...\n}\n\nitBehavesLike(\"everything under the sea\")\n```\n\n> Objective-Cでは, `QCKDSLSharedExampleContext` を引数に取る block を渡すことができます。※QCKDSLSharedExampleContext を使う予定がなくても引数に取る block を用意してください。めんどくさくても。世の中そんなもんです。  :cookie: :bomb:\n\n'itBehavesLike' の先頭に 'f' を加えて(`fitBehavesLike`) として共有できるテストのみ実行することもできます。\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/ja/TestingApps.md",
    "content": "# Testing OS X and iOS Applications\n\n*[Xcodeでテストを用意しましょう](SettingUpYourXcodeProject.md)*では Objective-C や Swift の関数やクラスを\nテストするために必要なことを述べました。ここでは `UIViewController` のサブクラスなどをテストする際のポイントを述べます。\n\n> 関連する LT がありますのでこちらも参考にしてください。\n  [here](https://vimeo.com/115671189#t=37m50s) (37'50\" から始まる部分です)。\n\n## `UIViewController` のライフサイクルイベントを発火させる\n\n通常は UIKit が view controller のライフサイクルイベントを発火しますが、\nテストをする時は自分たちでライフサイクルイベントを発火させる必要があります。\n呼び出すには３つの方法があります。\n\n1. `UIViewController.view`にアクセスする、すると `UIViewController.viewDidLoad()` のイベントが発火します。\n2. `UIViewController.beginAppearanceTransition()` を呼び出すとほとんどのライフサイクルイベントが発火します。。\n3. `UIViewController.viewDidLoad()` や `UIViewController.viewWillAppear()` などのライフサイクルに関わる関数を直接呼び出す。\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\nimport BananaApp\n\nclass BananaViewControllerSpec: QuickSpec {\n  override func spec() {\n    var viewController: BananaViewController!\n    beforeEach {\n      viewController = BananaViewController()\n    }\n\n    describe(\".viewDidLoad()\") {\n      beforeEach {\n        // Method #1: Access the view to trigger BananaViewController.viewDidLoad().\n        let _ =  viewController.view\n      }\n\n      it(\"sets the banana count label to zero\") {\n        // Since the label is only initialized when the view is loaded, this\n        // would fail if we didn't access the view in the `beforeEach` above.\n        expect(viewController.bananaCountLabel.text).to(equal(\"0\"))\n      }\n    }\n\n    describe(\"the view\") {\n      beforeEach {\n        // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n        viewController.beginAppearanceTransition(true, animated: false)\n        viewController.endAppearanceTransition()\n      }\n      // ...\n    }\n\n    describe(\".viewWillDisappear()\") {\n      beforeEach {\n        // Method #3: Directly call the lifecycle event.\n        viewController.viewWillDisappear(false)\n      }\n      // ...\n    }\n  }\n}\n```\n\n```objc\n// Objective-C\n\n@import Quick;\n@import Nimble;\n#import \"BananaViewController.h\"\n\nQuickSpecBegin(BananaViewControllerSpec)\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  viewController = [[BananaViewController alloc] init];\n});\n\ndescribe(@\"-viewDidLoad\", ^{\n  beforeEach(^{\n    // Method #1: Access the view to trigger -[BananaViewController viewDidLoad].\n    [viewController view];\n  });\n\n  it(@\"sets the banana count label to zero\", ^{\n    // Since the label is only initialized when the view is loaded, this\n    // would fail if we didn't access the view in the `beforeEach` above.\n    expect(viewController.bananaCountLabel.text).to(equal(@\"0\"))\n  });\n});\n\ndescribe(@\"the view\", ^{\n  beforeEach(^{\n    // Method #2: Triggers .viewDidLoad(), .viewWillAppear(), and .viewDidAppear() events.\n    [viewController beginAppearanceTransition:YES animated:NO];\n    [viewController endAppearanceTransition];\n  });\n  // ...\n});\n\ndescribe(@\"-viewWillDisappear\", ^{\n  beforeEach(^{\n    // Method #3: Directly call the lifecycle event.\n    [viewController viewWillDisappear:NO];\n  });\n  // ...\n});\n\nQuickSpecEnd\n```\n\n## Storyboard 内に定義した View Controller を初期化する\n\nStoryboard 内に定義した View Controller を初期化する際は **Storyboard ID** を定義しておく必要があります。\n\n![](http://f.cl.ly/items/2X2G381K1h1l2B2Q0g3L/Screen%20Shot%202015-02-27%20at%2011.58.06%20AM.png)\n\n**Storyboard ID** を定義しておくとテストコードから ViewController を初期化することができます。\n\n```swift\n// Swift\n\nvar viewController: BananaViewController!\nbeforeEach {\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  let storyboard = UIStoryboard(name: \"Main\", bundle: nil)\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = \n    storyboard.instantiateViewControllerWithIdentifier(\n      \"BananaViewControllerID\") as! BananaViewController\n}\n```\n\n```objc\n// Objective-C\n\n__block BananaViewController *viewController = nil;\nbeforeEach(^{\n  // 1. Instantiate the storyboard. By default, it's name is \"Main.storyboard\".\n  //    You'll need to use a different string here if the name of your storyboard is different.\n  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@\"Main\" bundle:nil];\n  // 2. Use the storyboard to instantiate the view controller.\n  viewController = [storyboard instantiateViewControllerWithIdentifier:@\"BananaViewControllerID\"];\n});\n```\n\n## ボタンをタップされた、などの UIControl Events を発火させる\n\nボタンや他の UIControl を継承したクラスは UIControl イベントを発火させる関数を持っています。\nボタンをタップされた時の動作をテストするにはこのように書くことができます：\n\n```swift\n// Swift\n\ndescribe(\"the 'more bananas' button\") {\n  it(\"increments the banana count label when tapped\") {\n    viewController.moreButton.sendActionsForControlEvents(\n      UIControlEvents.TouchUpInside)\n    expect(viewController.bananaCountLabel.text).to(equal(\"1\"))\n  }\n}\n```\n\n```objc\n// Objective-C\n\ndescribe(@\"the 'more bananas' button\", ^{\n  it(@\"increments the banana count label when tapped\", ^{\n    [viewController.moreButton sendActionsForControlEvents:UIControlEventTouchUpInside];\n    expect(viewController.bananaCountLabel.text).to(equal(@\"1\"));\n  });\n});\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Documentation/zh-cn/SettingUpYourXcodeProject.md",
    "content": "# 在项目中添加测试\n\n除了命令行项目以外, 当你在Xcode 7中创建新项目时, 单元测试Target默认是包含的. [为命令行项目设置测试Target](#setting-up-a-test-target-for-a-command-line-tool-project). 要编写单元测试, 你需要能够在测试Target中使用主target代码.\n\n## 用Swift测试Swift项目代码\n\n为了测试用Swift写的代码, 你需要做以下两件事:\n\n1. 将`.xcodeproj`中的 \"defines module\" 设置为 `YES`.\n\n  * Xcode中具体操作方法: 选中你的项目, 选择 \"Build Settings\" 选项列表, 选中 \"Defines Modules\" 行, 修改其值为 \"Yes\".\n\n2. 在单元测试中添加 `@testable import YourAppModuleName`. 这会把所有 `public` 和 `internal` (默认访问修饰符) 修饰符暴露给测试代码. 但`private` 修饰符仍旧保持私有.\n\n```swift\n// MyAppTests.swift\n\nimport XCTest\n@testable import MyModule\n\nclass MyClassTests: XCTestCase {\n  // ...\n}\n```\n\n> 一些开发者提倡添加Swift源文件至测试target. 然而这会导致以下问题 [subtle, hard-to-diagnose errors](https://github.com/Quick/Quick/issues/91), 所以并不推荐.\n\n## 使用Swift测试Objective-C项目代码\n\n1. 给你的测试target添加bridging header文件.\n2. 在bridging header文件中, 引入待测试的代码文件.\n\n```objc\n// MyAppTests-BridgingHeader.h\n\n#import \"MyClass.h\"\n```\n\n现在就可以在Swift测试文件中使用 `MyClass.h` 中的代码了\n\n## 使用Objective-C测试Swift项目代码\n\n1. 使用 `@objc` 桥接需要使用Objective-C测试的Swift类和方法.\n2. 在单元测试中引入模块的Swift头文件.\n\n```objc\n@import XCTest;\n#import \"MyModule-Swift.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n## 使用Objective-C测试Objective-C项目代码\n\n在测试target中引入待测试的代码文件:\n\n```objc\n// MyAppTests.m\n\n@import XCTest;\n#import \"MyClass.h\"\n\n@interface MyClassTests: XCTestCase\n// ...\n@end\n```\n\n### 为命令行项目设置测试Target\n\n1. 在项目窗格中添加一个项目target.\n2. 选择 \"OS X Unit Testing Bundle\".\n3. 编辑主target的 scheme.\n4. 选中 \"Test\" 条目, 单击 \"Info\" 下的 \"+\", 选择需要测试的 bundle.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/.gitignore",
    "content": ".DS_Store\nxcuserdata/\nbuild/\n.idea\nDerivedData/\nNimble.framework.zip\n\n# Carthage\n#\n# Add this line if you want to avoid checking in source code from Carthage dependencies.\n# Carthage/Checkouts\n\nCarthage/Build\n\n# Swift Package Manager\n#\n# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.\n# Packages/\n.build/\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/.ruby-version",
    "content": "system\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-02-25-a\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/.travis.yml",
    "content": "osx_image: xcode7.3\nlanguage: generic\nmatrix:\n  include:\n    - os: osx\n      sudo: required\n      env: TYPE=podspec\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 TYPE=ios\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=9.0 TYPE=tvos\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 TYPE=osx\n    - os: osx\n      env: TYPE=swiftpm\n    - os: osx\n      env: NIMBLE_RUNTIME_IOS_SDK_VERSION=10.0 TYPE=ios\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_TVOS_SDK_VERSION=10.0 TYPE=tvos\n      osx_image: xcode8\n    - os: osx\n      env: NIMBLE_RUNTIME_OSX_SDK_VERSION=10.12 TYPE=osx\n      osx_image: xcode8\n    - os: linux\n      dist: trusty\n      sudo: required\n      env: TYPE=swiftpm\ninstall:\n  - if [[ \"$TYPE\" == \"swiftpm\" ]]; then eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"; fi\n  - if [[ \"$TYPE\" == \"podspec\" ]]; then sudo gem install bundler; bundle install; fi\nscript:\n  - ./test $TYPE\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/CONTRIBUTING.md",
    "content": "<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Welcome to Nimble!](#welcome-to-nimble!)\n  - [Reporting Bugs](#reporting-bugs)\n  - [Building the Project](#building-the-project)\n  - [Pull Requests](#pull-requests)\n    - [Style Conventions](#style-conventions)\n  - [Core Members](#core-members)\n    - [Code of Conduct](#code-of-conduct)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Welcome to Nimble!\n\nWe're building a testing framework for a new generation of Swift and\nObjective-C developers.\n\nNimble should be easy to use and easy to maintain. Let's keep things\nsimple and well-tested.\n\n**tl;dr:** If you've added a file to the project, make sure it's\nincluded in both the OS X and iOS targets.\n\n## Reporting Bugs\n\nNothing is off-limits. If you're having a problem, we want to hear about\nit.\n\n- See a crash? File an issue.\n- Code isn't compiling, but you don't know why? Sounds like you should\n  submit a new issue, bud.\n- Went to the kitchen, only to forget why you went in the first place?\n  Better submit an issue.\n\nBe sure to include in your issue:\n\n- Your Xcode version (eg - Xcode 7.0.1 7A1001)\n- Your version of Nimble (eg - v2.0.0 or git sha `20a3f3b4e63cc8d97c92c4164bf36f2a2c9a6e1b`)\n- What are the steps to reproduce this issue?\n- What platform are you using? (eg - OS X, iOS, watchOS, tvOS)\n- If the problem is on a UI Testing Bundle, Unit Testing Bundle, or some other target configuration\n- Are you using carthage or cocoapods?\n\n## Building the Project\n\n- Use `Nimble.xcodeproj` to work on Nimble.\n\n## Pull Requests\n\n- Nothing is trivial. Submit pull requests for anything: typos,\n  whitespace, you name it.\n- Not all pull requests will be merged, but all will be acknowledged. If\n  no one has provided feedback on your request, ping one of the owners\n  by name.\n- Make sure your pull request includes any necessary updates to the\n  README or other documentation.\n- Be sure the unit tests for both the OS X and iOS targets of Nimble\n  before submitting your pull request. You can run all the OS X & iOS unit\n  tests using `./test`.\n- If you've added a file to the project, make sure it's included in both\n  the OS X and iOS targets.\n- The `master` branch will always support the stable Xcode version. Other\n  branches will point to their corresponding versions they support.\n- If you're making a configuration change, make sure to edit both the xcode\n  project and the podspec file.\n\n### Style Conventions\n\n- Indent using 4 spaces.\n- Keep lines 100 characters or shorter. Break long statements into\n  shorter ones over multiple lines.\n- In Objective-C, use `#pragma mark -` to mark public, internal,\n  protocol, and superclass methods.\n\n## Core Members\n\nIf a few of your pull requests have been merged, and you'd like a\ncontrolling stake in the project, file an issue asking for write access\nto the repository.\n\n### Code of Conduct\n\nYour conduct as a core member is your own responsibility, but here are\nsome \"ground rules\":\n\n- Feel free to push whatever you want to master, and (if you have\n  ownership permissions) to create any repositories you'd like.\n\n  Ideally, however, all changes should be submitted as GitHub pull\n  requests. No one should merge their own pull request, unless no\n  other core members respond for at least a few days.\n\n  If you'd like to create a new repository, it'd be nice if you created\n  a GitHub issue and gathered some feedback first.\n\n- It'd be awesome if you could review, provide feedback on, and close\n  issues or pull requests submitted to the project. Please provide kind,\n  constructive feedback. Please don't be sarcastic or snarky.\n\n### Creating a Release\n\nThe process is relatively straight forward, but here's is a useful checklist for tagging:\n\n- Look at changes from the previously tagged release and write release notes: `git log v0.4.0...HEAD`\n- Run the release script: `./script/release A.B.C release-notes-file`\n- The script will prompt you to create a new [GitHub release](https://github.com/Quick/Nimble/releases).\n  - Use the same release notes you created for the tag, but tweak up formatting for GitHub.\n- Update [Quick](https://github.com/Quick/Quick)\n  - Update Quick's submodule reference to the newly released Nimble version\n  - Update Nimble version in `README.md` and Documentation in [Quick](https://github.com/Quick/Quick) if it's not a patch version update.\n- Announce!\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Gemfile",
    "content": "# A sample Gemfile\nsource \"https://rubygems.org\"\n\ngem 'cocoapods'\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/LICENSE.md",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014 Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Nimble.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Nimble\"\n  s.version      = \"4.1.0\"\n  s.summary      = \"A Matcher Framework for Swift and Objective-C\"\n  s.description  = <<-DESC\n                   Use Nimble to express the expected outcomes of Swift or Objective-C expressions. Inspired by Cedar.\n                   DESC\n  s.homepage     = \"https://github.com/Quick/Nimble\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE.md\" }\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = \"9.0\"\n  s.source       = { :git => \"https://github.com/Quick/Nimble.git\", :tag => \"v#{s.version}\" }\n\n  s.source_files = \"Sources/Nimble/**/*.{swift,h,m}\"\n  s.private_header_files = \"Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h\"\n  s.exclude_files = \"Sources/Nimble/Adapters/NonObjectiveC/*.swift\"\n  s.weak_framework = \"XCTest\"\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO', 'OTHER_LDFLAGS' => '-weak-lswiftXCTest', 'FRAMEWORK_SEARCH_PATHS' => '$(inherited) \"$(PLATFORM_DIR)/Developer/Library/Frameworks\"' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BD1CA89EDB00A34BF2 /* DSL.m */; };\n\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */; };\n\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */; };\n\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */; };\n\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */; };\n\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BC1CA89EDB00A34BF2 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */; };\n\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */; };\n\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F1A74291940169200FFFC47 /* Nimble.framework */; };\n\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */; };\n\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD251968AB07008ED995 /* Functional.swift */; };\n\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD271968AB07008ED995 /* SourceLocation.swift */; };\n\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD281968AB07008ED995 /* Stringers.swift */; };\n\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */; };\n\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */; };\n\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */; };\n\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F299EAA19627B2D002641AF /* BeEmptyTest.swift */; };\n\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */; };\n\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F91DD301C74BF61002C309F /* BeVoid.swift */; };\n\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F925EAD195C0D6300ED456B /* Nimble.framework */; };\n\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F1A742E1940169200FFFC47 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F14FB63194180C5009F2A08 /* utils.swift */; };\n\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE5195C121200ED456B /* AsynchronousTest.swift */; };\n\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */; };\n\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */; };\n\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EEE195C136500ED456B /* BeLogicalTest.swift */; };\n\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF5195C147800ED456B /* BeCloseToTest.swift */; };\n\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EF8195C175000ED456B /* BeNilTest.swift */; };\n\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFB195C186800ED456B /* BeginWithTest.swift */; };\n\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925EFE195C187600ED456B /* EndWithTest.swift */; };\n\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F01195C189500ED456B /* ContainTest.swift */; };\n\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F04195C18B700ED456B /* EqualTest.swift */; };\n\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */; };\n\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0A195C18E100ED456B /* BeLessThanTest.swift */; };\n\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */; };\n\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */; };\n\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */; };\n\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */; };\n\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */; };\n\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FCF91521C61C8A400B15DCB /* PostNotification.swift */; };\n\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */; };\n\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */; };\n\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */; };\n\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD081968AB07008ED995 /* DSL.swift */; };\n\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD091968AB07008ED995 /* Expectation.swift */; };\n\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0A1968AB07008ED995 /* Expression.swift */; };\n\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */; };\n\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */; };\n\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */; };\n\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */; };\n\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD101968AB07008ED995 /* BeEmpty.swift */; };\n\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD111968AB07008ED995 /* BeginWith.swift */; };\n\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */; };\n\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */; };\n\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */; };\n\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD151968AB07008ED995 /* BeLessThan.swift */; };\n\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */; };\n\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD171968AB07008ED995 /* BeLogical.swift */; };\n\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD181968AB07008ED995 /* BeNil.swift */; };\n\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1A1968AB07008ED995 /* Contain.swift */; };\n\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1B1968AB07008ED995 /* EndWith.swift */; };\n\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1C1968AB07008ED995 /* Equal.swift */; };\n\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */; };\n\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD1E1968AB07008ED995 /* RaisesException.swift */; };\n\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD8CD261968AB07008ED995 /* Async.swift */; };\n\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */; };\n\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59621B551ED2002D767E /* ThrowErrorTest.swift */; };\n\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EA59651B551EE6002D767E /* ThrowError.swift */; };\n\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347155C91C337C8900549F03 /* XCTestCaseProvider.swift */; };\n\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1341B9E085700C7B8DA /* HaveCount.swift */; };\n\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */; };\n\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */; };\n\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */; };\n\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */; };\n\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */; };\n\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4BA9AC1C88DDB500B73906 /* Errors.swift */; };\n\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE441C80BF8000B94CD3 /* MatchError.swift */; };\n\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */; };\n\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */; };\n\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */; };\n\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */; };\n\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */; };\n\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */; };\n\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */; };\n\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */; };\n\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */; };\n\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */; };\n\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */; };\n\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */; };\n\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */; };\n\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */; };\n\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */; };\n\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */; };\n\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */; };\n\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */; };\n\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56931A3B346F009E1637 /* ObjCContainTest.m */; };\n\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */; };\n\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */; };\n\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */ = {isa = PBXBuildFile; fileRef = 4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */; };\n\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */; };\n\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */; };\n\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */; };\n\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */; };\n\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9E8C811A414BB9002633C2 /* DSL+Wait.swift */; };\n\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD72EC631A93874A002F7651 /* AllPassTest.swift */; };\n\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */; };\n\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB1BC781A92235600F743C3 /* AllPass.swift */; };\n\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EC19FE43C200E9D9FE /* Match.swift */; };\n\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB4D5EF19FE442800E9D9FE /* MatchTest.swift */; };\n\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */ = {isa = PBXBuildFile; fileRef = DDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */; };\n\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = F8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t1F1A74361940169200FFFC47 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F5DF1541BDCA0CE00C3A531;\n\t\t\tremoteInfo = \"Nimble-tvOS\";\n\t\t};\n\t\t1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = \"Nimble-iOS\";\n\t\t};\n\t\t1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F1A74281940169200FFFC47;\n\t\t\tremoteInfo = Nimble;\n\t\t};\n\t\t1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n\t\t1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 1F1A74201940169200FFFC47 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F925EAC195C0D6300ED456B;\n\t\t\tremoteInfo = \"Nimble-OSX\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectWithLazyProperty.swift; sourceTree = \"<group>\"; };\n\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SynchronousTests.swift; sourceTree = \"<group>\"; };\n\t\t1F14FB63194180C5009F2A08 /* utils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = utils.swift; sourceTree = \"<group>\"; };\n\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DSL.h; sourceTree = \"<group>\"; };\n\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DSL.m; sourceTree = \"<group>\"; };\n\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBExceptionCapture.h; sourceTree = \"<group>\"; };\n\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBExceptionCapture.m; sourceTree = \"<group>\"; };\n\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NMBStringify.h; sourceTree = \"<group>\"; };\n\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NMBStringify.m; sourceTree = \"<group>\"; };\n\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBExpectation.swift; sourceTree = \"<group>\"; };\n\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NMBObjCMatcher.swift; sourceTree = \"<group>\"; };\n\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExceptionCapture.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsyncMatcherWrapper.swift; sourceTree = \"<group>\"; };\n\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherFunc.swift; sourceTree = \"<group>\"; };\n\t\t1F1A74291940169200FFFC47 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A742D1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1A742E1940169200FFFC47 /* Nimble.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Nimble.h; sourceTree = \"<group>\"; };\n\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F1A743A1940169200FFFC47 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAKindOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F2752D119445B8400052A26 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; lineEnding = 0; path = README.md; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.markdown; };\n\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmptyTest.swift; sourceTree = \"<group>\"; };\n\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAsyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NimbleSpecHelper.h; sourceTree = \"<group>\"; };\n\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeAnInstanceOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeKindOfTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeCloseToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeginWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeGreaterThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeIdenticalToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeLessThanOrEqualToTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTruthyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalsyTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeTrueTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeFalseTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeNilTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCContainTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEndWithTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCEqualTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCMatchTest.m; sourceTree = \"<group>\"; };\n\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCRaiseExceptionTest.m; sourceTree = \"<group>\"; };\n\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSyncTest.m; sourceTree = \"<group>\"; };\n\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoidTest.swift; sourceTree = \"<group>\"; };\n\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeVoid.swift; sourceTree = \"<group>\"; };\n\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NimbleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AsynchronousTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOfTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RaisesExceptionTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLogicalTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeNilTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeginWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWithTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F01195C189500ED456B /* ContainTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContainTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F04195C18B700ED456B /* EqualTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EqualTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeLessThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeGreaterThanOrEqualToTest.swift; sourceTree = \"<group>\"; };\n\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCBeEmptyTest.m; sourceTree = \"<group>\"; };\n\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToTest.swift; sourceTree = \"<group>\"; };\n\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleEnvironment.swift; sourceTree = \"<group>\"; };\n\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotificationTest.swift; sourceTree = \"<group>\"; };\n\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostNotification.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionRecorder.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AdapterProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NimbleXCTestHandler.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD081968AB07008ED995 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expectation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Expression.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FailureMessage.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeAnInstanceOf.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeAKindOf.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeCloseTo.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeEmpty.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeginWith.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeGreaterThanOrEqualTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeIdenticalTo.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThan.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLessThanOrEqual.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeLogical.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = BeNil.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Contain.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EndWith.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Equal.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherProtocols.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = RaisesException.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\t1FD8CD251968AB07008ED995 /* Functional.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Functional.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD261968AB07008ED995 /* Async.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Async.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SourceLocation.swift; sourceTree = \"<group>\"; };\n\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Stringers.swift; sourceTree = \"<group>\"; };\n\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssertionDispatcher.swift; sourceTree = \"<group>\"; };\n\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowErrorTest.swift; sourceTree = \"<group>\"; };\n\t\t29EA59651B551EE6002D767E /* ThrowError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThrowError.swift; sourceTree = \"<group>\"; };\n\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCount.swift; sourceTree = \"<group>\"; };\n\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HaveCountTest.swift; sourceTree = \"<group>\"; };\n\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCHaveCount.m; sourceTree = \"<group>\"; };\n\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOfTest.swift; sourceTree = \"<group>\"; };\n\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SatisfyAnyOf.swift; sourceTree = \"<group>\"; };\n\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCSatisfyAnyOfTest.m; sourceTree = \"<group>\"; };\n\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjcStringersTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCUserDescriptionTest.m; sourceTree = \"<group>\"; };\n\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UserDescriptionTest.swift; sourceTree = \"<group>\"; };\n\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchError.swift; sourceTree = \"<group>\"; };\n\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchErrorTest.swift; sourceTree = \"<group>\"; };\n\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"DSL+Wait.swift\"; sourceTree = \"<group>\"; };\n\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPassTest.swift; sourceTree = \"<group>\"; };\n\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeIdenticalToObjectTest.swift; sourceTree = \"<group>\"; };\n\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllPass.swift; sourceTree = \"<group>\"; };\n\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Match.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchTest.swift; sourceTree = \"<group>\"; };\n\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjCAllPassTest.m; sourceTree = \"<group>\"; };\n\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+Register.m\"; sourceTree = \"<group>\"; };\n\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CurrentTestCaseTracker.h; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F1A74251940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74311940169200FFFC47 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1A74351940169200FFFC47 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF15F1BDCA0CE00C3A531 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA9195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB4195C0D6300ED456B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F925EB8195C0D6300ED456B /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F14FB61194180A7009F2A08 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F14FB63194180C5009F2A08 /* utils.swift */,\n\t\t\t\t1F0648CB19639F5A001F9C46 /* ObjectWithLazyProperty.swift */,\n\t\t\t\t347155C91C337C8900549F03 /* XCTestCaseProvider.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8A1BE321CB3777F00031679 /* CurrentTestCaseTracker.h */,\n\t\t\t\t1F1871BC1CA89EDB00A34BF2 /* DSL.h */,\n\t\t\t\t1F1871BD1CA89EDB00A34BF2 /* DSL.m */,\n\t\t\t\t1F1871BE1CA89EDB00A34BF2 /* NMBExceptionCapture.h */,\n\t\t\t\t1F1871BF1CA89EDB00A34BF2 /* NMBExceptionCapture.m */,\n\t\t\t\t1F1871C21CA89EDB00A34BF2 /* NMBExpectation.swift */,\n\t\t\t\t1F1871C31CA89EDB00A34BF2 /* NMBObjCMatcher.swift */,\n\t\t\t\t1F1871C01CA89EDB00A34BF2 /* NMBStringify.h */,\n\t\t\t\t1F1871C11CA89EDB00A34BF2 /* NMBStringify.m */,\n\t\t\t\tF8A1BE2B1CB3710900031679 /* XCTestObservationCenter+Register.m */,\n\t\t\t);\n\t\t\tpath = ObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1871CD1CA89EE000A34BF2 /* ExceptionCapture.swift */,\n\t\t\t);\n\t\t\tpath = NonObjectiveC;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A741F1940169200FFFC47 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F2752D119445B8400052A26 /* README.md */,\n\t\t\t\t1F1A742B1940169200FFFC47 /* Nimble */,\n\t\t\t\t1F1A74381940169200FFFC47 /* NimbleTests */,\n\t\t\t\t1F1A742A1940169200FFFC47 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742A1940169200FFFC47 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A74291940169200FFFC47 /* Nimble.framework */,\n\t\t\t\t1F1A74341940169200FFFC47 /* NimbleTests.xctest */,\n\t\t\t\t1F925EAD195C0D6300ED456B /* Nimble.framework */,\n\t\t\t\t1F925EB7195C0D6300ED456B /* NimbleTests.xctest */,\n\t\t\t\t1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */,\n\t\t\t\t1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A742B1940169200FFFC47 /* Nimble */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD041968AB07008ED995 /* Adapters */,\n\t\t\t\t1FD8CD081968AB07008ED995 /* DSL.swift */,\n\t\t\t\tDA9E8C811A414BB9002633C2 /* DSL+Wait.swift */,\n\t\t\t\t1FD8CD091968AB07008ED995 /* Expectation.swift */,\n\t\t\t\t1FD8CD0A1968AB07008ED995 /* Expression.swift */,\n\t\t\t\t1FD8CD0B1968AB07008ED995 /* FailureMessage.swift */,\n\t\t\t\t1F1A742D1940169200FFFC47 /* Info.plist */,\n\t\t\t\t1FD8CD0C1968AB07008ED995 /* Matchers */,\n\t\t\t\t1F1A742E1940169200FFFC47 /* Nimble.h */,\n\t\t\t\t1FD8CD241968AB07008ED995 /* Utils */,\n\t\t\t);\n\t\t\tname = Nimble;\n\t\t\tpath = Sources/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74381940169200FFFC47 /* NimbleTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F925EE5195C121200ED456B /* AsynchronousTest.swift */,\n\t\t\t\t1F0648D31963AAB2001F9C46 /* SynchronousTests.swift */,\n\t\t\t\t965B0D0B1B62C06D0005AE66 /* UserDescriptionTest.swift */,\n\t\t\t\t1FFD729A1963FC8200CD29A2 /* objc */,\n\t\t\t\t1F14FB61194180A7009F2A08 /* Helpers */,\n\t\t\t\t1F925EE3195C11B000ED456B /* Matchers */,\n\t\t\t\t1F1A74391940169200FFFC47 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = NimbleTests;\n\t\t\tpath = Tests/Nimble;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F1A74391940169200FFFC47 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F1A743A1940169200FFFC47 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1F925EE3195C11B000ED456B /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDD72EC631A93874A002F7651 /* AllPassTest.swift */,\n\t\t\t\t1F1B5AD31963E13900CA8BF9 /* BeAKindOfTest.swift */,\n\t\t\t\t1F925EE8195C124400ED456B /* BeAnInstanceOfTest.swift */,\n\t\t\t\t1F925EF5195C147800ED456B /* BeCloseToTest.swift */,\n\t\t\t\t1F299EAA19627B2D002641AF /* BeEmptyTest.swift */,\n\t\t\t\t1F925EFB195C186800ED456B /* BeginWithTest.swift */,\n\t\t\t\t1F925F10195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift */,\n\t\t\t\t1F925F07195C18CF00ED456B /* BeGreaterThanTest.swift */,\n\t\t\t\tDD9A9A8D19CF413800706F49 /* BeIdenticalToObjectTest.swift */,\n\t\t\t\t1FB90097195EC4B8001D7FAE /* BeIdenticalToTest.swift */,\n\t\t\t\t1F925F0D195C18F500ED456B /* BeLessThanOrEqualToTest.swift */,\n\t\t\t\t1F925F0A195C18E100ED456B /* BeLessThanTest.swift */,\n\t\t\t\t1F925EEE195C136500ED456B /* BeLogicalTest.swift */,\n\t\t\t\t1F925EF8195C175000ED456B /* BeNilTest.swift */,\n\t\t\t\t1F91DD2C1C74BF36002C309F /* BeVoidTest.swift */,\n\t\t\t\t1F925F01195C189500ED456B /* ContainTest.swift */,\n\t\t\t\t1F925EFE195C187600ED456B /* EndWithTest.swift */,\n\t\t\t\t1F925F04195C18B700ED456B /* EqualTest.swift */,\n\t\t\t\t472FD1361B9E094B00C7B8DA /* HaveCountTest.swift */,\n\t\t\t\tDDB4D5EF19FE442800E9D9FE /* MatchTest.swift */,\n\t\t\t\t1F925EEB195C12C800ED456B /* RaisesExceptionTest.swift */,\n\t\t\t\t29EA59621B551ED2002D767E /* ThrowErrorTest.swift */,\n\t\t\t\t7B5358B91C3846C900A23FAA /* SatisfyAnyOfTest.swift */,\n\t\t\t\t1FCF914E1C61C85A00B15DCB /* PostNotificationTest.swift */,\n\t\t\t\tAE7ADE481C80C00D00B94CD3 /* MatchErrorTest.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD041968AB07008ED995 /* Adapters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD061968AB07008ED995 /* AdapterProtocols.swift */,\n\t\t\t\t1FDBD8661AF8A4FF0089F27B /* AssertionDispatcher.swift */,\n\t\t\t\t1FD8CD051968AB07008ED995 /* AssertionRecorder.swift */,\n\t\t\t\t1FC494A91C29CBA40010975C /* NimbleEnvironment.swift */,\n\t\t\t\t1FD8CD071968AB07008ED995 /* NimbleXCTestHandler.swift */,\n\t\t\t\t1F1871BA1CA89E2500A34BF2 /* NonObjectiveC */,\n\t\t\t\t1F1871B91CA89E1B00A34BF2 /* ObjectiveC */,\n\t\t\t);\n\t\t\tpath = Adapters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD0C1968AB07008ED995 /* Matchers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDDB1BC781A92235600F743C3 /* AllPass.swift */,\n\t\t\t\t1F1871E31CA89FB600A34BF2 /* AsyncMatcherWrapper.swift */,\n\t\t\t\t1FD8CD0E1968AB07008ED995 /* BeAKindOf.swift */,\n\t\t\t\t1FD8CD0D1968AB07008ED995 /* BeAnInstanceOf.swift */,\n\t\t\t\t1FD8CD0F1968AB07008ED995 /* BeCloseTo.swift */,\n\t\t\t\t1FD8CD101968AB07008ED995 /* BeEmpty.swift */,\n\t\t\t\t1FD8CD111968AB07008ED995 /* BeginWith.swift */,\n\t\t\t\t1FD8CD121968AB07008ED995 /* BeGreaterThan.swift */,\n\t\t\t\t1FD8CD131968AB07008ED995 /* BeGreaterThanOrEqualTo.swift */,\n\t\t\t\t1FD8CD141968AB07008ED995 /* BeIdenticalTo.swift */,\n\t\t\t\t1FD8CD151968AB07008ED995 /* BeLessThan.swift */,\n\t\t\t\t1FD8CD161968AB07008ED995 /* BeLessThanOrEqual.swift */,\n\t\t\t\t1FD8CD171968AB07008ED995 /* BeLogical.swift */,\n\t\t\t\t1FD8CD181968AB07008ED995 /* BeNil.swift */,\n\t\t\t\t1F91DD301C74BF61002C309F /* BeVoid.swift */,\n\t\t\t\t1FD8CD1A1968AB07008ED995 /* Contain.swift */,\n\t\t\t\t1FD8CD1B1968AB07008ED995 /* EndWith.swift */,\n\t\t\t\t1FD8CD1C1968AB07008ED995 /* Equal.swift */,\n\t\t\t\t472FD1341B9E085700C7B8DA /* HaveCount.swift */,\n\t\t\t\tDDB4D5EC19FE43C200E9D9FE /* Match.swift */,\n\t\t\t\t1F1871E51CA89FCD00A34BF2 /* MatcherFunc.swift */,\n\t\t\t\t1FD8CD1D1968AB07008ED995 /* MatcherProtocols.swift */,\n\t\t\t\tAE7ADE441C80BF8000B94CD3 /* MatchError.swift */,\n\t\t\t\t1FCF91521C61C8A400B15DCB /* PostNotification.swift */,\n\t\t\t\t1FD8CD1E1968AB07008ED995 /* RaisesException.swift */,\n\t\t\t\t7B5358BD1C38479700A23FAA /* SatisfyAnyOf.swift */,\n\t\t\t\t29EA59651B551EE6002D767E /* ThrowError.swift */,\n\t\t\t);\n\t\t\tpath = Matchers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FD8CD241968AB07008ED995 /* Utils */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1FD8CD251968AB07008ED995 /* Functional.swift */,\n\t\t\t\t1FD8CD261968AB07008ED995 /* Async.swift */,\n\t\t\t\t1FD8CD271968AB07008ED995 /* SourceLocation.swift */,\n\t\t\t\t1FD8CD281968AB07008ED995 /* Stringers.swift */,\n\t\t\t\tAE4BA9AC1C88DDB500B73906 /* Errors.swift */,\n\t\t\t);\n\t\t\tpath = Utils;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1FFD729A1963FC8200CD29A2 /* objc */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F4A56681A3B3074009E1637 /* NimbleSpecHelper.h */,\n\t\t\t\t1F4A56651A3B305F009E1637 /* ObjCAsyncTest.m */,\n\t\t\t\t1F8A37AF1B7C5042001C8357 /* ObjCSyncTest.m */,\n\t\t\t\t1F4A56691A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m */,\n\t\t\t\t1F4A566F1A3B319F009E1637 /* ObjCBeCloseToTest.m */,\n\t\t\t\t1F9DB8FA1A74E793002E96AD /* ObjCBeEmptyTest.m */,\n\t\t\t\t1F4A568D1A3B342B009E1637 /* ObjCBeFalseTest.m */,\n\t\t\t\t1F4A56871A3B33CB009E1637 /* ObjCBeFalsyTest.m */,\n\t\t\t\t1F4A56721A3B3210009E1637 /* ObjCBeginWithTest.m */,\n\t\t\t\t1F4A56781A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m */,\n\t\t\t\t1F4A56751A3B3253009E1637 /* ObjCBeGreaterThanTest.m */,\n\t\t\t\t1F4A567B1A3B3311009E1637 /* ObjCBeIdenticalToTest.m */,\n\t\t\t\t1F4A566C1A3B3159009E1637 /* ObjCBeKindOfTest.m */,\n\t\t\t\t1F4A56811A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m */,\n\t\t\t\t1F4A567E1A3B333F009E1637 /* ObjCBeLessThanTest.m */,\n\t\t\t\t1F4A56901A3B344A009E1637 /* ObjCBeNilTest.m */,\n\t\t\t\t1F4A568A1A3B3407009E1637 /* ObjCBeTrueTest.m */,\n\t\t\t\t1F4A56841A3B33A0009E1637 /* ObjCBeTruthyTest.m */,\n\t\t\t\t1F4A56931A3B346F009E1637 /* ObjCContainTest.m */,\n\t\t\t\t1F4A56961A3B34AA009E1637 /* ObjCEndWithTest.m */,\n\t\t\t\t1F4A56991A3B3539009E1637 /* ObjCEqualTest.m */,\n\t\t\t\t4793854C1BA0BB2500296F85 /* ObjCHaveCount.m */,\n\t\t\t\t1F4A569C1A3B3565009E1637 /* ObjCMatchTest.m */,\n\t\t\t\t1F4A569F1A3B359E009E1637 /* ObjCRaiseExceptionTest.m */,\n\t\t\t\t965B0D081B62B8ED0005AE66 /* ObjCUserDescriptionTest.m */,\n\t\t\t\tDDEFAEB31A93CBE6005CA37A /* ObjCAllPassTest.m */,\n\t\t\t\t7B5358C11C39155600A23FAA /* ObjCSatisfyAnyOfTest.m */,\n\t\t\t\t8DF1C3F61C94FC75004B2D36 /* ObjcStringersTest.m */,\n\t\t\t);\n\t\t\tpath = objc;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F1A74261940169200FFFC47 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871C91CA89EDB00A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871C51CA89EDB00A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871C71CA89EDB00A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F1A742F1940169200FFFC47 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871E21CA89EF600A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871E01CA89EF600A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871E11CA89EF600A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F5DF1AE1BDCA17600C3A531 /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAA195C0D6300ED456B /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F1871DF1CA89EF500A34BF2 /* NMBStringify.h in Headers */,\n\t\t\t\t1F1871DD1CA89EF500A34BF2 /* DSL.h in Headers */,\n\t\t\t\t1F1871DE1CA89EF500A34BF2 /* NMBExceptionCapture.h in Headers */,\n\t\t\t\t1F925EC7195C0DD100ED456B /* Nimble.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74241940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74251940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74261940169200FFFC47 /* Headers */,\n\t\t\t\t1F1A74271940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-iOS\";\n\t\t\tproductName = \"Nimble-iOS\";\n\t\t\tproductReference = 1F1A74291940169200FFFC47 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F1A74301940169200FFFC47 /* Sources */,\n\t\t\t\t1F1A74311940169200FFFC47 /* Frameworks */,\n\t\t\t\t1F1A74321940169200FFFC47 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */,\n\t\t\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */,\n\t\t\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-iOSTests\";\n\t\t\tproductName = \"Nimble-iOSTests\";\n\t\t\tproductReference = 1F1A74341940169200FFFC47 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF1511BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF1521BDCA0CE00C3A531 /* Headers */,\n\t\t\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-tvOS\";\n\t\t\tproductName = \"Nimble-tvOS\";\n\t\t\tproductReference = 1F5DF1551BDCA0CE00C3A531 /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */,\n\t\t\t\t1F5DF15B1BDCA0CE00C3A531 /* Frameworks */,\n\t\t\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-tvOSTests\";\n\t\t\tproductName = \"Nimble-tvOSTests\";\n\t\t\tproductReference = 1F5DF15E1BDCA0CE00C3A531 /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EA8195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EA9195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EAA195C0D6300ED456B /* Headers */,\n\t\t\t\t1F925EAB195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Nimble-OSX\";\n\t\t\tproductName = \"Nimble-OSX\";\n\t\t\tproductReference = 1F925EAD195C0D6300ED456B /* Nimble.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F925EB3195C0D6300ED456B /* Sources */,\n\t\t\t\t1F925EB4195C0D6300ED456B /* Frameworks */,\n\t\t\t\t1F925EB5195C0D6300ED456B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */,\n\t\t\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */,\n\t\t\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Nimble-OSXTests\";\n\t\t\tproductName = \"Nimble-OSXTests\";\n\t\t\tproductReference = 1F925EB7195C0D6300ED456B /* NimbleTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t1F1A74201940169200FFFC47 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0730;\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = \"Jeff Hui\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F1A74281940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F1A74331940169200FFFC47 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F1A74281940169200FFFC47;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF1541BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F5DF15D1BDCA0CE00C3A531 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EAC195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F925EB6195C0D6300ED456B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 1F925EAC195C0D6300ED456B;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 1F1A741F1940169200FFFC47;\n\t\t\tproductRefGroup = 1F1A742A1940169200FFFC47 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t1F1A74281940169200FFFC47 /* Nimble-iOS */,\n\t\t\t\t1F1A74331940169200FFFC47 /* Nimble-iOSTests */,\n\t\t\t\t1F925EAC195C0D6300ED456B /* Nimble-OSX */,\n\t\t\t\t1F925EB6195C0D6300ED456B /* Nimble-OSXTests */,\n\t\t\t\t1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */,\n\t\t\t\t1F5DF15D1BDCA0CE00C3A531 /* Nimble-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F1A74271940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74321940169200FFFC47 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1531BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15C1BDCA0CE00C3A531 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EAB195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB5195C0D6300ED456B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F1A74241940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD401968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871C81CA89EDB00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD361968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD321968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728F1A1B344000EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728D1A1B343D00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4E1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1FDBD8671AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728A1A1B343800EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AD1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3C1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD501968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871CB1CA89EDB00A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C821A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC791A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3E1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\tDDB4D5ED19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t1F91DD311C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91531C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1FD8CD2E1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t29EA59661B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5A1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4C1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F1871CC1CA89EDB00A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD461968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE2F1CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871C61CA89EDB00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1FD8CD301968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\tAE7ADE451C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AA1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5E1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD561968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD481968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD441968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1FD8CD4A1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E61CA89FCD00A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD421968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871E41CA89FB600A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F1871CA1CA89EDB00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD521968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6A1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD581968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5C1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD341968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BE1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD381968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3A1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1351B9E085700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F1A74301940169200FFFC47 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569A1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EEC195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925EFF195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD41963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0E195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56661A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFC195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F14FB64194180C5009F2A08 /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F019FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56731A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56821A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F71C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F02195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56881A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568E1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F11195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EEF195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A01A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0B195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FB1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90098195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2D1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56761A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EF9195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56701A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56971A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567C1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0C1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF914F1C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D091B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56911A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B01B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56941A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAB19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF6195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A56791A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE491C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568B1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB41A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A567F1A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE6195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CC19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56851A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A8F19CF439B00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D41963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CA1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854D1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F08195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BA1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F05195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566D1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC641A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C51C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569D1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EE9195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59631B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566A1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13B1B9E0CFE00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF1501BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F5DF1791BDCA0F500C3A531 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F5DF16C1BDCA0F500C3A531 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F1871D71CA89EEF00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1F5DF1881BDCA0F500C3A531 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1F5DF16E1BDCA0F500C3A531 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F5DF1751BDCA0F500C3A531 /* FailureMessage.swift in Sources */,\n\t\t\t\t1F5DF1801BDCA0F500C3A531 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E81CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1F5DF18A1BDCA0F500C3A531 /* ThrowError.swift in Sources */,\n\t\t\t\t1F5DF1891BDCA0F500C3A531 /* RaisesException.swift in Sources */,\n\t\t\t\t1F5DF1761BDCA0F500C3A531 /* AllPass.swift in Sources */,\n\t\t\t\tAE4BA9AF1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1F5DF1861BDCA0F500C3A531 /* HaveCount.swift in Sources */,\n\t\t\t\t1F5DF1811BDCA0F500C3A531 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871DB1CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\t1F5DF1741BDCA0F500C3A531 /* Expression.swift in Sources */,\n\t\t\t\t1F5DF1781BDCA0F500C3A531 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1F5DF1771BDCA0F500C3A531 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1F5DF17F1BDCA0F500C3A531 /* BeLessThan.swift in Sources */,\n\t\t\t\t1F5DF17C1BDCA0F500C3A531 /* BeGreaterThan.swift in Sources */,\n\t\t\t\t1F91DD331C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91551C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\t1F5DF1831BDCA0F500C3A531 /* Contain.swift in Sources */,\n\t\t\t\t1F5DF1851BDCA0F500C3A531 /* Equal.swift in Sources */,\n\t\t\t\t1F1871DC1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\tF8A1BE311CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F5DF1711BDCA0F500C3A531 /* DSL+Wait.swift in Sources */,\n\t\t\t\t1F1871D61CA89EEF00A34BF2 /* DSL.m in Sources */,\n\t\t\t\t1F5DF17D1BDCA0F500C3A531 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\tAE7ADE471C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AC1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1F5DF18E1BDCA0F500C3A531 /* Stringers.swift in Sources */,\n\t\t\t\t1F5DF16D1BDCA0F500C3A531 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F5DF17B1BDCA0F500C3A531 /* BeginWith.swift in Sources */,\n\t\t\t\t1F5DF17E1BDCA0F500C3A531 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1F1871E91CA8A18700A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1F5DF17A1BDCA0F500C3A531 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F5DF18C1BDCA0F500C3A531 /* Async.swift in Sources */,\n\t\t\t\t1F1871D81CA89EEF00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1F5DF1821BDCA0F500C3A531 /* BeNil.swift in Sources */,\n\t\t\t\t1F5DF16F1BDCA0F500C3A531 /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F5DF1841BDCA0F500C3A531 /* EndWith.swift in Sources */,\n\t\t\t\t1F5DF18D1BDCA0F500C3A531 /* SourceLocation.swift in Sources */,\n\t\t\t\t1F5DF1701BDCA0F500C3A531 /* DSL.swift in Sources */,\n\t\t\t\t1F5DF1721BDCA0F500C3A531 /* Expectation.swift in Sources */,\n\t\t\t\t7B5358C01C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1F5DF18B1BDCA0F500C3A531 /* Functional.swift in Sources */,\n\t\t\t\t1F5DF1871BDCA0F500C3A531 /* Match.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F5DF15A1BDCA0CE00C3A531 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCD79C9AD1D2CC848004B6F9A /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tCD79C9B41D2CC848004B6F9A /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F5DF1A31BDCA10200C3A531 /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F5DF1951BDCA10200C3A531 /* utils.swift in Sources */,\n\t\t\t\tCD79C9B01D2CC848004B6F9A /* ObjCEndWithTest.m in Sources */,\n\t\t\t\tCD79C9B21D2CC848004B6F9A /* ObjCHaveCount.m in Sources */,\n\t\t\t\tCD79C9A41D2CC848004B6F9A /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F5DF1981BDCA10200C3A531 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F5DF19B1BDCA10200C3A531 /* BeEmptyTest.swift in Sources */,\n\t\t\t\t7B5358BC1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F5DF1A11BDCA10200C3A531 /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1961BDCA10200C3A531 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F5DF1AB1BDCA10200C3A531 /* ThrowErrorTest.swift in Sources */,\n\t\t\t\tCD79C9A91D2CC848004B6F9A /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\t1F5DF1A51BDCA10200C3A531 /* ContainTest.swift in Sources */,\n\t\t\t\tAE7ADE4B1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\tCD79C9B31D2CC848004B6F9A /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F5DF19E1BDCA10200C3A531 /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t1F5DF1A21BDCA10200C3A531 /* BeLessThanTest.swift in Sources */,\n\t\t\t\tCD79C9AB1D2CC848004B6F9A /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\tCD79C9A81D2CC848004B6F9A /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\tCD79C9AE1D2CC848004B6F9A /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\t1F5DF1921BDCA10200C3A531 /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F5DF1A91BDCA10200C3A531 /* MatchTest.swift in Sources */,\n\t\t\t\t1F5DF1A81BDCA10200C3A531 /* HaveCountTest.swift in Sources */,\n\t\t\t\t1F5DF1971BDCA10200C3A531 /* AllPassTest.swift in Sources */,\n\t\t\t\tCD79C9A61D2CC848004B6F9A /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tCD79C99F1D2CC835004B6F9A /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1FCF91511C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\tCD79C9B51D2CC848004B6F9A /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F5DF19C1BDCA10200C3A531 /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F5DF1A01BDCA10200C3A531 /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F5DF19A1BDCA10200C3A531 /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F5DF1A61BDCA10200C3A531 /* EndWithTest.swift in Sources */,\n\t\t\t\tCD79C9A31D2CC841004B6F9A /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F5DF1A71BDCA10200C3A531 /* EqualTest.swift in Sources */,\n\t\t\t\tCD79C9AA1D2CC848004B6F9A /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t1F5DF1931BDCA10200C3A531 /* SynchronousTests.swift in Sources */,\n\t\t\t\tCD79C9A11D2CC83B004B6F9A /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F5DF19D1BDCA10200C3A531 /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F5DF1A41BDCA10200C3A531 /* BeNilTest.swift in Sources */,\n\t\t\t\tCD79C9A71D2CC848004B6F9A /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\tCD79C9A51D2CC848004B6F9A /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t347155CC1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F5DF1AA1BDCA10200C3A531 /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t8DF1C3F91C94FD0C004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F5DF1941BDCA10200C3A531 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\tCD79C9AF1D2CC848004B6F9A /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F5DF19F1BDCA10200C3A531 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\tCD79C99E1D2CC832004B6F9A /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F91DD2F1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\tCD79C9B71D2CC848004B6F9A /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F5DF1991BDCA10200C3A531 /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\tCD79C9B11D2CC848004B6F9A /* ObjCEqualTest.m in Sources */,\n\t\t\t\tCD79C9A21D2CC83E004B6F9A /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\tCD79C9AC1D2CC848004B6F9A /* ObjCBeNilTest.m in Sources */,\n\t\t\t\tCD79C9A01D2CC839004B6F9A /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\tCD79C9B61D2CC848004B6F9A /* ObjCAllPassTest.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EA8195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1FD8CD411968AB07008ED995 /* BeCloseTo.swift in Sources */,\n\t\t\t\t1F1871D31CA89EEE00A34BF2 /* NMBExceptionCapture.m in Sources */,\n\t\t\t\t1FD8CD371968AB07008ED995 /* Expectation.swift in Sources */,\n\t\t\t\t1FD8CD331968AB07008ED995 /* NimbleXCTestHandler.swift in Sources */,\n\t\t\t\t1F43728E1A1B343F00EB80F8 /* Stringers.swift in Sources */,\n\t\t\t\t1F43728C1A1B343C00EB80F8 /* SourceLocation.swift in Sources */,\n\t\t\t\t1FD8CD4F1968AB07008ED995 /* BeLessThanOrEqual.swift in Sources */,\n\t\t\t\t1F1871E71CA8A18400A34BF2 /* AsyncMatcherWrapper.swift in Sources */,\n\t\t\t\t1FDBD8681AF8A4FF0089F27B /* AssertionDispatcher.swift in Sources */,\n\t\t\t\t1F43728B1A1B343900EB80F8 /* Functional.swift in Sources */,\n\t\t\t\tAE4BA9AE1C88DDB500B73906 /* Errors.swift in Sources */,\n\t\t\t\t1FD8CD3D1968AB07008ED995 /* BeAnInstanceOf.swift in Sources */,\n\t\t\t\t1FD8CD511968AB07008ED995 /* BeLogical.swift in Sources */,\n\t\t\t\t1F1871D91CA89EF100A34BF2 /* NMBExpectation.swift in Sources */,\n\t\t\t\tDA9E8C831A414BB9002633C2 /* DSL+Wait.swift in Sources */,\n\t\t\t\tDDB1BC7A1A92235600F743C3 /* AllPass.swift in Sources */,\n\t\t\t\t1FD8CD3F1968AB07008ED995 /* BeAKindOf.swift in Sources */,\n\t\t\t\t1FD8CD2F1968AB07008ED995 /* AssertionRecorder.swift in Sources */,\n\t\t\t\t1F91DD321C74BF61002C309F /* BeVoid.swift in Sources */,\n\t\t\t\t1FCF91541C61C8A400B15DCB /* PostNotification.swift in Sources */,\n\t\t\t\tDDB4D5EE19FE43C200E9D9FE /* Match.swift in Sources */,\n\t\t\t\t29EA59671B551EE6002D767E /* ThrowError.swift in Sources */,\n\t\t\t\t1FD8CD5B1968AB07008ED995 /* Equal.swift in Sources */,\n\t\t\t\t1FD8CD4D1968AB07008ED995 /* BeLessThan.swift in Sources */,\n\t\t\t\t1FD8CD471968AB07008ED995 /* BeGreaterThan.swift in Sources */,\n\t\t\t\tF8A1BE301CB3710900031679 /* XCTestObservationCenter+Register.m in Sources */,\n\t\t\t\t1F1871DA1CA89EF100A34BF2 /* NMBObjCMatcher.swift in Sources */,\n\t\t\t\t1FD8CD311968AB07008ED995 /* AdapterProtocols.swift in Sources */,\n\t\t\t\t1F1871D21CA89EEE00A34BF2 /* DSL.m in Sources */,\n\t\t\t\tAE7ADE461C80BF8000B94CD3 /* MatchError.swift in Sources */,\n\t\t\t\t1FC494AB1C29CBA40010975C /* NimbleEnvironment.swift in Sources */,\n\t\t\t\t1FD8CD5F1968AB07008ED995 /* RaisesException.swift in Sources */,\n\t\t\t\t1FD8CD571968AB07008ED995 /* Contain.swift in Sources */,\n\t\t\t\t1FD8CD491968AB07008ED995 /* BeGreaterThanOrEqualTo.swift in Sources */,\n\t\t\t\t1FD8CD451968AB07008ED995 /* BeginWith.swift in Sources */,\n\t\t\t\t1F1871EB1CA8A18800A34BF2 /* MatcherFunc.swift in Sources */,\n\t\t\t\t1FD8CD4B1968AB07008ED995 /* BeIdenticalTo.swift in Sources */,\n\t\t\t\t1FD8CD431968AB07008ED995 /* BeEmpty.swift in Sources */,\n\t\t\t\t1F1871D41CA89EEE00A34BF2 /* NMBStringify.m in Sources */,\n\t\t\t\t1FD8CD531968AB07008ED995 /* BeNil.swift in Sources */,\n\t\t\t\t1FD8CD6B1968AB07008ED995 /* Async.swift in Sources */,\n\t\t\t\t1FD8CD591968AB07008ED995 /* EndWith.swift in Sources */,\n\t\t\t\t1FD8CD5D1968AB07008ED995 /* MatcherProtocols.swift in Sources */,\n\t\t\t\t1FD8CD351968AB07008ED995 /* DSL.swift in Sources */,\n\t\t\t\t7B5358BF1C38479700A23FAA /* SatisfyAnyOf.swift in Sources */,\n\t\t\t\t1FD8CD391968AB07008ED995 /* Expression.swift in Sources */,\n\t\t\t\t1FD8CD3B1968AB07008ED995 /* FailureMessage.swift in Sources */,\n\t\t\t\t472FD1391B9E0A9700C7B8DA /* HaveCount.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F925EB3195C0D6300ED456B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F4A569B1A3B3539009E1637 /* ObjCEqualTest.m in Sources */,\n\t\t\t\t1F925EED195C12C800ED456B /* RaisesExceptionTest.swift in Sources */,\n\t\t\t\t1F925F00195C187600ED456B /* EndWithTest.swift in Sources */,\n\t\t\t\t1F1B5AD51963E13900CA8BF9 /* BeAKindOfTest.swift in Sources */,\n\t\t\t\t1F925F0F195C18F500ED456B /* BeLessThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F4A56671A3B305F009E1637 /* ObjCAsyncTest.m in Sources */,\n\t\t\t\t1F925EFD195C186800ED456B /* BeginWithTest.swift in Sources */,\n\t\t\t\t1F925EE2195C0DFD00ED456B /* utils.swift in Sources */,\n\t\t\t\tDDB4D5F119FE442800E9D9FE /* MatchTest.swift in Sources */,\n\t\t\t\t1F4A56741A3B3210009E1637 /* ObjCBeginWithTest.m in Sources */,\n\t\t\t\t1F4A56831A3B336F009E1637 /* ObjCBeLessThanOrEqualToTest.m in Sources */,\n\t\t\t\t8DF1C3F81C94FC75004B2D36 /* ObjcStringersTest.m in Sources */,\n\t\t\t\t1F925F03195C189500ED456B /* ContainTest.swift in Sources */,\n\t\t\t\t1F4A56891A3B33CB009E1637 /* ObjCBeFalsyTest.m in Sources */,\n\t\t\t\t1F4A568F1A3B342B009E1637 /* ObjCBeFalseTest.m in Sources */,\n\t\t\t\t1F925F12195C190B00ED456B /* BeGreaterThanOrEqualToTest.swift in Sources */,\n\t\t\t\t1F925EF0195C136500ED456B /* BeLogicalTest.swift in Sources */,\n\t\t\t\t1F4A56A11A3B359E009E1637 /* ObjCRaiseExceptionTest.m in Sources */,\n\t\t\t\t1F925F0C195C18E100ED456B /* BeLessThanTest.swift in Sources */,\n\t\t\t\t1F9DB8FC1A74E793002E96AD /* ObjCBeEmptyTest.m in Sources */,\n\t\t\t\t1FB90099195EC4B8001D7FAE /* BeIdenticalToTest.swift in Sources */,\n\t\t\t\t1F91DD2E1C74BF36002C309F /* BeVoidTest.swift in Sources */,\n\t\t\t\t1F4A56771A3B3253009E1637 /* ObjCBeGreaterThanTest.m in Sources */,\n\t\t\t\t1F925EFA195C175000ED456B /* BeNilTest.swift in Sources */,\n\t\t\t\t1F4A56711A3B319F009E1637 /* ObjCBeCloseToTest.m in Sources */,\n\t\t\t\t1F4A56981A3B34AA009E1637 /* ObjCEndWithTest.m in Sources */,\n\t\t\t\t1F4A567D1A3B3311009E1637 /* ObjCBeIdenticalToTest.m in Sources */,\n\t\t\t\t965B0D0D1B62C06D0005AE66 /* UserDescriptionTest.swift in Sources */,\n\t\t\t\t1FCF91501C61C85A00B15DCB /* PostNotificationTest.swift in Sources */,\n\t\t\t\t965B0D0A1B62B8ED0005AE66 /* ObjCUserDescriptionTest.m in Sources */,\n\t\t\t\t1F4A56921A3B344A009E1637 /* ObjCBeNilTest.m in Sources */,\n\t\t\t\t1F8A37B11B7C5042001C8357 /* ObjCSyncTest.m in Sources */,\n\t\t\t\t1F4A56951A3B346F009E1637 /* ObjCContainTest.m in Sources */,\n\t\t\t\t1F299EAC19627B2D002641AF /* BeEmptyTest.swift in Sources */,\n\t\t\t\t1F925EF7195C147800ED456B /* BeCloseToTest.swift in Sources */,\n\t\t\t\t1F4A567A1A3B32E3009E1637 /* ObjCBeGreaterThanOrEqualToTest.m in Sources */,\n\t\t\t\tAE7ADE4A1C80C00D00B94CD3 /* MatchErrorTest.swift in Sources */,\n\t\t\t\t1F4A568C1A3B3407009E1637 /* ObjCBeTrueTest.m in Sources */,\n\t\t\t\tDDEFAEB51A93CBE6005CA37A /* ObjCAllPassTest.m in Sources */,\n\t\t\t\t1F4A56801A3B333F009E1637 /* ObjCBeLessThanTest.m in Sources */,\n\t\t\t\t1F925EE7195C121200ED456B /* AsynchronousTest.swift in Sources */,\n\t\t\t\t1F0648CD19639F5A001F9C46 /* ObjectWithLazyProperty.swift in Sources */,\n\t\t\t\t1F4A56861A3B33A0009E1637 /* ObjCBeTruthyTest.m in Sources */,\n\t\t\t\tDD9A9A9019CF43AD00706F49 /* BeIdenticalToObjectTest.swift in Sources */,\n\t\t\t\t1F0648D51963AAB2001F9C46 /* SynchronousTests.swift in Sources */,\n\t\t\t\t347155CB1C337C8900549F03 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t4793854E1BA0BB2500296F85 /* ObjCHaveCount.m in Sources */,\n\t\t\t\t1F925F09195C18CF00ED456B /* BeGreaterThanTest.swift in Sources */,\n\t\t\t\t7B5358BB1C3846C900A23FAA /* SatisfyAnyOfTest.swift in Sources */,\n\t\t\t\t1F925F06195C18B700ED456B /* EqualTest.swift in Sources */,\n\t\t\t\t1F4A566E1A3B3159009E1637 /* ObjCBeKindOfTest.m in Sources */,\n\t\t\t\tDD72EC651A93874A002F7651 /* AllPassTest.swift in Sources */,\n\t\t\t\t7B5358C61C39184200A23FAA /* ObjCSatisfyAnyOfTest.m in Sources */,\n\t\t\t\t1F4A569E1A3B3565009E1637 /* ObjCMatchTest.m in Sources */,\n\t\t\t\t1F925EEA195C124400ED456B /* BeAnInstanceOfTest.swift in Sources */,\n\t\t\t\t29EA59641B551ED2002D767E /* ThrowErrorTest.swift in Sources */,\n\t\t\t\t1F4A566B1A3B3108009E1637 /* ObjCBeAnInstanceOfTest.m in Sources */,\n\t\t\t\t472FD13A1B9E0A9F00C7B8DA /* HaveCountTest.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t1F1A74371940169200FFFC47 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F1A74361940169200FFFC47 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F5DF1611BDCA0CE00C3A531 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F5DF1541BDCA0CE00C3A531 /* Nimble-tvOS */;\n\t\t\ttargetProxy = 1F5DF1601BDCA0CE00C3A531 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F6BB82B1968BFF9009F1DBB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F6BB82A1968BFF9009F1DBB /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA5195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA4195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EA7195C0C8500ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F1A74281940169200FFFC47 /* Nimble-iOS */;\n\t\t\ttargetProxy = 1F925EA6195C0C8500ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F925EBA195C0D6300ED456B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F925EB9195C0D6300ED456B /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7BFE1968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFD1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C001968AD760094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7BFF1968AD760094EB8F /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F9B7C021968AD820094EB8F /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F925EAC195C0D6300ED456B /* Nimble-OSX */;\n\t\t\ttargetProxy = 1F9B7C011968AD820094EB8F /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F1A743D1940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A743E1940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_MODULES_AUTOLINK = NO;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74401940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74411940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F1A74431940169200FFFC47 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F1A74441940169200FFFC47 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1671BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F5DF1691BDCA0CE00C3A531 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC1195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC2195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_TREAT_WARNINGS_AS_ERRORS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Nimble/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-weak_framework\",\n\t\t\t\t\tXCTest,\n\t\t\t\t\t\"-weak-lswiftXCTest\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Nimble;\n\t\t\t\tPRODUCT_NAME = Nimble;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F925EC4195C0D6300ED456B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F925EC5195C0D6300ED456B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Nimble/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.jeffhui.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = NimbleTests;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F1A74231940169200FFFC47 /* Build configuration list for PBXProject \"Nimble\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A743D1940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A743E1940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A743F1940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74401940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74411940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F1A74421940169200FFFC47 /* Build configuration list for PBXNativeTarget \"Nimble-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F1A74431940169200FFFC47 /* Debug */,\n\t\t\t\t1F1A74441940169200FFFC47 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16A1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1661BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1671BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F5DF16B1BDCA0CE00C3A531 /* Build configuration list for PBXNativeTarget \"Nimble-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F5DF1681BDCA0CE00C3A531 /* Debug */,\n\t\t\t\t1F5DF1691BDCA0CE00C3A531 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC0195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC1195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC2195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F925EC3195C0D6300ED456B /* Build configuration list for PBXNativeTarget \"Nimble-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F925EC4195C0D6300ED456B /* Debug */,\n\t\t\t\t1F925EC5195C0D6300ED456B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 1F1A74201940169200FFFC47 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-OSX\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EB6195C0D6300ED456B\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-OSXTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-OSX\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"2.0\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-iOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74331940169200FFFC47\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-iOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"\"\n      selectedLauncherIdentifier = \"Xcode.IDEFoundation.Launcher.PosixSpawn\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugXPCServices = \"NO\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-iOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-tvOS\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF15D1BDCA0CE00C3A531\"\n               BuildableName = \"NimbleTests.xctest\"\n               BlueprintName = \"Nimble-tvOSTests\"\n               ReferencedContainer = \"container:Nimble.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n            BuildableName = \"Nimble.framework\"\n            BlueprintName = \"Nimble-tvOS\"\n            ReferencedContainer = \"container:Nimble.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Nimble\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/README.md",
    "content": "# Nimble\n\nUse Nimble to express the expected outcomes of Swift\nor Objective-C expressions. Inspired by\n[Cedar](https://github.com/pivotal/cedar).\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(2))\nexpect(1.2).to(beCloseTo(1.1, within: 0.1))\nexpect(3) > 2\nexpect(\"seahorse\").to(contain(\"sea\"))\nexpect([\"Atlantic\", \"Pacific\"]).toNot(contain(\"Mississippi\"))\nexpect(ocean.isClean).toEventually(beTruthy())\n```\n\n# How to Use Nimble\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [Some Background: Expressing Outcomes Using Assertions in XCTest](#some-background-expressing-outcomes-using-assertions-in-xctest)\n- [Nimble: Expectations Using `expect(...).to`](#nimble-expectations-using-expectto)\n  - [Custom Failure Messages](#custom-failure-messages)\n  - [Type Checking](#type-checking)\n  - [Operator Overloads](#operator-overloads)\n  - [Lazily Computed Values](#lazily-computed-values)\n  - [C Primitives](#c-primitives)\n  - [Asynchronous Expectations](#asynchronous-expectations)\n  - [Objective-C Support](#objective-c-support)\n  - [Disabling Objective-C Shorthand](#disabling-objective-c-shorthand)\n- [Built-in Matcher Functions](#built-in-matcher-functions)\n  - [Equivalence](#equivalence)\n  - [Identity](#identity)\n  - [Comparisons](#comparisons)\n  - [Types/Classes](#typesclasses)\n  - [Truthiness](#truthiness)\n  - [Swift Error Handling](#swift-error-handling)\n  - [Exceptions](#exceptions)\n  - [Collection Membership](#collection-membership)\n  - [Strings](#strings)\n  - [Checking if all elements of a collection pass a condition](#checking-if-all-elements-of-a-collection-pass-a-condition)\n  - [Verify collection count](#verify-collection-count)\n  - [Matching a value to any of a group of matchers](#matching-a-value-to-any-of-a-group-of-matchers)\n- [Writing Your Own Matchers](#writing-your-own-matchers)\n  - [Lazy Evaluation](#lazy-evaluation)\n  - [Type Checking via Swift Generics](#type-checking-via-swift-generics)\n  - [Customizing Failure Messages](#customizing-failure-messages)\n  - [Supporting Objective-C](#supporting-objective-c)\n    - [Properly Handling `nil` in Objective-C Matchers](#properly-handling-nil-in-objective-c-matchers)\n- [Installing Nimble](#installing-nimble)\n  - [Installing Nimble as a Submodule](#installing-nimble-as-a-submodule)\n  - [Installing Nimble via CocoaPods](#installing-nimble-via-cocoapods)\n  - [Using Nimble without XCTest](#using-nimble-without-xctest)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n# Some Background: Expressing Outcomes Using Assertions in XCTest\n\nApple's Xcode includes the XCTest framework, which provides\nassertion macros to test whether code behaves properly.\nFor example, to assert that `1 + 1 = 2`, XCTest has you write:\n\n```swift\n// Swift\n\nXCTAssertEqual(1 + 1, 2, \"expected one plus one to equal two\")\n```\n\nOr, in Objective-C:\n\n```objc\n// Objective-C\n\nXCTAssertEqual(1 + 1, 2, @\"expected one plus one to equal two\");\n```\n\nXCTest assertions have a couple of drawbacks:\n\n1. **Not enough macros.** There's no easy way to assert that a string\n   contains a particular substring, or that a number is less than or\n   equal to another.\n2. **It's hard to write asynchronous tests.** XCTest forces you to write\n   a lot of boilerplate code.\n\nNimble addresses these concerns.\n\n# Nimble: Expectations Using `expect(...).to`\n\nNimble allows you to express expectations using a natural,\neasily understood language:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).to(equal(\"Squee!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).to(equal(@\"Squee!\"));\n```\n\n> The `expect` function autocompletes to include `file:` and `line:`,\n  but these parameters are optional. Use the default values to have\n  Xcode highlight the correct line when an expectation is not met.\n\nTo perform the opposite expectation--to assert something is *not*\nequal--use `toNot` or `notTo`:\n\n```swift\n// Swift\n\nimport Nimble\n\nexpect(seagull.squawk).toNot(equal(\"Oh, hello there!\"))\nexpect(seagull.squawk).notTo(equal(\"Oh, hello there!\"))\n```\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(seagull.squawk).toNot(equal(@\"Oh, hello there!\"));\nexpect(seagull.squawk).notTo(equal(@\"Oh, hello there!\"));\n```\n\n## Custom Failure Messages\n\nWould you like to add more information to the test's failure messages? Use the `description` optional argument to add your own text:\n\n```swift\n// Swift\n\nexpect(1 + 1).to(equal(3))\n// failed - expected to equal <3>, got <2>\n\nexpect(1 + 1).to(equal(3), description: \"Make sure libKindergartenMath is loaded\")\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3>, got <2>\n```\n\nOr the *WithDescription version in Objective-C:\n\n```objc\n// Objective-C\n\n@import Nimble;\n\nexpect(@(1+1)).to(equal(@3));\n// failed - expected to equal <3.0000>, got <2.0000>\n\nexpect(@(1+1)).toWithDescription(equal(@3), @\"Make sure libKindergartenMath is loaded\");\n// failed - Make sure libKindergartenMath is loaded\n// expected to equal <3.0000>, got <2.0000>\n```\n\n## Type Checking\n\nNimble makes sure you don't compare two types that don't match:\n\n```swift\n// Swift\n\n// Does not compile:\nexpect(1 + 1).to(equal(\"Squee!\"))\n```\n\n> Nimble uses generics--only available in Swift--to ensure\n  type correctness. That means type checking is\n  not available when using Nimble in Objective-C. :sob:\n\n## Operator Overloads\n\nTired of so much typing? With Nimble, you can use overloaded operators\nlike `==` for equivalence, or `>` for comparisons:\n\n```swift\n// Swift\n\n// Passes if squawk does not equal \"Hi!\":\nexpect(seagull.squawk) != \"Hi!\"\n\n// Passes if 10 is greater than 2:\nexpect(10) > 2\n```\n\n> Operator overloads are only available in Swift, so you won't be able\n  to use this syntax in Objective-C. :broken_heart:\n\n## Lazily Computed Values\n\nThe `expect` function doesn't evaluate the value it's given until it's\ntime to match. So Nimble can test whether an expression raises an\nexception once evaluated:\n\n```swift\n// Swift\n\n// Note: Swift currently doesn't have exceptions.\n//       Only Objective-C code can raise exceptions\n//       that Nimble will catch.\n//       (see https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)\nlet exception = NSException(\n  name: NSInternalInconsistencyException,\n  reason: \"Not enough fish in the sea.\",\n  userInfo: [\"something\": \"is fishy\"])\nexpect { exception.raise() }.to(raiseException())\n\n// Also, you can customize raiseException to be more specific\nexpect { exception.raise() }.to(raiseException(named: NSInternalInconsistencyException))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\"))\nexpect { exception.raise() }.to(raiseException(\n    named: NSInternalInconsistencyException,\n    reason: \"Not enough fish in the sea\",\n    userInfo: [\"something\": \"is fishy\"]))\n```\n\nObjective-C works the same way, but you must use the `expectAction`\nmacro when making an expectation on an expression that has no return\nvalue:\n\n```objc\n// Objective-C\n\nNSException *exception = [NSException exceptionWithName:NSInternalInconsistencyException\n                                                 reason:@\"Not enough fish in the sea.\"\n                                               userInfo:nil];\nexpectAction(^{ [exception raise]; }).to(raiseException());\n\n// Use the property-block syntax to be more specific.\nexpectAction(^{ [exception raise]; }).to(raiseException().named(NSInternalInconsistencyException));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\"));\nexpectAction(^{ [exception raise]; }).to(raiseException().\n    named(NSInternalInconsistencyException).\n    reason(\"Not enough fish in the sea\").\n    userInfo(@{@\"something\": @\"is fishy\"}));\n\n// You can also pass a block for custom matching of the raised exception\nexpectAction(exception.raise()).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(NSInternalInconsistencyException));\n}));\n```\n\n## C Primitives\n\nSome testing frameworks make it hard to test primitive C values.\nIn Nimble, it just works:\n\n```swift\n// Swift\n\nlet actual: CInt = 1\nlet expectedValue: CInt = 1\nexpect(actual).to(equal(expectedValue))\n```\n\nIn fact, Nimble uses type inference, so you can write the above\nwithout explicitly specifying both types:\n\n```swift\n// Swift\n\nexpect(1 as CInt).to(equal(1))\n```\n\n> In Objective-C, Nimble only supports Objective-C objects. To\n  make expectations on primitive C values, wrap then in an object\n  literal:\n\n  ```objc\n  expect(@(1 + 1)).to(equal(@2));\n  ```\n\n## Asynchronous Expectations\n\nIn Nimble, it's easy to make expectations on values that are updated\nasynchronously. Just use `toEventually` or `toEventuallyNot`:\n\n```swift\n// Swift\n\ndispatch_async(dispatch_get_main_queue()) {\n  ocean.add(\"dolphins\")\n  ocean.add(\"whales\")\n}\nexpect(ocean).toEventually(contain(\"dolphins\", \"whales\"))\n```\n\n\n```objc\n// Objective-C\ndispatch_async(dispatch_get_main_queue(), ^{\n  [ocean add:@\"dolphins\"];\n  [ocean add:@\"whales\"];\n});\nexpect(ocean).toEventually(contain(@\"dolphins\", @\"whales\"));\n```\n\nNote: toEventually triggers its polls on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop. This can cause test pollution\nfor whatever incomplete code that was running on the main thread.  Blocking the\nmain thread can be caused by blocking IO, calls to sleep(), deadlocks, and\nsynchronous IPC.\n\nIn the above example, `ocean` is constantly re-evaluated. If it ever\ncontains dolphins and whales, the expectation passes. If `ocean` still\ndoesn't contain them, even after being continuously re-evaluated for one\nwhole second, the expectation fails.\n\nSometimes it takes more than a second for a value to update. In those\ncases, use the `timeout` parameter:\n\n```swift\n// Swift\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).toEventually(contain(\"starfish\"), timeout: 3)\n```\n\n```objc\n// Objective-C\n\n// Waits three seconds for ocean to contain \"starfish\":\nexpect(ocean).withTimeout(3).toEventually(contain(@\"starfish\"));\n```\n\nYou can also provide a callback by using the `waitUntil` function:\n\n```swift\n// Swift\n\nwaitUntil { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(0.5)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntil(^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:0.5];\n  done();\n});\n```\n\n`waitUntil` also optionally takes a timeout parameter:\n\n```swift\n// Swift\n\nwaitUntil(timeout: 10) { done in\n  // do some stuff that takes a while...\n  NSThread.sleepForTimeInterval(1)\n  done()\n}\n```\n\n```objc\n// Objective-C\n\nwaitUntilTimeout(10, ^(void (^done)(void)){\n  // do some stuff that takes a while...\n  [NSThread sleepForTimeInterval:1];\n  done();\n});\n```\n\nNote: waitUntil triggers its timeout code on the main thread. Blocking the main\nthread will cause Nimble to stop the run loop to continue. This can cause test\npollution for whatever incomplete code that was running on the main thread.\nBlocking the main thread can be caused by blocking IO, calls to sleep(),\ndeadlocks, and synchronous IPC.\n\nIn some cases (e.g. when running on slower machines) it can be useful to modify\nthe default timeout and poll interval values. This can be done as follows:\n\n```swift\n// Swift\n\n// Increase the global timeout to 5 seconds:\nNimble.AsyncDefaults.Timeout = 5\n\n// Slow the polling interval to 0.1 seconds:\nNimble.AsyncDefaults.PollInterval = 0.1\n```\n\n## Objective-C Support\n\nNimble has full support for Objective-C. However, there are two things\nto keep in mind when using Nimble in Objective-C:\n\n1. All parameters passed to the `expect` function, as well as matcher\n   functions like `equal`, must be Objective-C objects:\n\n   ```objc\n   // Objective-C\n\n   @import Nimble;\n\n   expect(@(1 + 1)).to(equal(@2));\n   expect(@\"Hello world\").to(contain(@\"world\"));\n   ```\n\n2. To make an expectation on an expression that does not return a value,\n   such as `-[NSException raise]`, use `expectAction` instead of\n   `expect`:\n\n   ```objc\n   // Objective-C\n\n   expectAction(^{ [exception raise]; }).to(raiseException());\n   ```\n\n## Disabling Objective-C Shorthand\n\nNimble provides a shorthand for expressing expectations using the\n`expect` function. To disable this shorthand in Objective-C, define the\n`NIMBLE_DISABLE_SHORT_SYNTAX` macro somewhere in your code before\nimporting Nimble:\n\n```objc\n#define NIMBLE_DISABLE_SHORT_SYNTAX 1\n\n@import Nimble;\n\nNMB_expect(^{ return seagull.squawk; }, __FILE__, __LINE__).to(NMB_equal(@\"Squee!\"));\n```\n\n> Disabling the shorthand is useful if you're testing functions with\n  names that conflict with Nimble functions, such as `expect` or\n  `equal`. If that's not the case, there's no point in disabling the\n  shorthand.\n\n# Built-in Matcher Functions\n\nNimble includes a wide variety of matcher functions.\n\n## Equivalence\n\n```swift\n// Swift\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\nexpect(actual) == expected\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\nexpect(actual) != expected\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is equivalent to expected:\nexpect(actual).to(equal(expected))\n\n// Passes if actual is not equivalent to expected:\nexpect(actual).toNot(equal(expected))\n```\n\nValues must be `Equatable`, `Comparable`, or subclasses of `NSObject`.\n`equal` will always fail when used to compare one or more `nil` values.\n\n## Identity\n\n```swift\n// Swift\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected))\nexpect(actual) === expected\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected))\nexpect(actual) !== expected\n```\n\nIts important to remember that `beIdenticalTo` only makes sense when comparing types with reference semantics, which have a notion of identity. In Swift, that means a `class`. This matcher will not work with types with value semantics such as `struct` or `enum`. If you need to compare two value types, you can either compare individual properties or if it makes sense to do so, make your type implement `Equatable` and use Nimble's equivalence matchers instead.\n\n\n```objc\n// Objective-C\n\n// Passes if actual has the same pointer address as expected:\nexpect(actual).to(beIdenticalTo(expected));\n\n// Passes if actual does not have the same pointer address as expected:\nexpect(actual).toNot(beIdenticalTo(expected));\n```\n\n## Comparisons\n\n```swift\n// Swift\n\nexpect(actual).to(beLessThan(expected))\nexpect(actual) < expected\n\nexpect(actual).to(beLessThanOrEqualTo(expected))\nexpect(actual) <= expected\n\nexpect(actual).to(beGreaterThan(expected))\nexpect(actual) > expected\n\nexpect(actual).to(beGreaterThanOrEqualTo(expected))\nexpect(actual) >= expected\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beLessThan(expected));\nexpect(actual).to(beLessThanOrEqualTo(expected));\nexpect(actual).to(beGreaterThan(expected));\nexpect(actual).to(beGreaterThanOrEqualTo(expected));\n```\n\n> Values given to the comparison matchers above must implement\n  `Comparable`.\n\nBecause of how computers represent floating point numbers, assertions\nthat two floating point numbers be equal will sometimes fail. To express\nthat two numbers should be close to one another within a certain margin\nof error, use `beCloseTo`:\n\n```swift\n// Swift\n\nexpect(actual).to(beCloseTo(expected, within: delta))\n```\n\n```objc\n// Objective-C\n\nexpect(actual).to(beCloseTo(expected).within(delta));\n```\n\nFor example, to assert that `10.01` is close to `10`, you can write:\n\n```swift\n// Swift\n\nexpect(10.01).to(beCloseTo(10, within: 0.1))\n```\n\n```objc\n// Objective-C\n\nexpect(@(10.01)).to(beCloseTo(@10).within(0.1));\n```\n\nThere is also an operator shortcut available in Swift:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected\nexpect(actual) ≈ (expected, delta)\n\n```\n(Type Option-x to get ≈ on a U.S. keyboard)\n\nThe former version uses the default delta of 0.0001. Here is yet another way to do this:\n\n```swift\n// Swift\n\nexpect(actual) ≈ expected ± delta\nexpect(actual) == expected ± delta\n\n```\n(Type Option-Shift-= to get ± on a U.S. keyboard)\n\nIf you are comparing arrays of floating point numbers, you'll find the following useful:\n\n```swift\n// Swift\n\nexpect([0.0, 2.0]) ≈ [0.0001, 2.0001]\nexpect([0.0, 2.0]).to(beCloseTo([0.1, 2.1], within: 0.1))\n\n```\n\n> Values given to the `beCloseTo` matcher must be coercable into a\n  `Double`.\n\n## Types/Classes\n\n```swift\n// Swift\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass))\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass))\n```\n\n```objc\n// Objective-C\n\n// Passes if instance is an instance of aClass:\nexpect(instance).to(beAnInstanceOf(aClass));\n\n// Passes if instance is an instance of aClass or any of its subclasses:\nexpect(instance).to(beAKindOf(aClass));\n```\n\n> Instances must be Objective-C objects: subclasses of `NSObject`,\n  or Swift objects bridged to Objective-C with the `@objc` prefix.\n\nFor example, to assert that `dolphin` is a kind of `Mammal`:\n\n```swift\n// Swift\n\nexpect(dolphin).to(beAKindOf(Mammal))\n```\n\n```objc\n// Objective-C\n\nexpect(dolphin).to(beAKindOf([Mammal class]));\n```\n\n> `beAnInstanceOf` uses the `-[NSObject isMemberOfClass:]` method to\n  test membership. `beAKindOf` uses `-[NSObject isKindOfClass:]`.\n\n## Truthiness\n\n```swift\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy())\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue())\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy())\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse())\n\n// Passes if actual is nil:\nexpect(actual).to(beNil())\n```\n\n```objc\n// Objective-C\n\n// Passes if actual is not nil, true, or an object with a boolean value of true:\nexpect(actual).to(beTruthy());\n\n// Passes if actual is only true (not nil or an object conforming to BooleanType true):\nexpect(actual).to(beTrue());\n\n// Passes if actual is nil, false, or an object with a boolean value of false:\nexpect(actual).to(beFalsy());\n\n// Passes if actual is only false (not nil or an object conforming to BooleanType false):\nexpect(actual).to(beFalse());\n\n// Passes if actual is nil:\nexpect(actual).to(beNil());\n```\n\n## Swift Error Handling\n\nIf you're using Swift 2.0+, you can use the `throwError` matcher to check if an error is thrown.\n\n```swift\n// Swift\n\n// Passes if somethingThatThrows() throws an ErrorType:\nexpect{ try somethingThatThrows() }.to(throwError())\n\n// Passes if somethingThatThrows() throws an error with a given domain:\nexpect{ try somethingThatThrows() }.to(throwError { (error: ErrorType) in\n    expect(error._domain).to(equal(NSCocoaErrorDomain))\n})\n\n// Passes if somethingThatThrows() throws an error with a given case:\nexpect{ try somethingThatThrows() }.to(throwError(NSCocoaError.PropertyListReadCorruptError))\n\n// Passes if somethingThatThrows() throws an error with a given type:\nexpect{ try somethingThatThrows() }.to(throwError(errorType: MyError.self))\n```\n\nIf you are working directly with `ErrorType` values, as is sometimes the case when using `Result` or `Promise` types, you can use the `matchError` matcher to check if the error is the same error is is supposed to be, without requiring explicit casting.\n\n```swift\n// Swift\n\nlet actual: ErrorType = …\n\n// Passes if actual contains any error value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum))\n\n// Passes if actual contains the Timeout value from the MyErrorEnum type:\nexpect(actual).to(matchError(MyErrorEnum.Timeout))\n\n// Passes if actual contains an NSError equal to the given one:\nexpect(actual).to(matchError(NSError(domain: \"err\", code: 123, userInfo: nil)))\n```\n\nNote: This feature is only available in Swift.\n\n## Exceptions\n\n```swift\n// Swift\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name:\nexpect(actual).to(raiseException(named: name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException(named: name, reason: reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect { exception.raise() }.to(raiseException { (exception: NSException) in\n    expect(exception.name).to(beginWith(\"a r\"))\n})\n```\n\n```objc\n// Objective-C\n\n// Passes if actual, when evaluated, raises an exception:\nexpect(actual).to(raiseException())\n\n// Passes if actual raises an exception with the given name\nexpect(actual).to(raiseException().named(name))\n\n// Passes if actual raises an exception with the given name and reason:\nexpect(actual).to(raiseException().named(name).reason(reason))\n\n// Passes if actual raises an exception and it passes expectations in the block\n// (in this case, if name begins with 'a r')\nexpect(actual).to(raiseException().satisfyingBlock(^(NSException *exception) {\n    expect(exception.name).to(beginWith(@\"a r\"));\n}));\n```\n\nNote: Swift currently doesn't have exceptions (see [#220](https://github.com/Quick/Nimble/issues/220#issuecomment-172667064)). Only Objective-C code can raise\nexceptions that Nimble will catch.\n\n## Collection Membership\n\n```swift\n// Swift\n\n// Passes if all of the expected values are members of actual:\nexpect(actual).to(contain(expected...))\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty())\n```\n\n```objc\n// Objective-C\n\n// Passes if expected is a member of actual:\nexpect(actual).to(contain(expected));\n\n// Passes if actual is an empty collection (it contains no elements):\nexpect(actual).to(beEmpty());\n```\n\n> In Swift `contain` takes any number of arguments. The expectation\n  passes if all of them are members of the collection. In Objective-C,\n  `contain` only takes one argument [for now](https://github.com/Quick/Nimble/issues/27).\n\nFor example, to assert that a list of sea creature names contains\n\"dolphin\" and \"starfish\":\n\n```swift\n// Swift\n\nexpect([\"whale\", \"dolphin\", \"starfish\"]).to(contain(\"dolphin\", \"starfish\"))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"dolphin\"));\nexpect(@[@\"whale\", @\"dolphin\", @\"starfish\"]).to(contain(@\"starfish\"));\n```\n\n> `contain` and `beEmpty` expect collections to be instances of\n  `NSArray`, `NSSet`, or a Swift collection composed of `Equatable` elements.\n\nTo test whether a set of elements is present at the beginning or end of\nan ordered collection, use `beginWith` and `endWith`:\n\n```swift\n// Swift\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected...))\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected...))\n```\n\n```objc\n// Objective-C\n\n// Passes if the elements in expected appear at the beginning of actual:\nexpect(actual).to(beginWith(expected));\n\n// Passes if the the elements in expected come at the end of actual:\nexpect(actual).to(endWith(expected));\n```\n\n> `beginWith` and `endWith` expect collections to be instances of\n  `NSArray`, or ordered Swift collections composed of `Equatable`\n  elements.\n\n  Like `contain`, in Objective-C `beginWith` and `endWith` only support\n  a single argument [for now](https://github.com/Quick/Nimble/issues/27).\n\n## Strings\n\n```swift\n// Swift\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected))\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected))\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected))\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty())\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n```objc\n// Objective-C\n\n// Passes if actual contains substring expected:\nexpect(actual).to(contain(expected));\n\n// Passes if actual begins with substring:\nexpect(actual).to(beginWith(expected));\n\n// Passes if actual ends with substring:\nexpect(actual).to(endWith(expected));\n\n// Passes if actual is an empty string, \"\":\nexpect(actual).to(beEmpty());\n\n// Passes if actual matches the regular expression defined in expected:\nexpect(actual).to(match(expected))\n```\n\n## Checking if all elements of a collection pass a condition\n\n```swift\n// Swift\n\n// with a custom function:\nexpect([1,2,3,4]).to(allPass({$0 < 5}))\n\n// with another matcher:\nexpect([1,2,3,4]).to(allPass(beLessThan(5)))\n```\n\n```objc\n// Objective-C\n\nexpect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n```\n\nFor Swift the actual value has to be a SequenceType, e.g. an array, a set or a custom seqence type.\n\nFor Objective-C the actual value has to be a NSFastEnumeration, e.g. NSArray and NSSet, of NSObjects and only the variant which\nuses another matcher is available here.\n\n## Verify collection count\n\n```swift\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\n```objc\n// passes if actual collection's count is equal to expected\nexpect(actual).to(haveCount(expected))\n\n// passes if actual collection's count is not equal to expected\nexpect(actual).notTo(haveCount(expected))\n```\n\nFor Swift the actual value must be a `CollectionType` such as array, dictionary or set.\n\nFor Objective-C the actual value has to be one of the following classes `NSArray`, `NSDictionary`, `NSSet`, `NSHashTable` or one of their subclasses.\n\n## Matching a value to any of a group of matchers\n\n```swift\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(10), beGreaterThan(20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(6).to(satisfyAnyOf(equal(2), equal(3), equal(4), equal(5), equal(6), equal(7)))\n\n// in Swift you also have the option to use the || operator to achieve a similar function\nexpect(82).to(beLessThan(50) || beGreaterThan(80))\n```\n\n```objc\n// passes if actual is either less than 10 or greater than 20\nexpect(actual).to(satisfyAnyOf(beLessThan(@10), beGreaterThan(@20)))\n\n// can include any number of matchers -- the following will pass\n// **be careful** -- too many matchers can be the sign of an unfocused test\nexpect(@6).to(satisfyAnyOf(equal(@2), equal(@3), equal(@4), equal(@5), equal(@6), equal(@7)))\n```\n\nNote: This matcher allows you to chain any number of matchers together. This provides flexibility, \n      but if you find yourself chaining many matchers together in one test, consider whether you  \n      could instead refactor that single test into multiple, more precisely focused tests for \n      better coverage. \n\n# Writing Your Own Matchers\n\nIn Nimble, matchers are Swift functions that take an expected\nvalue and return a `MatcherFunc` closure. Take `equal`, for example:\n\n```swift\n// Swift\n\npublic func equal<T: Equatable>(expectedValue: T?) -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"equal <\\(expectedValue)>\"\n    return actualExpression.evaluate() == expectedValue\n  }\n}\n```\n\nThe return value of a `MatcherFunc` closure is a `Bool` that indicates\nwhether the actual value matches the expectation: `true` if it does, or\n`false` if it doesn't.\n\n> The actual `equal` matcher function does not match when either\n  `actual` or `expected` are nil; the example above has been edited for\n  brevity.\n\nSince matchers are just Swift functions, you can define them anywhere:\nat the top of your test file, in a file shared by all of your tests, or\nin an Xcode project you distribute to others.\n\n> If you write a matcher you think everyone can use, consider adding it\n  to Nimble's built-in set of matchers by sending a pull request! Or\n  distribute it yourself via GitHub.\n\nFor examples of how to write your own matchers, just check out the\n[`Matchers` directory](https://github.com/Quick/Nimble/tree/master/Sources/Nimble/Matchers)\nto see how Nimble's built-in set of matchers are implemented. You can\nalso check out the tips below.\n\n## Lazy Evaluation\n\n`actualExpression` is a lazy, memoized closure around the value provided to the\n`expect` function. The expression can either be a closure or a value directly\npassed to `expect(...)`. In order to determine whether that value matches,\ncustom matchers should call `actualExpression.evaluate()`:\n\n```swift\n// Swift\n\npublic func beNil<T>() -> MatcherFunc<T?> {\n  return MatcherFunc { actualExpression, failureMessage in\n    failureMessage.postfixMessage = \"be nil\"\n    return actualExpression.evaluate() == nil\n  }\n}\n```\n\nIn the above example, `actualExpression` is not `nil`--it is a closure\nthat returns a value. The value it returns, which is accessed via the\n`evaluate()` method, may be `nil`. If that value is `nil`, the `beNil`\nmatcher function returns `true`, indicating that the expectation passed.\n\nUse `expression.isClosure` to determine if the expression will be invoking\na closure to produce its value.\n\n## Type Checking via Swift Generics\n\nUsing Swift's generics, matchers can constrain the type of the actual value\npassed to the `expect` function by modifying the return type.\n\nFor example, the following matcher, `haveDescription`, only accepts actual\nvalues that implement the `Printable` protocol. It checks their `description`\nagainst the one provided to the matcher function, and passes if they are the same:\n\n```swift\n// Swift\n\npublic func haveDescription(description: String) -> MatcherFunc<Printable?> {\n  return MatcherFunc { actual, failureMessage in\n    return actual.evaluate().description == description\n  }\n}\n```\n\n## Customizing Failure Messages\n\nBy default, Nimble outputs the following failure message when an\nexpectation fails:\n\n```\nexpected to match, got <\\(actual)>\n```\n\nYou can customize this message by modifying the `failureMessage` struct\nfrom within your `MatcherFunc` closure. To change the verb \"match\" to\nsomething else, update the `postfixMessage` property:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea, got <\\(actual)>\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\nYou can change how the `actual` value is displayed by updating\n`failureMessage.actualValue`. Or, to remove it altogether, set it to\n`nil`:\n\n```swift\n// Swift\n\n// Outputs: expected to be under the sea\nfailureMessage.actualValue = nil\nfailureMessage.postfixMessage = \"be under the sea\"\n```\n\n## Supporting Objective-C\n\nTo use a custom matcher written in Swift from Objective-C, you'll have\nto extend the `NMBObjCMatcher` class, adding a new class method for your\ncustom matcher. The example below defines the class method\n`+[NMBObjCMatcher beNilMatcher]`:\n\n```swift\n// Swift\n\nextension NMBObjCMatcher {\n  public class func beNilMatcher() -> NMBObjCMatcher {\n    return NMBObjCMatcher { actualBlock, failureMessage, location in\n      let block = ({ actualBlock() as NSObject? })\n      let expr = Expression(expression: block, location: location)\n      return beNil().matches(expr, failureMessage: failureMessage)\n    }\n  }\n}\n```\n\nThe above allows you to use the matcher from Objective-C:\n\n```objc\n// Objective-C\n\nexpect(actual).to([NMBObjCMatcher beNilMatcher]());\n```\n\nTo make the syntax easier to use, define a C function that calls the\nclass method:\n\n```objc\n// Objective-C\n\nFOUNDATION_EXPORT id<NMBMatcher> beNil() {\n  return [NMBObjCMatcher beNilMatcher];\n}\n```\n\n### Properly Handling `nil` in Objective-C Matchers\n\nWhen supporting Objective-C, make sure you handle `nil` appropriately.\nLike [Cedar](https://github.com/pivotal/cedar/issues/100),\n**most matchers do not match with nil**. This is to bring prevent test\nwriters from being surprised by `nil` values where they did not expect\nthem.\n\nNimble provides the `beNil` matcher function for test writer that want\nto make expectations on `nil` objects:\n\n```objc\n// Objective-C\n\nexpect(nil).to(equal(nil)); // fails\nexpect(nil).to(beNil());    // passes\n```\n\nIf your matcher does not want to match with nil, you use `NonNilMatcherFunc`\nand the `canMatchNil` constructor on `NMBObjCMatcher`. Using both types will\nautomatically generate expected value failure messages when they're nil.\n\n```swift\n\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.evaluate()\n            let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n            return beginWith(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n```\n\n# Installing Nimble\n\n> Nimble can be used on its own, or in conjunction with its sister\n  project, [Quick](https://github.com/Quick/Quick). To install both\n  Quick and Nimble, follow [the installation instructions in the Quick\n  README](https://github.com/Quick/Quick#how-to-install-quick).\n\nNimble can currently be installed in one of two ways: using CocoaPods, or with\ngit submodules.\n\n## Installing Nimble as a Submodule\n\nTo use Nimble as a submodule to test your iOS or OS X applications, follow these\n4 easy steps:\n\n1. Clone the Nimble repository\n2. Add Nimble.xcodeproj to the Xcode workspace for your project\n3. Link Nimble.framework to your test target\n4. Start writing expectations!\n\nFor more detailed instructions on each of these steps,\nread [How to Install Quick](https://github.com/Quick/Quick#how-to-install-quick).\nIgnore the steps involving adding Quick to your project in order to\ninstall just Nimble.\n\n## Installing Nimble via CocoaPods\n\nTo use Nimble in CocoaPods to test your iOS or OS X applications, add Nimble to\nyour podfile and add the ```use_frameworks!``` line to enable Swift support for\nCocoaPods.\n\n```ruby\nplatform :ios, '8.0'\n\nsource 'https://github.com/CocoaPods/Specs.git'\n\n# Whatever pods you need for your app go here\n\ntarget 'YOUR_APP_NAME_HERE_Tests', :exclusive => true do\n  use_frameworks!\n  pod 'Nimble', '~> 4.0.0'\nend\n```\n\nFinally run `pod install`.\n\n## Using Nimble without XCTest\n\nNimble is integrated with XCTest to allow it work well when used in Xcode test\nbundles, however it can also be used in a standalone app. After installing\nNimble using one of the above methods, there are two additional steps required\nto make this work.\n\n1. Create a custom assertion handler and assign an instance of it to the\n   global `NimbleAssertionHandler` variable. For example:\n\n```swift\nclass MyAssertionHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if (!assertion) {\n            print(\"Expectation failed: \\(message.stringValue)\")\n        }\n    }\n}\n```\n```swift\n// Somewhere before you use any assertions\nNimbleAssertionHandler = MyAssertionHandler()\n```\n\n2. Add a post-build action to fix an issue with the Swift XCTest support\n   library being unnecessarily copied into your app\n  * Edit your scheme in Xcode, and navigate to Build -> Post-actions\n  * Click the \"+\" icon and select \"New Run Script Action\"\n  * Open the \"Provide build settings from\" dropdown and select your target\n  * Enter the following script contents:\n```\nrm \"${SWIFT_STDLIB_TOOL_DESTINATION_DIR}/libswiftXCTest.dylib\"\n```\n\nYou can now use Nimble assertions in your code and handle failures as you see\nfit.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AdapterProtocols.swift",
    "content": "import Foundation\n\n/// Protocol for the assertion handler that Nimble uses for all expectations.\npublic protocol AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation)\n}\n\n/// Global backing interface for assertions that Nimble creates.\n/// Defaults to a private test handler that passes through to XCTest.\n///\n/// If XCTest is not available, you must assign your own assertion handler\n/// before using any matchers, otherwise Nimble will abort the program.\n///\n/// @see AssertionHandler\npublic var NimbleAssertionHandler: AssertionHandler = { () -> AssertionHandler in\n    return isXCTestAvailable() ? NimbleXCTestHandler() : NimbleXCTestUnavailableHandler()\n}()\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AssertionDispatcher.swift",
    "content": "\n/// AssertionDispatcher allows multiple AssertionHandlers to receive\n/// assertion messages.\n///\n/// @warning Does not fully dispatch if one of the handlers raises an exception.\n///          This is possible with XCTest-based assertion handlers.\n///\npublic class AssertionDispatcher: AssertionHandler {\n    let handlers: [AssertionHandler]\n\n    public init(handlers: [AssertionHandler]) {\n        self.handlers = handlers\n    }\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        for handler in handlers {\n            handler.assert(assertion, message: message, location: location)\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift",
    "content": "import Foundation\n\n/// A data structure that stores information about an assertion when\n/// AssertionRecorder is set as the Nimble assertion handler.\n///\n/// @see AssertionRecorder\n/// @see AssertionHandler\npublic struct AssertionRecord: CustomStringConvertible {\n    /// Whether the assertion succeeded or failed\n    public let success: Bool\n    /// The failure message the assertion would display on failure.\n    public let message: FailureMessage\n    /// The source location the expectation occurred on.\n    public let location: SourceLocation\n\n    public var description: String {\n        return \"AssertionRecord { success=\\(success), message='\\(message.stringValue)', location=\\(location) }\"\n    }\n}\n\n/// An AssertionHandler that silently records assertions that Nimble makes.\n/// This is useful for testing failure messages for matchers.\n///\n/// @see AssertionHandler\npublic class AssertionRecorder : AssertionHandler {\n    /// All the assertions that were captured by this recorder\n    public var assertions = [AssertionRecord]()\n\n    public init() {}\n\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        assertions.append(\n            AssertionRecord(\n                success: assertion,\n                message: message,\n                location: location))\n    }\n}\n\n/// Allows you to temporarily replace the current Nimble assertion handler with\n/// the one provided for the scope of the closure.\n///\n/// Once the closure finishes, then the original Nimble assertion handler is restored.\n///\n/// @see AssertionHandler\npublic func withAssertionHandler(tempAssertionHandler: AssertionHandler, closure: () throws -> Void) {\n    let environment = NimbleEnvironment.activeInstance\n    let oldRecorder = environment.assertionHandler\n    let capturer = NMBExceptionCapture(handler: nil, finally: ({\n        environment.assertionHandler = oldRecorder\n    }))\n    environment.assertionHandler = tempAssertionHandler\n    capturer.tryBlock {\n        try! closure()\n    }\n}\n\n/// Captures expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about expectations\n/// that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble \n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherFailingExpectations\npublic func gatherExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let previousRecorder = NimbleEnvironment.activeInstance.assertionHandler\n    let recorder = AssertionRecorder()\n    let handlers: [AssertionHandler]\n\n    if silently {\n        handlers = [recorder]\n    } else {\n        handlers = [recorder, previousRecorder]\n    }\n\n    let dispatcher = AssertionDispatcher(handlers: handlers)\n    withAssertionHandler(dispatcher, closure: closure)\n    return recorder.assertions\n}\n\n/// Captures failed expectations that occur in the given closure. Note that all\n/// expectations will still go through to the default Nimble handler.\n///\n/// This can be useful if you want to gather information about failed\n/// expectations that occur within a closure.\n///\n/// @param silently expectations are no longer send to the default Nimble\n///                 assertion handler when this is true. Defaults to false.\n///\n/// @see gatherExpectations\n/// @see raiseException source for an example use case.\npublic func gatherFailingExpectations(silently silently: Bool = false, closure: () -> Void) -> [AssertionRecord] {\n    let assertions = gatherExpectations(silently: silently, closure: closure)\n    return assertions.filter { assertion in\n        !assertion.success\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift",
    "content": "import Foundation\n\n/// \"Global\" state of Nimble is stored here. Only DSL functions should access / be aware of this\n/// class' existance\ninternal class NimbleEnvironment {\n    static var activeInstance: NimbleEnvironment {\n        get {\n            let env = NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"]\n            if let env = env as? NimbleEnvironment {\n                return env\n            } else {\n                let newEnv = NimbleEnvironment()\n                self.activeInstance = newEnv\n                return newEnv\n            }\n        }\n        set {\n            NSThread.currentThread().threadDictionary[\"NimbleEnvironment\"] = newValue\n        }\n    }\n\n    // TODO: eventually migrate the global to this environment value\n    var assertionHandler: AssertionHandler {\n        get { return NimbleAssertionHandler }\n        set { NimbleAssertionHandler = newValue }\n    }\n\n#if _runtime(_ObjC)\n    var awaiter: Awaiter\n\n    init() {\n        awaiter = Awaiter(\n            waitLock: AssertionWaitLock(),\n            asyncQueue: dispatch_get_main_queue(),\n            timeoutQueue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0))\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift",
    "content": "import Foundation\nimport XCTest\n\n/// Default handler for Nimble. This assertion handler passes failures along to\n/// XCTest.\npublic class NimbleXCTestHandler : AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            recordFailure(\"\\(message.stringValue)\\n\", location: location)\n        }\n    }\n}\n\n/// Alternative handler for Nimble. This assertion handler passes failures along\n/// to XCTest by attempting to reduce the failure message size.\npublic class NimbleShortXCTestHandler: AssertionHandler {\n    public func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        if !assertion {\n            let msg: String\n            if let actual = message.actualValue {\n                msg = \"got: \\(actual) \\(message.postfixActual)\"\n            } else {\n                msg = \"expected \\(message.to) \\(message.postfixMessage)\"\n            }\n            recordFailure(\"\\(msg)\\n\", location: location)\n        }\n    }\n}\n\n/// Fallback handler in case XCTest is unavailable. This assertion handler will abort\n/// the program if it is invoked.\nclass NimbleXCTestUnavailableHandler : AssertionHandler {\n    func assert(assertion: Bool, message: FailureMessage, location: SourceLocation) {\n        fatalError(\"XCTest is not available and no custom assertion handler was configured. Aborting.\")\n    }\n}\n\n#if _runtime(_ObjC)\n    /// Helper class providing access to the currently executing XCTestCase instance, if any\n@objc final internal class CurrentTestCaseTracker: NSObject, XCTestObservation {\n    @objc static let sharedInstance = CurrentTestCaseTracker()\n\n    private(set) var currentTestCase: XCTestCase?\n\n    @objc func testCaseWillStart(testCase: XCTestCase) {\n        currentTestCase = testCase\n    }\n\n    @objc func testCaseDidFinish(testCase: XCTestCase) {\n        currentTestCase = nil\n    }\n}\n#endif\n\n\nfunc isXCTestAvailable() -> Bool {\n#if _runtime(_ObjC)\n    // XCTest is weakly linked and so may not be present\n    return NSClassFromString(\"XCTestCase\") != nil\n#else\n    return true\n#endif\n}\n\nprivate func recordFailure(message: String, location: SourceLocation) {\n#if _runtime(_ObjC)\n    if let testCase = CurrentTestCaseTracker.sharedInstance.currentTestCase {\n        testCase.recordFailureWithDescription(message, inFile: location.file, atLine: location.line, expected: true)\n    } else {\n        let msg = \"Attempted to report a test failure to XCTest while no test case was running. \" +\n        \"The failure was:\\n\\\"\\(message)\\\"\\nIt occurred at: \\(location.file):\\(location.line)\"\n        NSException(name: NSInternalInconsistencyException, reason: msg, userInfo: nil).raise()\n    }\n#else\n    XCTFail(\"\\(message)\\n\", file: location.file, line: location.line)\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/NonObjectiveC/ExceptionCapture.swift",
    "content": "import Foundation\n\n#if !_runtime(_ObjC)\n// swift-corelibs-foundation doesn't provide NSException at all, so provide a dummy\nclass NSException {}\n#endif\n\n// NOTE: This file is not intended to be included in the Xcode project. It\n//       is picked up by the Swift Package Manager during its build process.\n\n/// A dummy reimplementation of the `NMBExceptionCapture` class to serve\n/// as a stand-in for build and runtime environments that don't support\n/// Objective C.\ninternal class ExceptionCapture {\n    let finally: (() -> Void)?\n\n    init(handler: ((NSException!) -> Void)?, finally: (() -> Void)?) {\n        self.finally = finally\n    }\n\n    func tryBlock(unsafeBlock: (() -> Void)) {\n        // We have no way of handling Objective C exceptions in Swift,\n        // so we just go ahead and run the unsafeBlock as-is\n        unsafeBlock()\n\n        finally?()\n    }\n}\n\n/// Compatibility with the actual Objective-C implementation\ntypealias NMBExceptionCapture = ExceptionCapture\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/CurrentTestCaseTracker.h",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble22CurrentTestCaseTracker\")\n@interface CurrentTestCaseTracker : NSObject <XCTestObservation>\n+ (CurrentTestCaseTracker *)sharedInstance;\n@end\n\n@interface CurrentTestCaseTracker (Register) @end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class NMBExpectation;\n@class NMBObjCBeCloseToMatcher;\n@class NMBObjCRaiseExceptionMatcher;\n@protocol NMBMatcher;\n\n\n#define NIMBLE_EXPORT FOUNDATION_EXPORT\n\n#ifdef NIMBLE_DISABLE_SHORT_SYNTAX\n#define NIMBLE_SHORT(PROTO, ORIGINAL)\n#else\n#define NIMBLE_SHORT(PROTO, ORIGINAL) FOUNDATION_STATIC_INLINE PROTO { return (ORIGINAL); }\n#endif\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> equal(id expectedValue),\n             NMB_equal(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> haveCount(id expectedValue),\n             NMB_haveCount(expectedValue));\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue);\nNIMBLE_SHORT(NMBObjCBeCloseToMatcher *beCloseTo(id expectedValue),\n             NMB_beCloseTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAnInstanceOf(Class expectedClass),\n             NMB_beAnInstanceOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass);\nNIMBLE_SHORT(id<NMBMatcher> beAKindOf(Class expectedClass),\n             NMB_beAKindOf(expectedClass));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> beginWith(id itemElementOrSubstring),\n             NMB_beginWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThan(NSNumber *expectedValue),\n             NMB_beGreaterThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beGreaterThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beGreaterThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> beIdenticalTo(id expectedInstance),\n             NMB_beIdenticalTo(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance);\nNIMBLE_SHORT(id<NMBMatcher> be(id expectedInstance),\n             NMB_be(expectedInstance));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThan(NSNumber *expectedValue),\n             NMB_beLessThan(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> beLessThanOrEqualTo(NSNumber *expectedValue),\n             NMB_beLessThanOrEqualTo(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy(void);\nNIMBLE_SHORT(id<NMBMatcher> beTruthy(void),\n             NMB_beTruthy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalsy(void),\n             NMB_beFalsy());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue(void);\nNIMBLE_SHORT(id<NMBMatcher> beTrue(void),\n             NMB_beTrue());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse(void);\nNIMBLE_SHORT(id<NMBMatcher> beFalse(void),\n             NMB_beFalse());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil(void);\nNIMBLE_SHORT(id<NMBMatcher> beNil(void),\n             NMB_beNil());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty(void);\nNIMBLE_SHORT(id<NMBMatcher> beEmpty(void),\n             NMB_beEmpty());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) NS_REQUIRES_NIL_TERMINATION;\n#define NMB_contain(...) NMB_containWithNilTermination(__VA_ARGS__, nil)\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define contain(...) NMB_contain(__VA_ARGS__)\n#endif\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring);\nNIMBLE_SHORT(id<NMBMatcher> endWith(id itemElementOrSubstring),\n             NMB_endWith(itemElementOrSubstring));\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException(void);\nNIMBLE_SHORT(NMBObjCRaiseExceptionMatcher *raiseException(void),\n             NMB_raiseException());\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue);\nNIMBLE_SHORT(id<NMBMatcher> match(id expectedValue),\n             NMB_match(expectedValue));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id matcher);\nNIMBLE_SHORT(id<NMBMatcher> allPass(id matcher),\n             NMB_allPass(matcher));\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers);\n#define NMB_satisfyAnyOf(...) NMB_satisfyAnyOfWithMatchers(@[__VA_ARGS__])\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define satisfyAnyOf(...) NMB_satisfyAnyOf(__VA_ARGS__)\n#endif\n\n// In order to preserve breakpoint behavior despite using macros to fill in __FILE__ and __LINE__,\n// define a builder that populates __FILE__ and __LINE__, and returns a block that takes timeout\n// and action arguments. See https://github.com/Quick/Quick/pull/185 for details.\ntypedef void (^NMBWaitUntilTimeoutBlock)(NSTimeInterval timeout, void (^action)(void (^)(void)));\ntypedef void (^NMBWaitUntilBlock)(void (^action)(void (^)(void)));\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line);\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line);\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line);\n\n#define NMB_waitUntilTimeout NMB_waitUntilTimeoutBuilder(@(__FILE__), __LINE__)\n#define NMB_waitUntil NMB_waitUntilBuilder(@(__FILE__), __LINE__)\n\n#ifndef NIMBLE_DISABLE_SHORT_SYNTAX\n#define expect(...) NMB_expect(^id{ return (__VA_ARGS__); }, @(__FILE__), __LINE__)\n#define expectAction(BLOCK) NMB_expectAction((BLOCK), @(__FILE__), __LINE__)\n#define failWithMessage(msg) NMB_failWithMessage(msg, @(__FILE__), __LINE__)\n#define fail() failWithMessage(@\"fail() always fails\")\n\n\n#define waitUntilTimeout NMB_waitUntilTimeout\n#define waitUntil NMB_waitUntil\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/DSL.m",
    "content": "#import <Nimble/DSL.h>\n#import <Nimble/Nimble-Swift.h>\n\nSWIFT_CLASS(\"_TtC6Nimble7NMBWait\")\n@interface NMBWait : NSObject\n\n+ (void)untilTimeout:(NSTimeInterval)timeout file:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n+ (void)untilFile:(NSString *)file line:(NSUInteger)line action:(void(^)())action;\n\n@end\n\nNIMBLE_EXPORT NMBExpectation *NMB_expect(id(^actualBlock)(), NSString *file, NSUInteger line) {\n    return [[NMBExpectation alloc] initWithActualBlock:actualBlock\n                                              negative:NO\n                                                  file:file\n                                                  line:line];\n}\n\nNIMBLE_EXPORT NMBExpectation *NMB_expectAction(void(^actualBlock)(), NSString *file, NSUInteger line) {\n    return NMB_expect(^id{\n        actualBlock();\n        return nil;\n    }, file, line);\n}\n\nNIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger line) {\n    return [NMBExpectation failWithMessage:msg file:file line:line];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAnInstanceOf(Class expectedClass) {\n    return [NMBObjCMatcher beAnInstanceOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beAKindOf(Class expectedClass) {\n    return [NMBObjCMatcher beAKindOfMatcher:expectedClass];\n}\n\nNIMBLE_EXPORT NMBObjCBeCloseToMatcher *NMB_beCloseTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beCloseToMatcher:expectedValue within:0.001];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beginWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher beginWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beGreaterThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beGreaterThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beIdenticalTo(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_be(id expectedInstance) {\n    return [NMBObjCMatcher beIdenticalToMatcher:expectedInstance];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThan(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beLessThanOrEqualTo(NSNumber *expectedValue) {\n    return [NMBObjCMatcher beLessThanOrEqualToMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTruthy() {\n    return [NMBObjCMatcher beTruthyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalsy() {\n    return [NMBObjCMatcher beFalsyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beTrue() {\n    return [NMBObjCMatcher beTrueMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beFalse() {\n    return [NMBObjCMatcher beFalseMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beNil() {\n    return [NMBObjCMatcher beNilMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_beEmpty() {\n    return [NMBObjCMatcher beEmptyMatcher];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_containWithNilTermination(id itemOrSubstring, ...) {\n    NSMutableArray *itemOrSubstringArray = [NSMutableArray array];\n\n    if (itemOrSubstring) {\n        [itemOrSubstringArray addObject:itemOrSubstring];\n\n        va_list args;\n        va_start(args, itemOrSubstring);\n        id next;\n        while ((next = va_arg(args, id))) {\n            [itemOrSubstringArray addObject:next];\n        }\n        va_end(args);\n    }\n\n    return [NMBObjCMatcher containMatcher:itemOrSubstringArray];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_endWith(id itemElementOrSubstring) {\n    return [NMBObjCMatcher endWithMatcher:itemElementOrSubstring];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_equal(id expectedValue) {\n    return [NMBObjCMatcher equalMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_haveCount(id expectedValue) {\n    return [NMBObjCMatcher haveCountMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_match(id expectedValue) {\n    return [NMBObjCMatcher matchMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_allPass(id expectedValue) {\n    return [NMBObjCMatcher allPassMatcher:expectedValue];\n}\n\nNIMBLE_EXPORT id<NMBMatcher> NMB_satisfyAnyOfWithMatchers(id matchers) {\n    return [NMBObjCMatcher satisfyAnyOfMatcher:matchers];\n}\n\nNIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException() {\n    return [NMBObjCMatcher raiseExceptionMatcher];\n}\n\nNIMBLE_EXPORT NMBWaitUntilTimeoutBlock NMB_waitUntilTimeoutBuilder(NSString *file, NSUInteger line) {\n    return ^(NSTimeInterval timeout, void (^action)(void (^)(void))) {\n        [NMBWait untilTimeout:timeout file:file line:line action:action];\n    };\n}\n\nNIMBLE_EXPORT NMBWaitUntilBlock NMB_waitUntilBuilder(NSString *file, NSUInteger line) {\n  return ^(void (^action)(void (^)(void))) {\n    [NMBWait untilFile:file line:line action:action];\n  };\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.h",
    "content": "#import <Foundation/Foundation.h>\n#import <dispatch/dispatch.h>\n\n@interface NMBExceptionCapture : NSObject\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally;\n- (void)tryBlock:(void(^)())unsafeBlock;\n\n@end\n\ntypedef void(^NMBSourceCallbackBlock)(BOOL successful);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExceptionCapture.m",
    "content": "#import \"NMBExceptionCapture.h\"\n\n@interface NMBExceptionCapture ()\n@property (nonatomic, copy) void(^handler)(NSException *exception);\n@property (nonatomic, copy) void(^finally)();\n@end\n\n@implementation NMBExceptionCapture\n\n- (id)initWithHandler:(void(^)(NSException *))handler finally:(void(^)())finally {\n    self = [super init];\n    if (self) {\n        self.handler = handler;\n        self.finally = finally;\n    }\n    return self;\n}\n\n- (void)tryBlock:(void(^)())unsafeBlock {\n    @try {\n        unsafeBlock();\n    }\n    @catch (NSException *exception) {\n        if (self.handler) {\n            self.handler(exception);\n        }\n    }\n    @finally {\n        if (self.finally) {\n            self.finally();\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBExpectation.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\ninternal struct ObjCMatcherWrapper : Matcher {\n    let matcher: NMBMatcher\n\n    func matches(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.matches(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n\n    func doesNotMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        return matcher.doesNotMatch(\n            ({ try! actualExpression.evaluate() }),\n            failureMessage: failureMessage,\n            location: actualExpression.location)\n    }\n}\n\n// Equivalent to Expectation, but for Nimble's Objective-C interface\npublic class NMBExpectation : NSObject {\n    internal let _actualBlock: () -> NSObject!\n    internal var _negative: Bool\n    internal let _file: FileString\n    internal let _line: UInt\n    internal var _timeout: NSTimeInterval = 1.0\n\n    public init(actualBlock: () -> NSObject!, negative: Bool, file: FileString, line: UInt) {\n        self._actualBlock = actualBlock\n        self._negative = negative\n        self._file = file\n        self._line = line\n    }\n\n    private var expectValue: Expectation<NSObject> {\n        return expect(_file, line: _line){\n            self._actualBlock() as NSObject?\n        }\n    }\n\n    public var withTimeout: (NSTimeInterval) -> NMBExpectation {\n        return ({ timeout in self._timeout = timeout\n            return self\n        })\n    }\n\n    public var to: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher))\n        })\n    }\n\n    public var toWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.to(ObjCMatcherWrapper(matcher: matcher), description: description)\n        })\n    }\n\n    public var toNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher)\n            )\n        })\n    }\n\n    public var toNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toNot(\n                ObjCMatcherWrapper(matcher: matcher), description: description\n            )\n        })\n    }\n\n    public var notTo: (NMBMatcher) -> Void { return toNot }\n\n    public var notToWithDescription: (NMBMatcher, String) -> Void { return toNotWithDescription }\n\n    public var toEventually: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventually(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toEventuallyNot: (NMBMatcher) -> Void {\n        return ({ matcher in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: nil\n            )\n        })\n    }\n\n    public var toEventuallyNotWithDescription: (NMBMatcher, String) -> Void {\n        return ({ matcher, description in\n            self.expectValue.toEventuallyNot(\n                ObjCMatcherWrapper(matcher: matcher),\n                timeout: self._timeout,\n                description: description\n            )\n        })\n    }\n\n    public var toNotEventually: (NMBMatcher) -> Void { return toEventuallyNot }\n\n    public var toNotEventuallyWithDescription: (NMBMatcher, String) -> Void { return toEventuallyNotWithDescription }\n\n    public class func failWithMessage(message: String, file: FileString, line: UInt) {\n        fail(message, location: SourceLocation(file: file, line: line))\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBObjCMatcher.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic typealias MatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool\npublic typealias FullMatcherBlock = (actualExpression: Expression<NSObject>, failureMessage: FailureMessage, shouldNotMatch: Bool) -> Bool\n\npublic class NMBObjCMatcher : NSObject, NMBMatcher {\n    let _match: MatcherBlock\n    let _doesNotMatch: MatcherBlock\n    let canMatchNil: Bool\n\n    public init(canMatchNil: Bool, matcher: MatcherBlock, notMatcher: MatcherBlock) {\n        self.canMatchNil = canMatchNil\n        self._match = matcher\n        self._doesNotMatch = notMatcher\n    }\n\n    public convenience init(matcher: MatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: MatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: matcher, notMatcher: ({ actualExpression, failureMessage in\n            return !matcher(actualExpression: actualExpression, failureMessage: failureMessage)\n        }))\n    }\n\n    public convenience init(matcher: FullMatcherBlock) {\n        self.init(canMatchNil: true, matcher: matcher)\n    }\n\n    public convenience init(canMatchNil: Bool, matcher: FullMatcherBlock) {\n        self.init(canMatchNil: canMatchNil, matcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: false)\n        }), notMatcher: ({ actualExpression, failureMessage in\n            return matcher(actualExpression: actualExpression, failureMessage: failureMessage, shouldNotMatch: true)\n        }))\n    }\n\n    private func canMatch(actualExpression: Expression<NSObject>, failureMessage: FailureMessage) -> Bool {\n        do {\n            if !canMatchNil {\n                if try actualExpression.evaluate() == nil {\n                    failureMessage.postfixActual = \" (use beNil() to match nils)\"\n                    return false\n                }\n            }\n        } catch let error {\n            failureMessage.actualValue = \"an unexpected error thrown: \\(error)\"\n            return false\n        }\n        return true\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _match(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let expr = Expression(expression: actualBlock, location: location)\n        let result = _doesNotMatch(\n            actualExpression: expr,\n            failureMessage: failureMessage)\n        if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) {\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.h",
    "content": "@class NSString;\n\n/**\n * Returns a string appropriate for displaying in test output\n * from the provided value.\n *\n * @param value A value that will show up in a test's output.\n *\n * @return The string that is returned can be\n *     customized per type by conforming a type to the `TestOutputStringConvertible`\n *     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n *     function will return the value's debug description and then its\n *     normal description if available and in that order. Otherwise it\n *     will return the result of constructing a string from the value.\n *\n * @see `TestOutputStringConvertible`\n */\nextern NSString *_Nonnull NMBStringify(id _Nullable anyObject) __attribute__((warn_unused_result));\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/NMBStringify.m",
    "content": "#import \"NMBStringify.h\"\n#import <Nimble/Nimble-Swift.h>\n\nNSString *_Nonnull NMBStringify(id _Nullable anyObject) {\n    return [NMBStringer stringify:anyObject];\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Adapters/ObjectiveC/XCTestObservationCenter+Register.m",
    "content": "#import \"CurrentTestCaseTracker.h\"\n#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n\n#pragma mark - Method Swizzling\n\n/// Swaps the implementations between two instance methods.\n///\n/// @param class               The class containing `originalSelector`.\n/// @param originalSelector    Original method to replace.\n/// @param replacementSelector Replacement method.\nvoid swizzleSelectors(Class class, SEL originalSelector, SEL replacementSelector) {\n    Method originalMethod = class_getInstanceMethod(class, originalSelector);\n    Method replacementMethod = class_getInstanceMethod(class, replacementSelector);\n\n    BOOL didAddMethod =\n    class_addMethod(class,\n                    originalSelector,\n                    method_getImplementation(replacementMethod),\n                    method_getTypeEncoding(replacementMethod));\n\n    if (didAddMethod) {\n        class_replaceMethod(class,\n                            replacementSelector,\n                            method_getImplementation(originalMethod),\n                            method_getTypeEncoding(originalMethod));\n    } else {\n        method_exchangeImplementations(originalMethod, replacementMethod);\n    }\n}\n\n#pragma mark - Private\n\n@interface XCTestObservationCenter (Private)\n- (void)_addLegacyTestObserver:(id)observer;\n@end\n\n@implementation XCTestObservationCenter (Register)\n\n/// Uses objc method swizzling to register `CurrentTestCaseTracker` as a test observer. This is necessary\n/// because Xcode 7.3 introduced timing issues where if a custom `XCTestObservation` is registered too early\n/// it suppresses all console output (generated by `XCTestLog`), breaking any tools that depend on this output.\n/// This approach waits to register our custom test observer until XCTest adds its first \"legacy\" observer,\n/// falling back to registering after the first normal observer if this private method ever changes.\n+ (void)load {\n    if (class_getInstanceMethod([self class], @selector(_addLegacyTestObserver:))) {\n        // Swizzle -_addLegacyTestObserver:\n        swizzleSelectors([self class], @selector(_addLegacyTestObserver:), @selector(NMB_original__addLegacyTestObserver:));\n    } else {\n        // Swizzle -addTestObserver:, only if -_addLegacyTestObserver: is not implemented\n        swizzleSelectors([self class], @selector(addTestObserver:), @selector(NMB_original_addTestObserver:));\n    }\n}\n\n#pragma mark - Replacement Methods\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n- (void)NMB_original__addLegacyTestObserver:(id)observer {\n    [self NMB_original__addLegacyTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n/// Registers `CurrentTestCaseTracker` as a test observer after `XCTestLog` has been added.\n/// This method is only used if `-_addLegacyTestObserver:` is not impelemented. (added in Xcode 7.3)\n- (void)NMB_original_addTestObserver:(id<XCTestObservation>)observer {\n    [self NMB_original_addTestObserver:observer];\n\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        [self NMB_original_addTestObserver:[CurrentTestCaseTracker sharedInstance]];\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/DSL+Wait.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nprivate enum ErrorResult {\n    case Exception(NSException)\n    case Error(ErrorType)\n    case None\n}\n\n/// Only classes, protocols, methods, properties, and subscript declarations can be\n/// bridges to Objective-C via the @objc keyword. This class encapsulates callback-style\n/// asynchronous waiting logic so that it may be called from Objective-C and Swift.\ninternal class NMBWait: NSObject {\n    internal class func until(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) -> Void) -> Void {\n            return throwableUntil(timeout: timeout, file: file, line: line) { (done: () -> Void) throws -> Void in\n                action() { done() }\n            }\n    }\n\n    // Using a throwable closure makes this method not objc compatible.\n    internal class func throwableUntil(\n        timeout timeout: NSTimeInterval,\n        file: FileString = #file,\n        line: UInt = #line,\n        action: (() -> Void) throws -> Void) -> Void {\n            let awaiter = NimbleEnvironment.activeInstance.awaiter\n            let leeway = timeout / 2.0\n            let result = awaiter.performBlock { (done: (ErrorResult) -> Void) throws -> Void in\n                dispatch_async(dispatch_get_main_queue()) {\n                    let capture = NMBExceptionCapture(\n                        handler: ({ exception in\n                            done(.Exception(exception))\n                        }),\n                        finally: ({ })\n                    )\n                    capture.tryBlock {\n                        do {\n                            try action() {\n                                done(.None)\n                            }\n                        } catch let e {\n                            done(.Error(e))\n                        }\n                    }\n                }\n            }.timeout(timeout, forcefullyAbortTimeout: leeway).wait(\"waitUntil(...)\", file: file, line: line)\n\n            switch result {\n            case .Incomplete: internalError(\"Reached .Incomplete state for waitUntil(...).\")\n            case .BlockedRunLoop:\n                fail(blockedRunLoopErrorMessageFor(\"-waitUntil()\", leeway: leeway),\n                    file: file, line: line)\n            case .TimedOut:\n                let pluralize = (timeout == 1 ? \"\" : \"s\")\n                fail(\"Waited more than \\(timeout) second\\(pluralize)\", file: file, line: line)\n            case let .RaisedException(exception):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case let .ErrorThrown(error):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.Exception(let exception)):\n                fail(\"Unexpected exception raised: \\(exception)\")\n            case .Completed(.Error(let error)):\n                fail(\"Unexpected error thrown: \\(error)\")\n            case .Completed(.None): // success\n                break\n            }\n    }\n\n    @objc(untilFile:line:action:)\n    internal class func until(file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n        until(timeout: 1, file: file, line: line, action: action)\n    }\n}\n\ninternal func blockedRunLoopErrorMessageFor(fnName: String, leeway: NSTimeInterval) -> String {\n    return \"\\(fnName) timed out but was unable to run the timeout handler because the main thread is unresponsive (\\(leeway) seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n}\n\n/// Wait asynchronously until the done closure is called or the timeout has been reached.\n///\n/// @discussion\n/// Call the done() closure to indicate the waiting has completed.\n/// \n/// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n/// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\npublic func waitUntil(timeout timeout: NSTimeInterval = 1, file: FileString = #file, line: UInt = #line, action: (() -> Void) -> Void) -> Void {\n    NMBWait.until(timeout: timeout, file: file, line: line, action: action)\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/DSL.swift",
    "content": "import Foundation\n\n/// Make an expectation on a given actual value. The value given is lazily evaluated.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(@autoclosure(escaping) expression: () throws -> T?, file: FileString = #file, line: UInt = #line) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Make an expectation on a given actual value. The closure is lazily invoked.\n@warn_unused_result(message=\"Follow 'expect(…)' with '.to(…)', '.toNot(…)', 'toEventually(…)', '==', etc.\")\npublic func expect<T>(file: FileString = #file, line: UInt = #line, expression: () throws -> T?) -> Expectation<T> {\n    return Expectation(\n        expression: Expression(\n            expression: expression,\n            location: SourceLocation(file: file, line: line),\n            isClosure: true))\n}\n\n/// Always fails the test with a message and a specified location.\npublic func fail(message: String, location: SourceLocation) {\n    let handler = NimbleEnvironment.activeInstance.assertionHandler\n    handler.assert(false, message: FailureMessage(stringValue: message), location: location)\n}\n\n/// Always fails the test with a message.\npublic func fail(message: String, file: FileString = #file, line: UInt = #line) {\n    fail(message, location: SourceLocation(file: file, line: line))\n}\n\n/// Always fails the test.\npublic func fail(file: FileString = #file, line: UInt = #line) {\n    fail(\"fail() always fails\", file: file, line: line)\n}\n\n/// Like Swift's precondition(), but raises NSExceptions instead of sigaborts\ninternal func nimblePrecondition(\n    @autoclosure expr: () -> Bool,\n    @autoclosure _ name: () -> String,\n    @autoclosure _ message: () -> String,\n    file: StaticString = #file,\n    line: UInt = #line) -> Bool {\n        let result = expr()\n        if !result {\n#if _runtime(_ObjC)\n            let e = NSException(\n                name: name(),\n                reason: message(),\n                userInfo: nil)\n            e.raise()\n#else\n            preconditionFailure(\"\\(name()) - \\(message())\", file: file, line: line)\n#endif\n        }\n        return result\n}\n\n@noreturn\ninternal func internalError(msg: String, file: FileString = #file, line: UInt = #line) {\n    fatalError(\n        \"Nimble Bug Found: \\(msg) at \\(file):\\(line).\\n\" +\n        \"Please file a bug to Nimble: https://github.com/Quick/Nimble/issues with the \" +\n        \"code snippet that caused this error.\"\n    )\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Expectation.swift",
    "content": "import Foundation\n\ninternal func expressionMatches<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, to: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = to\n    do {\n        let pass = try matcher.matches(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\ninternal func expressionDoesNotMatch<T, U where U: Matcher, U.ValueType == T>(expression: Expression<T>, matcher: U, toNot: String, description: String?) -> (Bool, FailureMessage) {\n    let msg = FailureMessage()\n    msg.userDescription = description\n    msg.to = toNot\n    do {\n        let pass = try matcher.doesNotMatch(expression, failureMessage: msg)\n        if msg.actualValue == \"\" {\n            msg.actualValue = \"<\\(stringify(try expression.evaluate()))>\"\n        }\n        return (pass, msg)\n    } catch let error {\n        msg.actualValue = \"an unexpected error thrown: <\\(error)>\"\n        return (false, msg)\n    }\n}\n\npublic struct Expectation<T> {\n\n    public let expression: Expression<T>\n\n    public func verify(pass: Bool, _ message: FailureMessage) {\n        let handler = NimbleEnvironment.activeInstance.assertionHandler\n        handler.assert(pass, message: message, location: expression.location)\n    }\n\n    /// Tests the actual value using a matcher to match.\n    public func to<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionMatches(expression, matcher: matcher, to: \"to\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    public func toNot<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        let (pass, msg) = expressionDoesNotMatch(expression, matcher: matcher, toNot: \"to not\", description: description)\n        verify(pass, msg)\n    }\n\n    /// Tests the actual value using a matcher to not match.\n    ///\n    /// Alias to toNot().\n    public func notTo<U where U: Matcher, U.ValueType == T>(matcher: U, description: String? = nil) {\n        toNot(matcher, description: description)\n    }\n\n    // see:\n    // - AsyncMatcherWrapper for extension\n    // - NMBExpectation for Objective-C interface\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Expression.swift",
    "content": "import Foundation\n\n// Memoizes the given closure, only calling the passed\n// closure once; even if repeat calls to the returned closure\ninternal func memoizedClosure<T>(closure: () throws -> T) -> (Bool) throws -> T {\n    var cache: T?\n    return ({ withoutCaching in\n        if (withoutCaching || cache == nil) {\n            cache = try closure()\n        }\n        return cache!\n    })\n}\n\n/// Expression represents the closure of the value inside expect(...).\n/// Expressions are memoized by default. This makes them safe to call\n/// evaluate() multiple times without causing a re-evaluation of the underlying\n/// closure.\n///\n/// @warning Since the closure can be any code, Objective-C code may choose\n///          to raise an exception. Currently, Expression does not memoize\n///          exception raising.\n///\n/// This provides a common consumable API for matchers to utilize to allow\n/// Nimble to change internals to how the captured closure is managed.\npublic struct Expression<T> {\n    internal let _expression: (Bool) throws -> T?\n    internal let _withoutCaching: Bool\n    public let location: SourceLocation\n    public let isClosure: Bool\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process. The expression is memoized.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(expression: () throws -> T?, location: SourceLocation, isClosure: Bool = true) {\n        self._expression = memoizedClosure(expression)\n        self.location = location\n        self._withoutCaching = false\n        self.isClosure = isClosure\n    }\n\n    /// Creates a new expression struct. Normally, expect(...) will manage this\n    /// creation process.\n    ///\n    /// @param expression The closure that produces a given value.\n    /// @param location The source location that this closure originates from.\n    /// @param withoutCaching Indicates if the struct should memoize the given\n    ///                       closure's result. Subsequent evaluate() calls will\n    ///                       not call the given closure if this is true.\n    /// @param isClosure A bool indicating if the captured expression is a\n    ///                  closure or internally produced closure. Some matchers\n    ///                  may require closures. For example, toEventually()\n    ///                  requires an explicit closure. This gives Nimble\n    ///                  flexibility if @autoclosure behavior changes between\n    ///                  Swift versions. Nimble internals always sets this true.\n    public init(memoizedExpression: (Bool) throws -> T?, location: SourceLocation, withoutCaching: Bool, isClosure: Bool = true) {\n        self._expression = memoizedExpression\n        self.location = location\n        self._withoutCaching = withoutCaching\n        self.isClosure = isClosure\n    }\n\n    /// Returns a new Expression from the given expression. Identical to a map()\n    /// on this type. This should be used only to typecast the Expression's\n    /// closure value.\n    ///\n    /// The returned expression will preserve location and isClosure.\n    ///\n    /// @param block The block that can cast the current Expression value to a\n    ///              new type.\n    public func cast<U>(block: (T?) throws -> U?) -> Expression<U> {\n        return Expression<U>(expression: ({ try block(self.evaluate()) }), location: self.location, isClosure: self.isClosure)\n    }\n\n    public func evaluate() throws -> T? {\n        return try self._expression(_withoutCaching)\n    }\n\n    public func withoutCaching() -> Expression<T> {\n        return Expression(memoizedExpression: self._expression, location: location, withoutCaching: true, isClosure: isClosure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/FailureMessage.swift",
    "content": "import Foundation\n\n/// Encapsulates the failure message that matchers can report to the end user.\n///\n/// This is shared state between Nimble and matchers that mutate this value.\npublic class FailureMessage: NSObject {\n    public var expected: String = \"expected\"\n    public var actualValue: String? = \"\" // empty string -> use default; nil -> exclude\n    public var to: String = \"to\"\n    public var postfixMessage: String = \"match\"\n    public var postfixActual: String = \"\"\n    /// An optional message that will be appended as a new line and provides additional details\n    /// about the failure. This message will only be visible in the issue navigator / in logs but\n    /// not directly in the source editor since only a single line is presented there.\n    public var extendedMessage: String? = nil\n    public var userDescription: String? = nil\n\n    public var stringValue: String {\n        get {\n            if let value = _stringValueOverride {\n                return value\n            } else {\n                return computeStringValue()\n            }\n        }\n        set {\n            _stringValueOverride = newValue\n        }\n    }\n\n    internal var _stringValueOverride: String?\n\n    public override init() {\n    }\n\n    public init(stringValue: String) {\n        _stringValueOverride = stringValue\n    }\n\n    internal func stripNewlines(str: String) -> String {\n        var lines: [String] = NSString(string: str).componentsSeparatedByString(\"\\n\") as [String]\n        let whitespace = NSCharacterSet.whitespaceAndNewlineCharacterSet()\n        lines = lines.map { line in NSString(string: line).stringByTrimmingCharactersInSet(whitespace) }\n        return lines.joinWithSeparator(\"\")\n    }\n\n    internal func computeStringValue() -> String {\n        var value = \"\\(expected) \\(to) \\(postfixMessage)\"\n        if let actualValue = actualValue {\n            value = \"\\(expected) \\(to) \\(postfixMessage), got \\(actualValue)\\(postfixActual)\"\n        }\n        value = stripNewlines(value)\n\n        if let extendedMessage = extendedMessage {\n            value += \"\\n\\(stripNewlines(extendedMessage))\"\n        }\n\n        if let userDescription = userDescription {\n            return \"\\(userDescription)\\n\\(value)\"\n        }\n        \n        return value\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 Jeff Hui. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/AllPass.swift",
    "content": "import Foundation\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return allPass(\"pass a condition\", passFunc)\n}\n\npublic func allPass<T,U where U: SequenceType, U.Generator.Element == T>\n    (passName: String, _ passFunc: (T?) -> Bool) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            expression, failureMessage in\n            failureMessage.postfixMessage = passName\n            return passFunc(try expression.evaluate())\n        }\n}\n\npublic func allPass<U,V where U: SequenceType, V: Matcher, U.Generator.Element == V.ValueType>\n    (matcher: V) -> NonNilMatcherFunc<U> {\n        return createAllPassMatcher() {\n            try matcher.matches($0, failureMessage: $1)\n        }\n}\n\nprivate func createAllPassMatcher<T,U where U: SequenceType, U.Generator.Element == T>\n    (elementEvaluator:(Expression<T>, FailureMessage) throws -> Bool) -> NonNilMatcherFunc<U> {\n        return NonNilMatcherFunc { actualExpression, failureMessage in\n            failureMessage.actualValue = nil\n            if let actualValue = try actualExpression.evaluate() {\n                for currentElement in actualValue {\n                    let exp = Expression(\n                        expression: {currentElement}, location: actualExpression.location)\n                    if try !elementEvaluator(exp, failureMessage) {\n                        failureMessage.postfixMessage =\n                            \"all \\(failureMessage.postfixMessage),\"\n                            + \" but failed first at element <\\(stringify(currentElement))>\"\n                            + \" in <\\(stringify(actualValue))>\"\n                        return false\n                    }\n                }\n                failureMessage.postfixMessage = \"all \\(failureMessage.postfixMessage)\"\n            } else {\n                failureMessage.postfixMessage = \"all pass (use beNil() to match nils)\"\n                return false\n            }\n            \n            return true\n        }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func allPassMatcher(matcher: NMBObjCMatcher) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            var nsObjects = [NSObject]()\n            \n            var collectionIsUsable = true\n            if let value = actualValue as? NSFastEnumeration {\n                let generator = NSFastGenerator(value)\n                while let obj:AnyObject = generator.next() {\n                    if let nsObject = obj as? NSObject {\n                        nsObjects.append(nsObject)\n                    } else {\n                        collectionIsUsable = false\n                        break\n                    }\n                }\n            } else {\n                collectionIsUsable = false\n            }\n            \n            if !collectionIsUsable {\n                failureMessage.postfixMessage =\n                  \"allPass only works with NSFastEnumeration (NSArray, NSSet, ...) of NSObjects\"\n                failureMessage.expected = \"\"\n                failureMessage.to = \"\"\n                return false\n            }\n            \n            let expr = Expression(expression: ({ nsObjects }), location: location)\n            let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                expression, failureMessage in\n                return matcher.matches(\n                    {try! expression.evaluate()}, failureMessage: failureMessage, location: expr.location)\n            }\n            return try! createAllPassMatcher(elementEvaluator).matches(\n                expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\npublic struct AsyncDefaults {\n    public static var Timeout: NSTimeInterval = 1\n    public static var PollInterval: NSTimeInterval = 0.01\n}\n\ninternal struct AsyncMatcherWrapper<T, U where U: Matcher, U.ValueType == T>: Matcher {\n    let fullMatcher: U\n    let timeoutInterval: NSTimeInterval\n    let pollInterval: NSTimeInterval\n\n    init(fullMatcher: U, timeoutInterval: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval) {\n      self.fullMatcher = fullMatcher\n      self.timeoutInterval = timeoutInterval\n      self.pollInterval = pollInterval\n    }\n\n    func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let fnName = \"expect(...).toEventually(...)\"\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: fnName) {\n                try self.fullMatcher.matches(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventually(...).\")\n        }\n    }\n\n    func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) -> Bool  {\n        let uncachedExpression = actualExpression.withoutCaching()\n        let result = pollBlock(\n            pollInterval: pollInterval,\n            timeoutInterval: timeoutInterval,\n            file: actualExpression.location.file,\n            line: actualExpression.location.line,\n            fnName: \"expect(...).toEventuallyNot(...)\") {\n                try self.fullMatcher.doesNotMatch(uncachedExpression, failureMessage: failureMessage)\n        }\n        switch (result) {\n        case let .Completed(isSuccessful): return isSuccessful\n        case .TimedOut: return false\n        case let .ErrorThrown(error):\n            failureMessage.actualValue = \"an unexpected error thrown: <\\(error)>\"\n            return false\n        case let .RaisedException(exception):\n            failureMessage.actualValue = \"an unexpected exception thrown: <\\(exception)>\"\n            return false\n        case .BlockedRunLoop:\n            failureMessage.postfixMessage += \" (timed out, but main thread was unresponsive).\"\n            return false\n        case .Incomplete:\n            internalError(\"Reached .Incomplete state for toEventuallyNot(...).\")\n        }\n    }\n}\n\nprivate let toEventuallyRequiresClosureError = FailureMessage(stringValue: \"expect(...).toEventually(...) requires an explicit closure (eg - expect { ... }.toEventually(...) )\\nSwift 1.2 @autoclosure behavior has changed in an incompatible way for Nimble to function\")\n\n\nextension Expectation {\n    /// Tests the actual value using a matcher to match by checking continuously\n    /// at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionMatches(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                to: \"to eventually\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toEventuallyNot<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        if expression.isClosure {\n            let (pass, msg) = expressionDoesNotMatch(\n                expression,\n                matcher: AsyncMatcherWrapper(\n                    fullMatcher: matcher,\n                    timeoutInterval: timeout,\n                    pollInterval: pollInterval),\n                toNot: \"to eventually not\",\n                description: description\n            )\n            verify(pass, msg)\n        } else {\n            verify(false, toEventuallyRequiresClosureError)\n        }\n    }\n\n    /// Tests the actual value using a matcher to not match by checking\n    /// continuously at each pollInterval until the timeout is reached.\n    ///\n    /// Alias of toEventuallyNot()\n    ///\n    /// @discussion\n    /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function\n    /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior.\n    public func toNotEventually<U where U: Matcher, U.ValueType == T>(matcher: U, timeout: NSTimeInterval = AsyncDefaults.Timeout, pollInterval: NSTimeInterval = AsyncDefaults.PollInterval, description: String? = nil) {\n        return toEventuallyNot(matcher, timeout: timeout, pollInterval: pollInterval, description: description)\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n// A Nimble matcher that catches attempts to use beAKindOf with non Objective-C types\npublic func beAKindOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAKindOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAnInstanceOf if you want to match against the exact class\npublic func beAKindOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be a kind of \\(classAsString(expectedClass))\"\n        return instance != nil && instance!.isKindOfClass(expectedClass)\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beAKindOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAKindOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift",
    "content": "import Foundation\n\n// A Nimble matcher that catches attempts to use beAnInstanceOf with non Objective-C types\npublic func beAnInstanceOf(expectedClass: Any) -> NonNilMatcherFunc<Any> {\n    return NonNilMatcherFunc {actualExpression, failureMessage in\n        failureMessage.stringValue = \"beAnInstanceOf only works on Objective-C types since\"\n            + \" the Swift compiler will automatically type check Swift-only types.\"\n            + \" This expectation is redundant.\"\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is an instance of the given class.\n/// @see beAKindOf if you want to match against subclasses\npublic func beAnInstanceOf(expectedClass: AnyClass) -> NonNilMatcherFunc<NSObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let instance = try actualExpression.evaluate()\n        if let validInstance = instance {\n            failureMessage.actualValue = \"<\\(classAsString(validInstance.dynamicType)) instance>\"\n        } else {\n            failureMessage.actualValue = \"<nil>\"\n        }\n        failureMessage.postfixMessage = \"be an instance of \\(classAsString(expectedClass))\"\n#if _runtime(_ObjC)\n        return instance != nil && instance!.isMemberOfClass(expectedClass)\n#else\n        return instance != nil && instance!.dynamicType == expectedClass\n#endif\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beAnInstanceOfMatcher(expected: AnyClass) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! beAnInstanceOf(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift",
    "content": "#if os(Linux)\nimport Glibc\n#endif\nimport Foundation\n\ninternal let DefaultDelta = 0.0001\n\ninternal func isCloseTo(actualValue: NMBDoubleConvertible?, expectedValue: NMBDoubleConvertible, delta: Double, failureMessage: FailureMessage) -> Bool {\n    failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValue))> (within \\(stringify(delta)))\"\n    failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n    return actualValue != nil && abs(actualValue!.doubleValue - expectedValue.doubleValue) < delta\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: Double, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<Double> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is close to another. This is used for floating\n/// point values which can have imprecise results when doing arithmetic on them.\n///\n/// @see equal\npublic func beCloseTo(expectedValue: NMBDoubleConvertible, within delta: Double = DefaultDelta) -> NonNilMatcherFunc<NMBDoubleConvertible> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        return isCloseTo(try actualExpression.evaluate(), expectedValue: expectedValue, delta: delta, failureMessage: failureMessage)\n    }\n}\n\n#if _runtime(_ObjC)\npublic class NMBObjCBeCloseToMatcher : NSObject, NMBMatcher {\n    var _expected: NSNumber\n    var _delta: CDouble\n    init(expected: NSNumber, within: CDouble) {\n        _expected = expected\n        _delta = within\n    }\n\n    public func matches(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let actualBlock: () -> NMBDoubleConvertible? = ({\n            return actualExpression() as? NMBDoubleConvertible\n        })\n        let expr = Expression(expression: actualBlock, location: location)\n        let matcher = beCloseTo(self._expected, within: self._delta)\n        return try! matcher.doesNotMatch(expr, failureMessage: failureMessage)\n    }\n\n    public var within: (CDouble) -> NMBObjCBeCloseToMatcher {\n        return ({ delta in\n            return NMBObjCBeCloseToMatcher(expected: self._expected, within: delta)\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func beCloseToMatcher(expected: NSNumber, within: CDouble) -> NMBObjCBeCloseToMatcher {\n        return NMBObjCBeCloseToMatcher(expected: expected, within: within)\n    }\n}\n#endif\n\npublic func beCloseTo(expectedValues: [Double], within delta: Double = DefaultDelta) -> NonNilMatcherFunc <[Double]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be close to <\\(stringify(expectedValues))> (each within \\(stringify(delta)))\"\n        if let actual = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"<\\(stringify(actual))>\"\n\n            if actual.count != expectedValues.count {\n                return false\n            } else {\n                for (index, actualItem) in actual.enumerate() {\n                    if fabs(actualItem - expectedValues[index]) > delta {\n                        return false\n                    }\n                }\n                return true\n            }\n        }\n        return false\n    }\n}\n\n// MARK: - Operators\n\ninfix operator ≈ {\n    associativity none\n    precedence 130\n}\n\npublic func ≈(lhs: Expectation<[Double]>, rhs: [Double]) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: NMBDoubleConvertible) {\n    lhs.to(beCloseTo(rhs))\n}\n\npublic func ≈(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\npublic func ==(lhs: Expectation<NMBDoubleConvertible>, rhs: (expected: NMBDoubleConvertible, delta: Double)) {\n    lhs.to(beCloseTo(rhs.expected, within: rhs.delta))\n}\n\n// make this higher precedence than exponents so the Doubles either end aren't pulled in\n// unexpectantly\ninfix operator ± { precedence 170 }\npublic func ±(lhs: NMBDoubleConvertible, rhs: Double) -> (expected: NMBDoubleConvertible, delta: Double) {\n    return (expected: lhs, delta: rhs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeEmpty.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty<S: SequenceType>() -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualSeq = try actualExpression.evaluate()\n        if actualSeq == nil {\n            return true\n        }\n        var generator = actualSeq!.generate()\n        return generator.next() == nil\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || NSString(string: actualString!).length  == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For NSString instances, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actualString = try actualExpression.evaluate()\n        return actualString == nil || actualString!.length == 0\n    }\n}\n\n// Without specific overrides, beEmpty() is ambiguous for NSDictionary, NSArray,\n// etc, since they conform to SequenceType as well as NMBCollection.\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSDictionary> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualDictionary = try actualExpression.evaluate()\n\t\treturn actualDictionary == nil || actualDictionary!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NSArray> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tfailureMessage.postfixMessage = \"be empty\"\n\t\tlet actualArray = try actualExpression.evaluate()\n\t\treturn actualArray == nil || actualArray!.count == 0\n\t}\n}\n\n/// A Nimble matcher that succeeds when a value is \"empty\". For collections, this\n/// means the are no items in that collection. For strings, it is an empty string.\npublic func beEmpty() -> NonNilMatcherFunc<NMBCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be empty\"\n        let actual = try actualExpression.evaluate()\n        return actual == nil || actual!.count == 0\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beEmptyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            failureMessage.postfixMessage = \"be empty\"\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! beEmpty().matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings)\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType)) type\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() > expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than the expected value.\npublic func beGreaterThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedDescending\n        return matches\n    }\n}\n\npublic func ><T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThan(rhs))\n}\n\npublic func >(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beGreaterThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue >= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is greater than\n/// or equal to the expected value.\npublic func beGreaterThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be greater than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func >=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\npublic func >=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beGreaterThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beGreaterThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\npublic func beIdenticalTo(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actual = try actualExpression.evaluate()\n        failureMessage.actualValue = \"\\(identityAsString(actual))\"\n        failureMessage.postfixMessage = \"be identical to \\(identityAsString(expected))\"\n        return actual === expected && actual !== nil\n    }\n}\n\npublic func ===(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.to(beIdenticalTo(rhs))\n}\npublic func !==(lhs: Expectation<AnyObject>, rhs: AnyObject?) {\n    lhs.toNot(beIdenticalTo(rhs))\n}\n\n/// A Nimble matcher that succeeds when the actual value is the same instance\n/// as the expected instance.\n///\n/// Alias for \"beIdenticalTo\".\npublic func be(expected: AnyObject?) -> NonNilMatcherFunc<AnyObject> {\n    return beIdenticalTo(expected)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beIdenticalToMatcher(expected: NSObject?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let aExpr = actualExpression.cast { $0 as AnyObject? }\n            return try! beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLessThan.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() < expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than the expected value.\npublic func beLessThan(expectedValue: NMBComparable?) -> NonNilMatcherFunc<NMBComparable> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == NSComparisonResult.OrderedAscending\n        return matches\n    }\n}\n\npublic func <<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThan(rhs))\n}\n\npublic func <(lhs: Expectation<NMBComparable>, rhs: NMBComparable?) {\n    lhs.to(beLessThan(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as! NMBComparable? }\n            return try! beLessThan(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: Comparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        return try actualExpression.evaluate() <= expectedValue\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is less than\n/// or equal to the expected value.\npublic func beLessThanOrEqualTo<T: NMBComparable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be less than or equal to <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue != nil && actualValue!.NMB_compare(expectedValue) != NSComparisonResult.OrderedDescending\n    }\n}\n\npublic func <=<T: Comparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\npublic func <=<T: NMBComparable>(lhs: Expectation<T>, rhs: T) {\n    lhs.to(beLessThanOrEqualTo(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beLessThanOrEqualToMatcher(expected: NMBComparable?) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil:false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { $0 as? NMBComparable }\n            return try! beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeLogical.swift",
    "content": "import Foundation\n\ninternal func matcherWithFailureMessage<T>(matcher: NonNilMatcherFunc<T>, postprocessor: (FailureMessage) -> Void) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        defer { postprocessor(failureMessage) }\n        return try matcher.matcher(actualExpression, failureMessage)\n    }\n}\n\n// MARK: beTrue() / beFalse()\n\n/// A Nimble matcher that succeeds when the actual value is exactly true.\n/// This matcher will not match against nils.\npublic func beTrue() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(true)) { failureMessage in\n        failureMessage.postfixMessage = \"be true\"\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is exactly false.\n/// This matcher will not match against nils.\npublic func beFalse() -> NonNilMatcherFunc<Bool> {\n    return matcherWithFailureMessage(equal(false)) { failureMessage in\n        failureMessage.postfixMessage = \"be false\"\n    }\n}\n\n// MARK: beTruthy() / beFalsy()\n\n/// A Nimble matcher that succeeds when the actual value is not logically false.\npublic func beTruthy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be truthy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue == true\n            }\n        }\n        return actualValue != nil\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is logically false.\n/// This matcher will match against nils.\npublic func beFalsy<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be falsy\"\n        let actualValue = try actualExpression.evaluate()\n        if let actualValue = actualValue {\n            if let actualValue = actualValue as? BooleanType {\n                return actualValue.boolValue != true\n            }\n        }\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beTruthyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beTruthy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalsyMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as BooleanType? }\n            return try! beFalsy().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beTrueMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beTrue().matches(expr, failureMessage: failureMessage)\n        }\n    }\n\n    public class func beFalseMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false as Bool? }\n            return try! beFalse().matches(expr, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeNil.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is nil.\npublic func beNil<T>() -> MatcherFunc<T> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be nil\"\n        let actualValue = try actualExpression.evaluate()\n        return actualValue == nil\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beNilMatcher() -> NMBObjCMatcher {\n        return NMBObjCMatcher { actualExpression, failureMessage in\n            return try! beNil().matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeVoid.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is Void.\npublic func beVoid() -> MatcherFunc<()> {\n    return MatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"be void\"\n        let actualValue: ()? = try actualExpression.evaluate()\n        return actualValue != nil\n    }\n}\n\npublic func ==(lhs: Expectation<()>, rhs: ()) {\n    lhs.to(beVoid())\n}\n\npublic func !=(lhs: Expectation<()>, rhs: ()) {\n    lhs.toNot(beVoid())\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/BeginWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's first element\n/// is equal to the expected value.\npublic func beginWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(startingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            return actualGenerator.next() == startingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's first element\n/// is equal to the expected object.\npublic func beginWith(startingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(startingElement) == 0\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains expected substring\n/// where the expected substring's location is zero.\npublic func beginWith(startingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"begin with <\\(startingSubstring)>\"\n        if let actual = try actualExpression.evaluate() {\n            let range = actual.rangeOfString(startingSubstring)\n            return range != nil && range!.startIndex == actual.startIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func beginWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! beginWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! beginWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Contain.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual sequence contains the expected value.\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: T...) -> NonNilMatcherFunc<S> {\n    return contain(items)\n}\n\npublic func contain<S: SequenceType, T: Equatable where S.Generator.Element == T>(items: [T]) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        if let actual = try actualExpression.evaluate() {\n            return items.all {\n                return actual.contains($0)\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: String...) -> NonNilMatcherFunc<String> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [String]) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all {\n                let range = actual.rangeOfString($0)\n                return range != nil && !range!.isEmpty\n            }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring.\npublic func contain(substrings: NSString...) -> NonNilMatcherFunc<NSString> {\n    return contain(substrings)\n}\n\npublic func contain(substrings: [NSString]) -> NonNilMatcherFunc<NSString> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(substrings))>\"\n        if let actual = try actualExpression.evaluate() {\n            return substrings.all { actual.rangeOfString($0.description).length != 0 }\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection contains the expected object.\npublic func contain(items: AnyObject?...) -> NonNilMatcherFunc<NMBContainer> {\n    return contain(items)\n}\n\npublic func contain(items: [AnyObject?]) -> NonNilMatcherFunc<NMBContainer> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"contain <\\(arrayAsString(items))>\"\n        guard let actual = try actualExpression.evaluate() else { return false }\n        return items.all { item in\n            return item != nil && actual.containsObject(item!)\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func containMatcher(expected: [NSObject]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBContainer {\n                let expr = Expression(expression: ({ value as NMBContainer }), location: location)\n\n                // A straightforward cast on the array causes this to crash, so we have to cast the individual items\n                let expectedOptionals: [AnyObject?] = expected.map({ $0 as AnyObject? })\n                return try! contain(expectedOptionals).matches(expr, failureMessage: failureMessage)\n            } else if let value = actualValue as? NSString {\n                let expr = Expression(expression: ({ value as String }), location: location)\n                return try! contain(expected as! [String]).matches(expr, failureMessage: failureMessage)\n            } else if actualValue != nil {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))> (only works for NSArrays, NSSets, NSHashTables, and NSStrings)\"\n            } else {\n                failureMessage.postfixMessage = \"contain <\\(arrayAsString(expected))>\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/EndWith.swift",
    "content": "import Foundation\n\n\n/// A Nimble matcher that succeeds when the actual sequence's last element\n/// is equal to the expected value.\npublic func endWith<S: SequenceType, T: Equatable where S.Generator.Element == T>(endingElement: T) -> NonNilMatcherFunc<S> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n\n        if let actualValue = try actualExpression.evaluate() {\n            var actualGenerator = actualValue.generate()\n            var lastItem: T?\n            var item: T?\n            repeat {\n                lastItem = item\n                item = actualGenerator.next()\n            } while(item != nil)\n            \n            return lastItem == endingElement\n        }\n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's last element\n/// is equal to the expected object.\npublic func endWith(endingElement: AnyObject) -> NonNilMatcherFunc<NMBOrderedCollection> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingElement)>\"\n        let collection = try actualExpression.evaluate()\n        return collection != nil && collection!.indexOfObject(endingElement) == collection!.count - 1\n    }\n}\n\n\n/// A Nimble matcher that succeeds when the actual string contains the expected substring\n/// where the expected substring's location is the actual string's length minus the\n/// expected substring's length.\npublic func endWith(endingSubstring: String) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"end with <\\(endingSubstring)>\"\n        if let collection = try actualExpression.evaluate() {\n            let range = collection.rangeOfString(endingSubstring)\n            return range != nil && range!.endIndex == collection.endIndex\n        }\n        return false\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func endWithMatcher(expected: AnyObject) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = try! actualExpression.evaluate()\n            if let _ = actual as? String {\n                let expr = actualExpression.cast { $0 as? String }\n                return try! endWith(expected as! String).matches(expr, failureMessage: failureMessage)\n            } else {\n                let expr = actualExpression.cast { $0 as? NMBOrderedCollection }\n                return try! endWith(expected).matches(expr, failureMessage: failureMessage)\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Equal.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable>(expectedValue: T?) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        let matches = actualValue == expectedValue && expectedValue != nil\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return matches\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual value is equal to the expected value.\n/// Values can support equal by supporting the Equatable protocol.\n///\n/// @see beCloseTo if you want to match imprecise types (eg - floats, doubles).\npublic func equal<T: Equatable, C: Equatable>(expectedValue: [T: C]?) -> NonNilMatcherFunc<[T: C]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection is equal to the expected collection.\n/// Items must implement the Equatable protocol.\npublic func equal<T: Equatable>(expectedValue: [T]?) -> NonNilMatcherFunc<[T]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        let actualValue = try actualExpression.evaluate()\n        if expectedValue == nil || actualValue == nil {\n            if expectedValue == nil {\n                failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            }\n            return false\n        }\n        return expectedValue! == actualValue!\n    }\n}\n\n/// A Nimble matcher allowing comparison of collection with optional type\npublic func equal<T: Equatable>(expectedValue: [T?]) -> NonNilMatcherFunc<[T?]> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n        if let actualValue = try actualExpression.evaluate() {\n            if expectedValue.count != actualValue.count {\n                return false\n            }\n            \n            for (index, item) in actualValue.enumerate() {\n                let otherItem = expectedValue[index]\n                if item == nil && otherItem == nil {\n                    continue\n                } else if item == nil && otherItem != nil {\n                    return false\n                } else if item != nil && otherItem == nil {\n                    return false\n                } else if item! != otherItem! {\n                    return false\n                }\n            }\n            \n            return true\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n        \n        return false\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: stringify)\n}\n\n/// A Nimble matcher that succeeds when the actual set is equal to the expected set.\npublic func equal<T: Comparable>(expectedValue: Set<T>?) -> NonNilMatcherFunc<Set<T>> {\n    return equal(expectedValue, stringify: {\n        if let set = $0 {\n            return stringify(Array(set).sort { $0 < $1 })\n        } else {\n            return \"nil\"\n        }\n    })\n}\n\nprivate func equal<T>(expectedValue: Set<T>?, stringify: Set<T>? -> String) -> NonNilMatcherFunc<Set<T>> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"equal <\\(stringify(expectedValue))>\"\n\n        if let expectedValue = expectedValue {\n            if let actualValue = try actualExpression.evaluate() {\n                failureMessage.actualValue = \"<\\(stringify(actualValue))>\"\n\n                if expectedValue == actualValue {\n                    return true\n                }\n\n                let missing = expectedValue.subtract(actualValue)\n                if missing.count > 0 {\n                    failureMessage.postfixActual += \", missing <\\(stringify(missing))>\"\n                }\n\n                let extra = actualValue.subtract(expectedValue)\n                if extra.count > 0 {\n                    failureMessage.postfixActual += \", extra <\\(stringify(extra))>\"\n                }\n            }\n        } else {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n        }\n\n        return false\n    }\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<T>, rhs: T?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable>(lhs: Expectation<[T]>, rhs: [T]?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Comparable>(lhs: Expectation<Set<T>>, rhs: Set<T>?) {\n    lhs.toNot(equal(rhs))\n}\n\npublic func ==<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.to(equal(rhs))\n}\n\npublic func !=<T: Equatable, C: Equatable>(lhs: Expectation<[T: C]>, rhs: [T: C]?) {\n    lhs.toNot(equal(rhs))\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func equalMatcher(expected: NSObject) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            return try! equal(expected).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/HaveCount.swift",
    "content": "import Foundation\n\n// The `haveCount` matchers do not print the full string representation of the collection value,\n// instead they only print the type name and the expected count. This makes it easier to understand\n// the reason for failed expectations. See: https://github.com/Quick/Nimble/issues/308.\n// The representation of the collection content is provided in a new line as an `extendedMessage`.\n\n/// A Nimble matcher that succeeds when the actual CollectionType's count equals\n/// the expected value\npublic func haveCount<T: CollectionType>(expectedValue: T.Index.Distance) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual collection's count equals\n/// the expected value\npublic func haveCount(expectedValue: Int) -> MatcherFunc<NMBCollection> {\n    return MatcherFunc { actualExpression, failureMessage in\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.postfixMessage = \"have \\(prettyCollectionType(actualValue)) with count \\(stringify(expectedValue))\"\n            let result = expectedValue == actualValue.count\n            failureMessage.actualValue = \"\\(actualValue.count)\"\n            failureMessage.extendedMessage = \"Actual Value: \\(stringify(actualValue))\"\n            return result\n        } else {\n            return false\n        }\n    }\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func haveCountMatcher(expected: NSNumber) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let location = actualExpression.location\n            let actualValue = try! actualExpression.evaluate()\n            if let value = actualValue as? NMBCollection {\n                let expr = Expression(expression: ({ value as NMBCollection}), location: location)\n                return try! haveCount(expected.integerValue).matches(expr, failureMessage: failureMessage)\n            } else if let actualValue = actualValue {\n                failureMessage.postfixMessage = \"get type of NSArray, NSSet, NSDictionary, or NSHashTable\"\n                failureMessage.actualValue = \"\\(classAsString(actualValue.dynamicType))\"\n            }\n            return false\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/Match.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\n\n/// A Nimble matcher that succeeds when the actual string satisfies the regular expression\n/// described by the expected string.\npublic func match(expectedValue: String?) -> NonNilMatcherFunc<String> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        failureMessage.postfixMessage = \"match <\\(stringify(expectedValue))>\"\n        \n        if let actual = try actualExpression.evaluate() {\n            if let regexp = expectedValue {\n                return actual.rangeOfString(regexp, options: .RegularExpressionSearch) != nil\n            }\n        }\n\n        return false\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func matchMatcher(expected: NSString) -> NMBMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            let actual = actualExpression.cast { $0 as? String }\n            return try! match(expected.description).matches(actual, failureMessage: failureMessage)\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatchError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\npublic func matchError<T: ErrorType>(error: T) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, error: error)\n        return errorMatchesNonNilFieldsOrClosure(actualError, error: error)\n    }\n}\n\n/// A Nimble matcher that succeeds when the actual expression evaluates to an\n/// error of the specified type\npublic func matchError<T: ErrorType>(errorType: T.Type) -> NonNilMatcherFunc<ErrorType> {\n    return NonNilMatcherFunc { actualExpression, failureMessage in\n        let actualError: ErrorType? = try actualExpression.evaluate()\n\n        setFailureMessageForError(failureMessage, postfixMessageVerb: \"match\", actualError: actualError, errorType: errorType)\n        return errorMatchesNonNilFieldsOrClosure(actualError, errorType: errorType)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatcherFunc.swift",
    "content": "/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// @see NonNilMatcherFunc if you prefer to have this matcher fail when nil\n///                        values are recieved in an expectation.\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct MatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try matcher(actualExpression, failureMessage)\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        return try !matcher(actualExpression, failureMessage)\n    }\n}\n\n/// A convenience API to build matchers that don't need special negation\n/// behavior. The toNot() behavior is the negation of to().\n///\n/// Unlike MatcherFunc, this will always fail if an expectation contains nil.\n/// This applies regardless of using to() or toNot().\n///\n/// You may use this when implementing your own custom matchers.\n///\n/// Use the Matcher protocol instead of this type to accept custom matchers as\n/// input parameters.\n/// @see allPass for an example that uses accepts other matchers as input.\npublic struct NonNilMatcherFunc<T>: Matcher {\n    public let matcher: (Expression<T>, FailureMessage) throws -> Bool\n\n    public init(_ matcher: (Expression<T>, FailureMessage) throws -> Bool) {\n        self.matcher = matcher\n    }\n\n    public func matches(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    public func doesNotMatch(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        let pass = try !matcher(actualExpression, failureMessage)\n        if try attachNilErrorIfNeeded(actualExpression, failureMessage: failureMessage) {\n            return false\n        }\n        return pass\n    }\n\n    internal func attachNilErrorIfNeeded(actualExpression: Expression<T>, failureMessage: FailureMessage) throws -> Bool {\n        if try actualExpression.evaluate() == nil {\n            failureMessage.postfixActual = \" (use beNil() to match nils)\"\n            return true\n        }\n        return false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift",
    "content": "import Foundation\n\n/// Implement this protocol to implement a custom matcher for Swift\u0013\npublic protocol Matcher {\n    associatedtype ValueType\n    func matches(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n    func doesNotMatch(actualExpression: Expression<ValueType>, failureMessage: FailureMessage) throws -> Bool\n}\n\n#if _runtime(_ObjC)\n/// Objective-C interface to the Swift variant of Matcher.\n@objc public protocol NMBMatcher {\n    func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n    func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool\n}\n#endif\n\n#if _runtime(_ObjC)\n/// Protocol for types that support contain() matcher.\n@objc public protocol NMBContainer {\n    func containsObject(object: AnyObject!) -> Bool\n}\n\nextension NSHashTable : NMBContainer {} // Corelibs Foundation does not include this class yet\n#else\npublic protocol NMBContainer {\n    func containsObject(object: AnyObject) -> Bool\n}\n#endif\n\nextension NSArray : NMBContainer {}\nextension NSSet : NMBContainer {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support only beEmpty(), haveCount() matchers\n@objc public protocol NMBCollection {\n    var count: Int { get }\n}\n\nextension NSHashTable : NMBCollection {} // Corelibs Foundation does not include these classes yet\nextension NSMapTable : NMBCollection {}\n#else\npublic protocol NMBCollection {\n    var count: Int { get }\n}\n#endif\n\nextension NSSet : NMBCollection {}\nextension NSIndexSet : NMBCollection {}\nextension NSDictionary : NMBCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types that support beginWith(), endWith(), beEmpty() matchers\n@objc public protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject!) -> Int\n}\n#else\npublic protocol NMBOrderedCollection : NMBCollection {\n    func indexOfObject(object: AnyObject) -> Int\n}\n#endif\n\nextension NSArray : NMBOrderedCollection {}\n\n#if _runtime(_ObjC)\n/// Protocol for types to support beCloseTo() matcher\n@objc public protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n#else\npublic protocol NMBDoubleConvertible {\n    var doubleValue: CDouble { get }\n}\n\nextension Double : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self\n        }\n    }\n}\n\nextension Float : NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return CDouble(self)\n        }\n    }\n}\n#endif\n\nextension NSNumber : NMBDoubleConvertible {\n}\n\nprivate let dateFormatter: NSDateFormatter = {\n    let formatter = NSDateFormatter()\n    formatter.dateFormat = \"yyyy-MM-dd HH:mm:ss.SSSS\"\n    formatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n\n    return formatter\n}()\n\n#if _runtime(_ObjC)\nextension NSDate: NMBDoubleConvertible {\n    public var doubleValue: CDouble {\n        get {\n            return self.timeIntervalSinceReferenceDate\n        }\n    }\n}\n#endif\n\nextension NSDate: TestOutputStringConvertible {\n    public var testDescription: String {\n        return dateFormatter.stringFromDate(self)\n    }\n}\n\n/// Protocol for types to support beLessThan(), beLessThanOrEqualTo(),\n///  beGreaterThan(), beGreaterThanOrEqualTo(), and equal() matchers.\n///\n/// Types that conform to Swift's Comparable protocol will work implicitly too\n#if _runtime(_ObjC)\n@objc public protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#else\n// This should become obsolete once Corelibs Foundation adds Comparable conformance to NSNumber\npublic protocol NMBComparable {\n    func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult\n}\n#endif\n\nextension NSNumber : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! NSNumber)\n    }\n}\nextension NSString : NMBComparable {\n    public func NMB_compare(otherObject: NMBComparable!) -> NSComparisonResult {\n        return compare(otherObject as! String)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/PostNotification.swift",
    "content": "import Foundation\n\ninternal class NotificationCollector {\n    private(set) var observedNotifications: [NSNotification]\n    private let notificationCenter: NSNotificationCenter\n    #if _runtime(_ObjC)\n    private var token: AnyObject?\n    #else\n    private var token: NSObjectProtocol?\n    #endif\n\n    required init(notificationCenter: NSNotificationCenter) {\n        self.notificationCenter = notificationCenter\n        self.observedNotifications = []\n    }\n\n    func startObserving() {\n        self.token = self.notificationCenter.addObserverForName(nil, object: nil, queue: nil) {\n            // linux-swift gets confused by .append(n)\n            [weak self] n in self?.observedNotifications += [n]\n        }\n    }\n\n    deinit {\n        #if _runtime(_ObjC)\n            if let token = self.token {\n                self.notificationCenter.removeObserver(token)\n            }\n        #else\n            if let token = self.token as? AnyObject {\n                self.notificationCenter.removeObserver(token)\n            }\n        #endif\n    }\n}\n\nprivate let mainThread = pthread_self()\n\npublic func postNotifications<T where T: Matcher, T.ValueType == [NSNotification]>(\n    notificationsMatcher: T,\n    fromNotificationCenter center: NSNotificationCenter = NSNotificationCenter.defaultCenter())\n    -> MatcherFunc<Any> {\n        let _ = mainThread // Force lazy-loading of this value\n        let collector = NotificationCollector(notificationCenter: center)\n        collector.startObserving()\n        var once: Bool = false\n        return MatcherFunc { actualExpression, failureMessage in\n            let collectorNotificationsExpression = Expression(memoizedExpression: { _ in\n                return collector.observedNotifications\n                }, location: actualExpression.location, withoutCaching: true)\n\n            assert(pthread_equal(mainThread, pthread_self()) != 0, \"Only expecting closure to be evaluated on main thread.\")\n            if !once {\n                once = true\n                try actualExpression.evaluate()\n            }\n\n            let match = try notificationsMatcher.matches(collectorNotificationsExpression, failureMessage: failureMessage)\n            if collector.observedNotifications.isEmpty {\n                failureMessage.actualValue = \"no notifications\"\n            } else {\n                failureMessage.actualValue = \"<\\(stringify(collector.observedNotifications))>\"\n            }\n            return match\n        }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/RaisesException.swift",
    "content": "import Foundation\n\n// This matcher requires the Objective-C, and being built by Xcode rather than the Swift Package Manager \n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\n/// A Nimble matcher that succeeds when the actual expression raises an\n/// exception with the specified name, reason, and/or\u0013 userInfo.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the raised exception. The closure only gets called when an exception\n/// is raised.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func raiseException(\n    named named: String? = nil,\n    reason: String? = nil,\n    userInfo: NSDictionary? = nil,\n    closure: ((NSException) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var exception: NSException?\n            let capture = NMBExceptionCapture(handler: ({ e in\n                exception = e\n            }), finally: nil)\n\n            capture.tryBlock {\n                try! actualExpression.evaluate()\n                return\n            }\n\n            setFailureMessageForException(failureMessage, exception: exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n            return exceptionMatchesNonNilFieldsOrClosure(exception, named: named, reason: reason, userInfo: userInfo, closure: closure)\n        }\n}\n\ninternal func setFailureMessageForException(\n    failureMessage: FailureMessage,\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) {\n        failureMessage.postfixMessage = \"raise exception\"\n\n        if let named = named {\n            failureMessage.postfixMessage += \" with name <\\(named)>\"\n        }\n        if let reason = reason {\n            failureMessage.postfixMessage += \" with reason <\\(reason)>\"\n        }\n        if let userInfo = userInfo {\n            failureMessage.postfixMessage += \" with userInfo <\\(userInfo)>\"\n        }\n        if let _ = closure {\n            failureMessage.postfixMessage += \" that satisfies block\"\n        }\n        if named == nil && reason == nil && userInfo == nil && closure == nil {\n            failureMessage.postfixMessage = \"raise any exception\"\n        }\n\n        if let exception = exception {\n            failureMessage.actualValue = \"\\(classAsString(exception.dynamicType)) { name=\\(exception.name), reason='\\(stringify(exception.reason))', userInfo=\\(stringify(exception.userInfo)) }\"\n        } else {\n            failureMessage.actualValue = \"no exception\"\n        }\n}\n\ninternal func exceptionMatchesNonNilFieldsOrClosure(\n    exception: NSException?,\n    named: String?,\n    reason: String?,\n    userInfo: NSDictionary?,\n    closure: ((NSException) -> Void)?) -> Bool {\n        var matches = false\n\n        if let exception = exception {\n            matches = true\n\n            if named != nil && exception.name != named {\n                matches = false\n            }\n            if reason != nil && exception.reason != reason {\n                matches = false\n            }\n            if userInfo != nil && exception.userInfo != userInfo {\n                matches = false\n            }\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(exception)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        }\n        \n        return matches\n}\n\npublic class NMBObjCRaiseExceptionMatcher : NSObject, NMBMatcher {\n    internal var _name: String?\n    internal var _reason: String?\n    internal var _userInfo: NSDictionary?\n    internal var _block: ((NSException) -> Void)?\n\n    internal init(name: String?, reason: String?, userInfo: NSDictionary?, block: ((NSException) -> Void)?) {\n        _name = name\n        _reason = reason\n        _userInfo = userInfo\n        _block = block\n    }\n\n    public func matches(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        let block: () -> Any? = ({ actualBlock(); return nil })\n        let expr = Expression(expression: block, location: location)\n\n        return try! raiseException(\n            named: _name,\n            reason: _reason,\n            userInfo: _userInfo,\n            closure: _block\n        ).matches(expr, failureMessage: failureMessage)\n    }\n\n    public func doesNotMatch(actualBlock: () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool {\n        return !matches(actualBlock, failureMessage: failureMessage, location: location)\n    }\n\n    public var named: (name: String) -> NMBObjCRaiseExceptionMatcher {\n        return ({ name in\n            return NMBObjCRaiseExceptionMatcher(\n                name: name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var reason: (reason: String?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ reason in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: reason,\n                userInfo: self._userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var userInfo: (userInfo: NSDictionary?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ userInfo in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: userInfo,\n                block: self._block\n            )\n        })\n    }\n\n    public var satisfyingBlock: (block: ((NSException) -> Void)?) -> NMBObjCRaiseExceptionMatcher {\n        return ({ block in\n            return NMBObjCRaiseExceptionMatcher(\n                name: self._name,\n                reason: self._reason,\n                userInfo: self._userInfo,\n                block: block\n            )\n        })\n    }\n}\n\nextension NMBObjCMatcher {\n    public class func raiseExceptionMatcher() -> NMBObjCRaiseExceptionMatcher {\n        return NMBObjCRaiseExceptionMatcher(name: nil, reason: nil, userInfo: nil, block: nil)\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual value matches with any of the matchers\n/// provided in the variable list of matchers. \npublic func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: U...) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(matchers)\n}\n\ninternal func satisfyAnyOf<T,U where U: Matcher, U.ValueType == T>(matchers: [U]) -> NonNilMatcherFunc<T> {\n    return NonNilMatcherFunc<T> { actualExpression, failureMessage in\n        let postfixMessages = NSMutableArray()\n        var matches = false\n        for matcher in matchers {\n            if try matcher.matches(actualExpression, failureMessage: failureMessage) {\n                matches = true\n            }\n            postfixMessages.addObject(NSString(string: \"{\\(failureMessage.postfixMessage)}\"))\n        }\n\n        failureMessage.postfixMessage = \"match one of: \" + postfixMessages.componentsJoinedByString(\", or \")\n        if let actualValue = try actualExpression.evaluate() {\n            failureMessage.actualValue = \"\\(actualValue)\"\n        }\n\n        return matches\n    }\n}\n\npublic func ||<T>(left: NonNilMatcherFunc<T>, right: NonNilMatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\npublic func ||<T>(left: MatcherFunc<T>, right: MatcherFunc<T>) -> NonNilMatcherFunc<T> {\n    return satisfyAnyOf(left, right)\n}\n\n#if _runtime(_ObjC)\nextension NMBObjCMatcher {\n    public class func satisfyAnyOfMatcher(matchers: [NMBObjCMatcher]) -> NMBObjCMatcher {\n        return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in\n            if matchers.isEmpty {\n                failureMessage.stringValue = \"satisfyAnyOf must be called with at least one matcher\"\n                return false\n            }\n            \n            var elementEvaluators = [NonNilMatcherFunc<NSObject>]()\n            for matcher in matchers {\n                let elementEvaluator: (Expression<NSObject>, FailureMessage) -> Bool = {\n                    expression, failureMessage in\n                    return matcher.matches(\n                        {try! expression.evaluate()}, failureMessage: failureMessage, location: actualExpression.location)\n                }\n                \n                elementEvaluators.append(NonNilMatcherFunc(elementEvaluator))\n            }\n            \n            return try! satisfyAnyOf(elementEvaluators).matches(actualExpression, failureMessage: failureMessage)\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Matchers/ThrowError.swift",
    "content": "import Foundation\n\n/// A Nimble matcher that succeeds when the actual expression throws an\n/// error of the specified type or from the specified case.\n///\n/// Errors are tried to be compared by their implementation of Equatable,\n/// otherwise they fallback to comparision by _domain and _code.\n///\n/// Alternatively, you can pass a closure to do any arbitrary custom matching\n/// to the thrown error. The closure only gets called when an error was thrown.\n///\n/// nil arguments indicates that the matcher should not attempt to match against\n/// that parameter.\npublic func throwError<T: ErrorType>(\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n\n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n\n            setFailureMessageForError(failureMessage, actualError: actualError, error: error, errorType: errorType, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, error: error, errorType: errorType, closure: closure)\n        }\n}\n\n/// A Nimble matcher that succeeds when the actual expression throws any\n/// error or when the passed closures' arbitrary custom matching succeeds.\n///\n/// This duplication to it's generic adequate is required to allow to receive\n/// values of the existential type ErrorType in the closure.\n///\n/// The closure only gets called when an error was thrown.\npublic func throwError(\n    closure closure: ((ErrorType) -> Void)? = nil) -> MatcherFunc<Any> {\n        return MatcherFunc { actualExpression, failureMessage in\n            \n            var actualError: ErrorType?\n            do {\n                try actualExpression.evaluate()\n            } catch let catchedError {\n                actualError = catchedError\n            }\n            \n            setFailureMessageForError(failureMessage, actualError: actualError, closure: closure)\n            return errorMatchesNonNilFieldsOrClosure(actualError, closure: closure)\n        }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Nimble.h",
    "content": "#import <Foundation/Foundation.h>\n#import \"NMBExceptionCapture.h\"\n#import \"NMBStringify.h\"\n#import \"DSL.h\"\n\nFOUNDATION_EXPORT double NimbleVersionNumber;\nFOUNDATION_EXPORT const unsigned char NimbleVersionString[];\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Async.swift",
    "content": "import Foundation\n\n#if _runtime(_ObjC)\nimport Dispatch\n\nprivate let timeoutLeeway: UInt64 = NSEC_PER_MSEC\nprivate let pollLeeway: UInt64 = NSEC_PER_MSEC\n\n/// Stores debugging information about callers\ninternal struct WaitingInfo: CustomStringConvertible {\n    let name: String\n    let file: FileString\n    let lineNumber: UInt\n\n    var description: String {\n        return \"\\(name) at \\(file):\\(lineNumber)\"\n    }\n}\n\ninternal protocol WaitLock {\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt)\n    func releaseWaitingLock()\n    func isWaitingLocked() -> Bool\n}\n\ninternal class AssertionWaitLock: WaitLock {\n    private var currentWaiter: WaitingInfo? = nil\n    init() { }\n\n    func acquireWaitingLock(fnName: String, file: FileString, line: UInt) {\n        let info = WaitingInfo(name: fnName, file: file, lineNumber: line)\n        nimblePrecondition(\n            NSThread.isMainThread(),\n            \"InvalidNimbleAPIUsage\",\n            \"\\(fnName) can only run on the main thread.\"\n        )\n        nimblePrecondition(\n            currentWaiter == nil,\n            \"InvalidNimbleAPIUsage\",\n            \"Nested async expectations are not allowed to avoid creating flaky tests.\\n\\n\" +\n            \"The call to\\n\\t\\(info)\\n\" +\n            \"triggered this exception because\\n\\t\\(currentWaiter!)\\n\" +\n            \"is currently managing the main run loop.\"\n        )\n        currentWaiter = info\n    }\n\n    func isWaitingLocked() -> Bool {\n        return currentWaiter != nil\n    }\n\n    func releaseWaitingLock() {\n        currentWaiter = nil\n    }\n}\n\ninternal enum AwaitResult<T> {\n    /// Incomplete indicates None (aka - this value hasn't been fulfilled yet)\n    case Incomplete\n    /// TimedOut indicates the result reached its defined timeout limit before returning\n    case TimedOut\n    /// BlockedRunLoop indicates the main runloop is too busy processing other blocks to trigger\n    /// the timeout code.\n    ///\n    /// This may also mean the async code waiting upon may have never actually ran within the\n    /// required time because other timers & sources are running on the main run loop.\n    case BlockedRunLoop\n    /// The async block successfully executed and returned a given result\n    case Completed(T)\n    /// When a Swift Error is thrown\n    case ErrorThrown(ErrorType)\n    /// When an Objective-C Exception is raised\n    case RaisedException(NSException)\n\n    func isIncomplete() -> Bool {\n        switch self {\n        case .Incomplete: return true\n        default: return false\n        }\n    }\n\n    func isCompleted() -> Bool {\n        switch self {\n        case .Completed(_): return true\n        default: return false\n        }\n    }\n}\n\n/// Holds the resulting value from an asynchronous expectation.\n/// This class is thread-safe at receiving an \"response\" to this promise.\ninternal class AwaitPromise<T> {\n    private(set) internal var asyncResult: AwaitResult<T> = .Incomplete\n    private var signal: dispatch_semaphore_t\n\n    init() {\n        signal = dispatch_semaphore_create(1)\n    }\n\n    /// Resolves the promise with the given result if it has not been resolved. Repeated calls to\n    /// this method will resolve in a no-op.\n    ///\n    /// @returns a Bool that indicates if the async result was accepted or rejected because another\n    ///          value was recieved first.\n    func resolveResult(result: AwaitResult<T>) -> Bool {\n        if dispatch_semaphore_wait(signal, DISPATCH_TIME_NOW) == 0 {\n            self.asyncResult = result\n            return true\n        } else {\n            return false\n        }\n    }\n}\n\ninternal struct AwaitTrigger {\n    let timeoutSource: dispatch_source_t\n    let actionSource: dispatch_source_t?\n    let start: () throws -> Void\n}\n\n/// Factory for building fully configured AwaitPromises and waiting for their results.\n///\n/// This factory stores all the state for an async expectation so that Await doesn't\n/// doesn't have to manage it.\ninternal class AwaitPromiseBuilder<T> {\n    let awaiter: Awaiter\n    let waitLock: WaitLock\n    let trigger: AwaitTrigger\n    let promise: AwaitPromise<T>\n\n    internal init(\n        awaiter: Awaiter,\n        waitLock: WaitLock,\n        promise: AwaitPromise<T>,\n        trigger: AwaitTrigger) {\n            self.awaiter = awaiter\n            self.waitLock = waitLock\n            self.promise = promise\n            self.trigger = trigger\n    }\n\n    func timeout(timeoutInterval: NSTimeInterval, forcefullyAbortTimeout: NSTimeInterval) -> Self {\n        // = Discussion =\n        //\n        // There's a lot of technical decisions here that is useful to elaborate on. This is\n        // definitely more lower-level than the previous NSRunLoop based implementation.\n        //\n        //\n        // Why Dispatch Source?\n        //\n        //\n        // We're using a dispatch source to have better control of the run loop behavior.\n        // A timer source gives us deferred-timing control without having to rely as much on\n        // a run loop's traditional dispatching machinery (eg - NSTimers, DefaultRunLoopMode, etc.)\n        // which is ripe for getting corrupted by application code.\n        //\n        // And unlike dispatch_async(), we can control how likely our code gets prioritized to\n        // executed (see leeway parameter) + DISPATCH_TIMER_STRICT.\n        //\n        // This timer is assumed to run on the HIGH priority queue to ensure it maintains the\n        // highest priority over normal application / test code when possible.\n        //\n        //\n        // Run Loop Management\n        //\n        // In order to properly interrupt the waiting behavior performed by this factory class,\n        // this timer stops the main run loop to tell the waiter code that the result should be\n        // checked.\n        //\n        // In addition, stopping the run loop is used to halt code executed on the main run loop.\n        dispatch_source_set_timer(\n            trigger.timeoutSource,\n            dispatch_time(DISPATCH_TIME_NOW, Int64(timeoutInterval * Double(NSEC_PER_SEC))),\n            DISPATCH_TIME_FOREVER,\n            timeoutLeeway\n        )\n        dispatch_source_set_event_handler(trigger.timeoutSource) {\n            guard self.promise.asyncResult.isIncomplete() else { return }\n            let timedOutSem = dispatch_semaphore_create(0)\n            let semTimedOutOrBlocked = dispatch_semaphore_create(0)\n            dispatch_semaphore_signal(semTimedOutOrBlocked)\n            let runLoop = CFRunLoopGetMain()\n            CFRunLoopPerformBlock(runLoop, kCFRunLoopDefaultMode) {\n                if dispatch_semaphore_wait(semTimedOutOrBlocked, DISPATCH_TIME_NOW) == 0 {\n                    dispatch_semaphore_signal(timedOutSem)\n                    dispatch_semaphore_signal(semTimedOutOrBlocked)\n                    if self.promise.resolveResult(.TimedOut) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n            // potentially interrupt blocking code on run loop to let timeout code run\n            CFRunLoopStop(runLoop)\n            let now = dispatch_time(DISPATCH_TIME_NOW, Int64(forcefullyAbortTimeout * Double(NSEC_PER_SEC)))\n            let didNotTimeOut = dispatch_semaphore_wait(timedOutSem, now) != 0\n            let timeoutWasNotTriggered = dispatch_semaphore_wait(semTimedOutOrBlocked, 0) == 0\n            if didNotTimeOut && timeoutWasNotTriggered {\n                if self.promise.resolveResult(.BlockedRunLoop) {\n                    CFRunLoopStop(CFRunLoopGetMain())\n                }\n            }\n        }\n        return self\n    }\n\n    /// Blocks for an asynchronous result.\n    ///\n    /// @discussion\n    /// This function must be executed on the main thread and cannot be nested. This is because\n    /// this function (and it's related methods) coordinate through the main run loop. Tampering\n    /// with the run loop can cause undesireable behavior.\n    ///\n    /// This method will return an AwaitResult in the following cases:\n    ///\n    /// - The main run loop is blocked by other operations and the async expectation cannot be\n    ///   be stopped.\n    /// - The async expectation timed out\n    /// - The async expectation succeeded\n    /// - The async expectation raised an unexpected exception (objc)\n    /// - The async expectation raised an unexpected error (swift)\n    ///\n    /// The returned AwaitResult will NEVER be .Incomplete.\n    func wait(fnName: String = #function, file: FileString = #file, line: UInt = #line) -> AwaitResult<T> {\n        waitLock.acquireWaitingLock(\n            fnName,\n            file: file,\n            line: line)\n\n        let capture = NMBExceptionCapture(handler: ({ exception in\n            self.promise.resolveResult(.RaisedException(exception))\n        }), finally: ({\n            self.waitLock.releaseWaitingLock()\n        }))\n        capture.tryBlock {\n            do {\n                try self.trigger.start()\n            } catch let error {\n                self.promise.resolveResult(.ErrorThrown(error))\n            }\n            dispatch_resume(self.trigger.timeoutSource)\n            while self.promise.asyncResult.isIncomplete() {\n                // Stopping the run loop does not work unless we run only 1 mode\n                NSRunLoop.currentRunLoop().runMode(NSDefaultRunLoopMode, beforeDate: NSDate.distantFuture())\n            }\n            dispatch_suspend(self.trigger.timeoutSource)\n            dispatch_source_cancel(self.trigger.timeoutSource)\n            if let asyncSource = self.trigger.actionSource {\n                dispatch_source_cancel(asyncSource)\n            }\n        }\n\n        return promise.asyncResult\n    }\n}\n\ninternal class Awaiter {\n    let waitLock: WaitLock\n    let timeoutQueue: dispatch_queue_t\n    let asyncQueue: dispatch_queue_t\n\n    internal init(\n        waitLock: WaitLock,\n        asyncQueue: dispatch_queue_t,\n        timeoutQueue: dispatch_queue_t) {\n            self.waitLock = waitLock\n            self.asyncQueue = asyncQueue\n            self.timeoutQueue = timeoutQueue\n    }\n\n    private func createTimerSource(queue: dispatch_queue_t) -> dispatch_source_t {\n        return dispatch_source_create(\n            DISPATCH_SOURCE_TYPE_TIMER,\n            0,\n            DISPATCH_TIMER_STRICT,\n            queue\n        )\n    }\n\n    func performBlock<T>(\n        closure: ((T) -> Void) throws -> Void) -> AwaitPromiseBuilder<T> {\n            let promise = AwaitPromise<T>()\n            let timeoutSource = createTimerSource(timeoutQueue)\n            var completionCount = 0\n            let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: nil) {\n                try closure() {\n                    completionCount += 1\n                    nimblePrecondition(\n                        completionCount < 2,\n                        \"InvalidNimbleAPIUsage\",\n                        \"Done closure's was called multiple times. waitUntil(..) expects its \" +\n                        \"completion closure to only be called once.\")\n                    if promise.resolveResult(.Completed($0)) {\n                        CFRunLoopStop(CFRunLoopGetMain())\n                    }\n                }\n            }\n\n            return AwaitPromiseBuilder(\n                awaiter: self,\n                waitLock: waitLock,\n                promise: promise,\n                trigger: trigger)\n    }\n\n    func poll<T>(pollInterval: NSTimeInterval, closure: () throws -> T?) -> AwaitPromiseBuilder<T> {\n        let promise = AwaitPromise<T>()\n        let timeoutSource = createTimerSource(timeoutQueue)\n        let asyncSource = createTimerSource(asyncQueue)\n        let trigger = AwaitTrigger(timeoutSource: timeoutSource, actionSource: asyncSource) {\n            let interval = UInt64(pollInterval * Double(NSEC_PER_SEC))\n            dispatch_source_set_timer(asyncSource, DISPATCH_TIME_NOW, interval, pollLeeway)\n            dispatch_source_set_event_handler(asyncSource) {\n                do {\n                    if let result = try closure() {\n                        if promise.resolveResult(.Completed(result)) {\n                            CFRunLoopStop(CFRunLoopGetCurrent())\n                        }\n                    }\n                } catch let error {\n                    if promise.resolveResult(.ErrorThrown(error)) {\n                        CFRunLoopStop(CFRunLoopGetCurrent())\n                    }\n                }\n            }\n            dispatch_resume(asyncSource)\n        }\n\n        return AwaitPromiseBuilder(\n            awaiter: self,\n            waitLock: waitLock,\n            promise: promise,\n            trigger: trigger)\n    }\n}\n\ninternal func pollBlock(\n    pollInterval pollInterval: NSTimeInterval,\n    timeoutInterval: NSTimeInterval,\n    file: FileString,\n    line: UInt,\n    fnName: String = #function,\n    expression: () throws -> Bool) -> AwaitResult<Bool> {\n        let awaiter = NimbleEnvironment.activeInstance.awaiter\n        let result = awaiter.poll(pollInterval) { () throws -> Bool? in\n            do {\n                if try expression() {\n                    return true\n                }\n                return nil\n            } catch let error {\n                throw error\n            }\n        }.timeout(timeoutInterval, forcefullyAbortTimeout: timeoutInterval / 2.0).wait(fnName, file: file, line: line)\n\n        return result\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Errors.swift",
    "content": "import Foundation\n\n// Generic\n\ninternal func setFailureMessageForError<T: ErrorType>(\n    failureMessage: FailureMessage,\n    postfixMessageVerb: String = \"throw\",\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) {\n    failureMessage.postfixMessage = \"\\(postfixMessageVerb) error\"\n\n    if let error = error {\n        if let error = error as? CustomDebugStringConvertible {\n            failureMessage.postfixMessage += \" <\\(error.debugDescription)>\"\n        } else {\n            failureMessage.postfixMessage += \" <\\(error)>\"\n        }\n    } else if errorType != nil || closure != nil {\n        failureMessage.postfixMessage += \" from type <\\(T.self)>\"\n    }\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    }\n    if error == nil && errorType == nil && closure == nil {\n        failureMessage.postfixMessage = \"\\(postfixMessageVerb) any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    return actualError._domain == expectedError._domain\n        && actualError._code   == expectedError._code\n}\n\ninternal func errorMatchesExpectedError<T: ErrorType where T: Equatable>(\n    actualError: ErrorType,\n    expectedError: T) -> Bool {\n    if let actualError = actualError as? T {\n        return actualError == expectedError\n    }\n    return false\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure<T: ErrorType>(\n    actualError: ErrorType?,\n    error: T? = nil,\n    errorType: T.Type? = nil,\n    closure: ((T) -> Void)? = nil) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let error = error {\n            if !errorMatchesExpectedError(actualError, expectedError: error) {\n                matches = false\n            }\n        }\n        if let actualError = actualError as? T {\n            if let closure = closure {\n                let assertions = gatherFailingExpectations {\n                    closure(actualError as T)\n                }\n                let messages = assertions.map { $0.message }\n                if messages.count > 0 {\n                    matches = false\n                }\n            }\n        } else if errorType != nil && closure != nil {\n            // The closure expects another ErrorType as argument, so this\n            // is _supposed_ to fail, so that it becomes more obvious.\n            let assertions = gatherExpectations {\n                expect(actualError is T).to(equal(true))\n            }\n            precondition(assertions.map { $0.message }.count > 0)\n            matches = false\n        }\n    }\n\n    return matches\n}\n\n// Non-generic\n\ninternal func setFailureMessageForError(\n    failureMessage: FailureMessage,\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) {\n    failureMessage.postfixMessage = \"throw error\"\n\n    if let _ = closure {\n        failureMessage.postfixMessage += \" that satisfies block\"\n    } else {\n        failureMessage.postfixMessage = \"throw any error\"\n    }\n\n    if let actualError = actualError {\n        failureMessage.actualValue = \"<\\(actualError)>\"\n    } else {\n        failureMessage.actualValue = \"no error\"\n    }\n}\n\ninternal func errorMatchesNonNilFieldsOrClosure(\n    actualError: ErrorType?,\n    closure: ((ErrorType) -> Void)?) -> Bool {\n    var matches = false\n\n    if let actualError = actualError {\n        matches = true\n\n        if let closure = closure {\n            let assertions = gatherFailingExpectations {\n                closure(actualError)\n            }\n            let messages = assertions.map { $0.message }\n            if messages.count > 0 {\n                matches = false\n            }\n        }\n    }\n\n    return matches\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Functional.swift",
    "content": "import Foundation\n\nextension SequenceType {\n    internal func all(fn: Generator.Element -> Bool) -> Bool {\n        for item in self {\n            if !fn(item) {\n                return false\n            }\n        }\n        return true\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/SourceLocation.swift",
    "content": "import Foundation\n\n// Ideally we would always use `StaticString` as the type for tracking the file name\n// that expectations originate from, for consistency with `assert` etc. from the\n// stdlib, and because recent versions of the XCTest overlay require `StaticString`\n// when calling `XCTFail`. Under the Objective-C runtime (i.e. building on Mac), we\n// have to use `String` instead because StaticString can't be generated from Objective-C\n#if _runtime(_ObjC)\npublic typealias FileString = String\n#else\npublic typealias FileString = StaticString\n#endif\n\npublic final class SourceLocation : NSObject {\n    public let file: FileString\n    public let line: UInt\n\n    override init() {\n        file = \"Unknown File\"\n        line = 0\n    }\n\n    init(file: FileString, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n\n    override public var description: String {\n        return \"\\(file):\\(line)\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Sources/Nimble/Utils/Stringers.swift",
    "content": "import Foundation\n\n\ninternal func identityAsString(value: AnyObject?) -> String {\n    if let value = value {\n        return NSString(format: \"<%p>\", unsafeBitCast(value, Int.self)).description\n    } else {\n        return \"nil\"\n    }\n}\n\ninternal func classAsString(cls: AnyClass) -> String {\n#if _runtime(_ObjC)\n    return NSStringFromClass(cls)\n#else\n    return String(cls)\n#endif\n}\n\ninternal func arrayAsString<T>(items: [T], joiner: String = \", \") -> String {\n    return items.reduce(\"\") { accum, item in\n        let prefix = (accum.isEmpty ? \"\" : joiner)\n        return accum + prefix + \"\\(stringify(item))\"\n    }\n}\n\n/// A type with a customized test output text representation.\n///\n/// This textual representation is produced when values will be\n/// printed in test runs, and may be useful when producing\n/// error messages in custom matchers.\n///\n/// - SeeAlso: `CustomDebugStringConvertible`\npublic protocol TestOutputStringConvertible {\n    var testDescription: String { get }\n}\n\nextension Double: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(double: self).testDescription\n    }\n}\n\nextension Float: TestOutputStringConvertible {\n    public var testDescription: String {\n        return NSNumber(float: self).testDescription\n    }\n}\n\nextension NSNumber: TestOutputStringConvertible {\n    // This is using `NSString(format:)` instead of\n    // `String(format:)` because the latter somehow breaks\n    // the travis CI build on linux.\n    public var testDescription: String {\n        let description = self.description\n        \n        if description.containsString(\".\") {\n            // Travis linux swiftpm build doesn't like casting String to NSString,\n            // which is why this annoying nested initializer thing is here.\n            // Maybe this will change in a future snapshot.\n            let decimalPlaces = NSString(string: NSString(string: description)\n                .componentsSeparatedByString(\".\")[1])\n            \n            if decimalPlaces.length > 4 {\n                return NSString(format: \"%0.4f\", self.doubleValue).description\n            }\n        }\n        return self.description\n    }\n}\n\nextension Array: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = self.map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension AnySequence: TestOutputStringConvertible {\n    public var testDescription: String {\n        let generator = self.generate()\n        var strings = [String]()\n        var value: AnySequence.Generator.Element?\n        \n        repeat {\n            value = generator.next()\n            if let value = value {\n                strings.append(stringify(value))\n            }\n        } while value != nil\n        \n        let list = strings.joinWithSeparator(\", \")\n        return \"[\\(list)]\"\n    }\n}\n\nextension NSArray: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension NSIndexSet: TestOutputStringConvertible {\n    public var testDescription: String {\n        let list = Array(self).map(Nimble.stringify).joinWithSeparator(\", \")\n        return \"(\\(list))\"\n    }\n}\n\nextension String: TestOutputStringConvertible {\n    public var testDescription: String {\n        return self\n    }\n}\n\nextension NSData: TestOutputStringConvertible {\n    public var testDescription: String {\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11-16)\n            return \"NSData<length=\\(self.length)>\"\n        #else\n            return \"NSData<hash=\\(self.hash),length=\\(self.length)>\"\n        #endif\n    }\n}\n\n///\n/// Returns a string appropriate for displaying in test output\n/// from the provided value.\n///\n/// - parameter value: A value that will show up in a test's output.\n///\n/// - returns: The string that is returned can be\n///     customized per type by conforming a type to the `TestOutputStringConvertible`\n///     protocol. When stringifying a non-`TestOutputStringConvertible` type, this\n///     function will return the value's debug description and then its\n///     normal description if available and in that order. Otherwise it\n///     will return the result of constructing a string from the value.\n///\n/// - SeeAlso: `TestOutputStringConvertible`\n@warn_unused_result\npublic func stringify<T>(value: T) -> String {\n    if let value = value as? TestOutputStringConvertible {\n        return value.testDescription\n    }\n    \n    if let value = value as? CustomDebugStringConvertible {\n        return value.debugDescription\n    }\n    \n    return String(value)\n}\n\n/// -SeeAlso: `stringify<T>(value: T)`\n@warn_unused_result\npublic func stringify<T>(value: T?) -> String {\n    if let unboxed = value {\n        return stringify(unboxed)\n    }\n    return \"nil\"\n}\n\n#if _runtime(_ObjC)\n@objc public class NMBStringer: NSObject {\n    @warn_unused_result\n    @objc public class func stringify(obj: AnyObject?) -> String {\n        return Nimble.stringify(obj)\n    }\n}\n#endif\n\n// MARK: Collection Type Stringers\n\n/// Attempts to generate a pretty type string for a given value. If the value is of a Objective-C\n/// collection type, or a subclass thereof, (e.g. `NSArray`, `NSDictionary`, etc.). \n/// This function will return the type name of the root class of the class cluster for better\n/// readability (e.g. `NSArray` instead of `__NSArrayI`).\n///\n/// For values that don't have a type of an Objective-C collection, this function returns the\n/// default type description.\n///\n/// - parameter value: A value that will be used to determine a type name.\n///\n/// - returns: The name of the class cluster root class for Objective-C collection types, or the\n/// the `dynamicType` of the value for values of any other type.\npublic func prettyCollectionType<T>(value: T) -> String {\n    #if _runtime(_ObjC)\n    // Check for types that are not in corelibs-foundation separately\n    if value is NSHashTable {\n        return String(NSHashTable.self)\n    }\n    #endif\n\n    switch value {\n    case is NSArray:\n        return String(NSArray.self)\n    case is NSDictionary:\n        return String(NSDictionary.self)\n    case is NSSet:\n        return String(NSSet.self)\n    case is NSIndexSet:\n        return String(NSIndexSet.self)\n    default:\n        return String(value)\n    }\n}\n\n/// Returns the type name for a given collection type. This overload is used by Swift\n/// collection types.\n///\n/// - parameter collection: A Swift `CollectionType` value.\n///\n/// - returns: A string representing the `dynamicType` of the value.\npublic func prettyCollectionType<T: CollectionType>(collection: T) -> String {\n    return String(collection.dynamicType)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/LinuxMain.swift",
    "content": "import XCTest\n@testable import Nimbletest\n\n// This is the entry point for NimbleTests on Linux\n\nXCTMain([\n    // AsynchronousTests(),\n    SynchronousTest(),\n    UserDescriptionTest(),\n\n    // Matchers\n    AllPassTest(),\n    // BeAKindOfTest(),\n    BeAnInstanceOfTest(),\n    BeCloseToTest(),\n    BeginWithTest(),\n    BeGreaterThanOrEqualToTest(),\n    BeGreaterThanTest(),\n    BeIdenticalToObjectTest(),\n    BeIdenticalToTest(),\n    BeLessThanOrEqualToTest(),\n    BeLessThanTest(),\n    BeTruthyTest(),\n    BeTrueTest(),\n    BeFalsyTest(),\n    BeFalseTest(),\n    BeNilTest(),\n    ContainTest(),\n    EndWithTest(),\n    EqualTest(),\n    HaveCountTest(),\n    // MatchTest(),\n    // RaisesExceptionTest(),\n    ThrowErrorTest(),\n    SatisfyAnyOfTest(),\n    PostNotificationTest(),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/AsynchronousTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\n// These tests require the ObjC runtimes do not currently have the GCD and run loop facilities\n// required for working with Nimble's async matchers\n#if _runtime(_ObjC)\n\nclass AsyncTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToEventuallyPositiveMatches\", testToEventuallyPositiveMatches),\n            (\"testToEventuallyNegativeMatches\", testToEventuallyNegativeMatches),\n            (\"testWaitUntilPositiveMatches\", testWaitUntilPositiveMatches),\n            (\"testToEventuallyWithCustomDefaultTimeout\", testToEventuallyWithCustomDefaultTimeout),\n            (\"testWaitUntilTimesOutIfNotCalled\", testWaitUntilTimesOutIfNotCalled),\n            (\"testWaitUntilTimesOutWhenExceedingItsTime\", testWaitUntilTimesOutWhenExceedingItsTime),\n            (\"testWaitUntilNegativeMatches\", testWaitUntilNegativeMatches),\n            (\"testWaitUntilDetectsStalledMainThreadActivity\", testWaitUntilDetectsStalledMainThreadActivity),\n            (\"testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed\", testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed),\n            (\"testWaitUntilErrorsIfDoneIsCalledMultipleTimes\", testWaitUntilErrorsIfDoneIsCalledMultipleTimes),\n            (\"testWaitUntilMustBeInMainThread\", testWaitUntilMustBeInMainThread),\n            (\"testToEventuallyMustBeInMainThread\", testToEventuallyMustBeInMainThread),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSInternalInconsistencyException, code: 42, userInfo: nil)\n\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testToEventuallyPositiveMatches() {\n        var value = 0\n        deferToMainQueue { value = 1 }\n        expect { value }.toEventually(equal(1))\n\n        deferToMainQueue { value = 0 }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testToEventuallyNegativeMatches() {\n        let value = 0\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got <0>\") {\n            expect { value }.toEventuallyNot(equal(0))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got <0>\") {\n            expect { value }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventually(equal(1))\n        }\n        failsWithErrorMessage(\"expected to eventually not equal <0>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toEventuallyNot(equal(0))\n        }\n    }\n\n    func testToEventuallyWithCustomDefaultTimeout() {\n        AsyncDefaults.Timeout = 2\n        defer {\n            AsyncDefaults.Timeout = 1\n        }\n\n        var value = 0\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 1\n        }\n        expect { value }.toEventually(equal(1))\n\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            NSThread.sleepForTimeInterval(1.1)\n            value = 0\n        }\n        expect { value }.toEventuallyNot(equal(1))\n    }\n\n    func testWaitUntilPositiveMatches() {\n        waitUntil { done in\n            done()\n        }\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilTimesOutIfNotCalled() {\n        failsWithErrorMessage(\"Waited more than 1.0 second\") {\n            waitUntil(timeout: 1) { done in return }\n        }\n    }\n\n    func testWaitUntilTimesOutWhenExceedingItsTime() {\n        var waiting = true\n        failsWithErrorMessage(\"Waited more than 0.01 seconds\") {\n            waitUntil(timeout: 0.01) { done in\n                dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n                    NSThread.sleepForTimeInterval(0.1)\n                    done()\n                    waiting = false\n                }\n            }\n        }\n\n        // \"clear\" runloop to ensure this test doesn't poison other tests\n        repeat {\n            NSRunLoop.mainRunLoop().runUntilDate(NSDate().dateByAddingTimeInterval(0.2))\n        } while(waiting)\n    }\n\n    func testWaitUntilNegativeMatches() {\n        failsWithErrorMessage(\"expected to equal <2>, got <1>\") {\n            waitUntil { done in\n                NSThread.sleepForTimeInterval(0.1)\n                expect(1).to(equal(2))\n                done()\n            }\n        }\n    }\n\n    func testWaitUntilDetectsStalledMainThreadActivity() {\n        let msg = \"-waitUntil() timed out but was unable to run the timeout handler because the main thread is unresponsive (0.5 seconds is allow after the wait times out). Conditions that may cause this include processing blocking IO on the main thread, calls to sleep(), deadlocks, and synchronous IPC. Nimble forcefully stopped run loop which may cause future failures in test run.\"\n        failsWithErrorMessage(msg) {\n            waitUntil(timeout: 1) { done in\n                NSThread.sleepForTimeInterval(5.0)\n                done()\n            }\n        }\n    }\n\n    func testCombiningAsyncWaitUntilAndToEventuallyIsNotAllowed() {\n        // Currently we are unable to catch Objective-C exceptions when built by the Swift Package Manager\n#if !SWIFT_PACKAGE\n        let referenceLine = #line + 9\n        var msg = \"Unexpected exception raised: Nested async expectations are not allowed \"\n        msg += \"to avoid creating flaky tests.\"\n        msg += \"\\n\\n\"\n        msg += \"The call to\\n\\t\"\n        msg += \"expect(...).toEventually(...) at \\(#file):\\(referenceLine + 7)\\n\"\n        msg += \"triggered this exception because\\n\\t\"\n        msg += \"waitUntil(...) at \\(#file):\\(referenceLine + 1)\\n\"\n        msg += \"is currently managing the main run loop.\"\n        failsWithErrorMessage(msg) { // reference line\n            waitUntil(timeout: 2.0) { done in\n                var protected: Int = 0\n                dispatch_async(dispatch_get_main_queue()) {\n                    protected = 1\n                }\n\n                expect(protected).toEventually(equal(1))\n                done()\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilErrorsIfDoneIsCalledMultipleTimes() {\n#if !SWIFT_PACKAGE\n        waitUntil { done in\n            deferToMainQueue {\n                done()\n                expect {\n                    done()\n                }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            }\n        }\n#endif\n    }\n\n    func testWaitUntilMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                waitUntil { done in done() }\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n\n    func testToEventuallyMustBeInMainThread() {\n#if !SWIFT_PACKAGE\n        var executedAsyncBlock: Bool = false\n        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n            expect {\n                expect(1).toEventually(equal(2))\n            }.to(raiseException(named: \"InvalidNimbleAPIUsage\"))\n            executedAsyncBlock = true\n        }\n        expect(executedAsyncBlock).toEventually(beTruthy())\n#endif\n    }\n}\n#endif\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/ObjectWithLazyProperty.swift",
    "content": "import Foundation\n\nclass ObjectWithLazyProperty {\n    init() {}\n    lazy var value: String = \"hello\"\n    lazy var anotherValue: String = { return \"world\" }()\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Helpers/utils.swift",
    "content": "import Foundation\n@testable import Nimble\nimport XCTest\n\nfunc failsWithErrorMessage(messages: [String], file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () throws -> Void) {\n    var filePath = file\n    var lineNumber = line\n\n    let recorder = AssertionRecorder()\n    withAssertionHandler(recorder, closure: closure)\n\n    for msg in messages {\n        var lastFailure: AssertionRecord?\n        var foundFailureMessage = false\n\n        for assertion in recorder.assertions {\n            lastFailure = assertion\n            if assertion.message.stringValue == msg {\n                foundFailureMessage = true\n                break\n            }\n        }\n\n        if foundFailureMessage {\n            continue\n        }\n\n        if preferOriginalSourceLocation {\n            if let failure = lastFailure {\n                filePath = failure.location.file\n                lineNumber = failure.location.line\n            }\n        }\n\n        let message: String\n        if let lastFailure = lastFailure {\n            message = \"Got failure message: \\\"\\(lastFailure.message.stringValue)\\\", but expected \\\"\\(msg)\\\"\"\n        } else {\n            message = \"expected failure message, but got none\"\n        }\n        NimbleAssertionHandler.assert(false,\n                                      message: FailureMessage(stringValue: message),\n                                      location: SourceLocation(file: filePath, line: lineNumber))\n    }\n}\n\nfunc failsWithErrorMessage(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    return failsWithErrorMessage(\n        [message],\n        file: file,\n        line: line,\n        preferOriginalSourceLocation: preferOriginalSourceLocation,\n        closure: closure\n    )\n}\n\nfunc failsWithErrorMessageForNil(message: String, file: FileString = #file, line: UInt = #line, preferOriginalSourceLocation: Bool = false, closure: () -> Void) {\n    failsWithErrorMessage(\"\\(message) (use beNil() to match nils)\", file: file, line: line, preferOriginalSourceLocation: preferOriginalSourceLocation, closure: closure)\n}\n\n#if _runtime(_ObjC)\n    func deferToMainQueue(action: () -> Void) {\n        dispatch_async(dispatch_get_main_queue()) {\n            NSThread.sleepForTimeInterval(0.01)\n            action()\n        }\n    }\n#endif\n\npublic class NimbleHelper : NSObject {\n    public class func expectFailureMessage(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessages(messages: [NSString], block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessage(messages.map({ String($0) }), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n\n    public class func expectFailureMessageForNil(message: NSString, block: () -> Void, file: FileString, line: UInt) {\n        failsWithErrorMessageForNil(String(message), file: file, line: line, preferOriginalSourceLocation: true, closure: block)\n    }\n}\n\nextension NSDate {\n    convenience init(dateTimeString:String) {\n        let dateFormatter = NSDateFormatter()\n        dateFormatter.dateFormat = \"yyyy-MM-dd HH:mm:ss\"\n        dateFormatter.locale = NSLocale(localeIdentifier: \"en_US_POSIX\")\n        let date = dateFormatter.dateFromString(dateTimeString)!\n        self.init(timeInterval:0, sinceDate:date)\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/AllPassTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass AllPassTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllPassArray\", testAllPassArray),\n            (\"testAllPassMatcher\", testAllPassMatcher),\n            (\"testAllPassCollectionsWithOptionalsDontWork\", testAllPassCollectionsWithOptionalsDontWork),\n            (\"testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer\", testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer),\n            (\"testAllPassSet\", testAllPassSet),\n            (\"testAllPassWithNilAsExpectedValue\", testAllPassWithNilAsExpectedValue),\n        ]\n    }\n\n    func testAllPassArray() {\n        expect([1,2,3,4]).to(allPass({$0 < 5}))\n        expect([1,2,3,4]).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\n            \"expected to all pass a condition, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass({$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect([1,2,3,4]).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\n            \"expected to all be something, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(\"be something\", {$0 < 3}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect([1,2,3,4]).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassMatcher() {\n        expect([1,2,3,4]).to(allPass(beLessThan(5)))\n        expect([1,2,3,4]).toNot(allPass(beGreaterThan(5)))\n        \n        failsWithErrorMessage(\n            \"expected to all be less than <3>, but failed first at element <3> in <[1, 2, 3, 4]>\") {\n                expect([1,2,3,4]).to(allPass(beLessThan(3)))\n        }\n        failsWithErrorMessage(\"expected to not all be less than <5>\") {\n            expect([1,2,3,4]).toNot(allPass(beLessThan(5)))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsDontWork() {\n        failsWithErrorMessage(\"expected to all be nil, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass(beNil()))\n        }\n        failsWithErrorMessage(\"expected to all pass a condition, but failed first at element <nil> in <[nil, nil, nil]>\") {\n            expect([nil, nil, nil] as [Int?]).to(allPass({$0 == nil}))\n        }\n    }\n\n    func testAllPassCollectionsWithOptionalsUnwrappingOneOptionalLayer() {\n        expect([nil, nil, nil] as [Int?]).to(allPass({$0! == nil}))\n        expect([nil, 1, nil] as [Int?]).toNot(allPass({$0! == nil}))\n        expect([1, 1, 1] as [Int?]).to(allPass({$0! == 1}))\n        expect([1, 1, nil] as [Int?]).toNot(allPass({$0! == 1}))\n        expect([1, 2, 3] as [Int?]).to(allPass({$0! < 4}))\n        expect([1, 2, 3] as [Int?]).toNot(allPass({$0! < 3}))\n        expect([1, 2, nil] as [Int?]).to(allPass({$0! < 3}))\n    }\n\n    func testAllPassSet() {\n        expect(Set([1,2,3,4])).to(allPass({$0 < 5}))\n        expect(Set([1,2,3,4])).toNot(allPass({$0 > 5}))\n\n        failsWithErrorMessage(\"expected to not all pass a condition\") {\n            expect(Set([1,2,3,4])).toNot(allPass({$0 < 5}))\n        }\n        failsWithErrorMessage(\"expected to not all be something\") {\n            expect(Set([1,2,3,4])).toNot(allPass(\"be something\", {$0 < 5}))\n        }\n    }\n\n    func testAllPassWithNilAsExpectedValue() {\n        failsWithErrorMessageForNil(\"expected to all pass\") {\n            expect(nil as [Int]?).to(allPass(beLessThan(5)))\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeAKindOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass TestNull : NSNull {}\n\nclass BeAKindOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(TestNull()).to(beAKindOf(NSNull))\n        expect(NSObject()).to(beAKindOf(NSObject))\n        expect(NSNumber(integer:1)).toNot(beAKindOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be a kind of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAKindOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be a kind of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to be a kind of NSString, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).to(beAKindOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be a kind of NSNumber, got <__NSCFNumber instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAKindOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAKindOf(Int))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAKindOf(String))\n        }\n        failsWithErrorMessage(\"beAKindOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAKindOf(TestEnum))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeAnInstanceOfTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeAnInstanceOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatch\", testPositiveMatch),\n            (\"testFailureMessages\", testFailureMessages),\n            (\"testSwiftTypesFailureMessages\", testSwiftTypesFailureMessages),\n        ]\n    }\n\n    func testPositiveMatch() {\n        expect(NSNull()).to(beAnInstanceOf(NSNull))\n        expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSDate))\n    }\n\n    func testFailureMessages() {\n        failsWithErrorMessageForNil(\"expected to not be an instance of NSNull, got <nil>\") {\n            expect(nil as NSNull?).toNot(beAnInstanceOf(NSNull))\n        }\n        failsWithErrorMessageForNil(\"expected to be an instance of NSString, got <nil>\") {\n            expect(nil as NSString?).to(beAnInstanceOf(NSString))\n        }\n#if _runtime(_ObjC)\n        let numberTypeName = \"__NSCFNumber\"\n#else\n        let numberTypeName = \"NSNumber\"\n#endif\n        failsWithErrorMessage(\"expected to be an instance of NSString, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).to(beAnInstanceOf(NSString))\n        }\n        failsWithErrorMessage(\"expected to not be an instance of NSNumber, got <\\(numberTypeName) instance>\") {\n            expect(NSNumber(integer:1)).toNot(beAnInstanceOf(NSNumber))\n        }\n    }\n    \n    func testSwiftTypesFailureMessages() {\n        enum TestEnum {\n            case One, Two\n        }\n\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(1).to(beAnInstanceOf(Int))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(\"test\").to(beAnInstanceOf(String))\n        }\n        failsWithErrorMessage(\"beAnInstanceOf only works on Objective-C types since the Swift compiler\"\n            + \" will automatically type check Swift-only types. This expectation is redundant.\") {\n            expect(TestEnum.One).to(beAnInstanceOf(TestEnum))\n        }\n    }\n    \n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeCloseToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeCloseToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeCloseTo\", testBeCloseTo),\n            (\"testBeCloseToWithin\", testBeCloseToWithin),\n            (\"testBeCloseToWithNSNumber\", testBeCloseToWithNSNumber),\n            (\"testBeCloseToWithNSDate\", testBeCloseToWithNSDate),\n            (\"testBeCloseToOperator\", testBeCloseToOperator),\n            (\"testBeCloseToWithinOperator\", testBeCloseToWithinOperator),\n            (\"testPlusMinusOperator\", testPlusMinusOperator),\n            (\"testBeCloseToOperatorWithNSDate\", testBeCloseToOperatorWithNSDate),\n            (\"testBeCloseToWithinOperatorWithNSDate\", testBeCloseToWithinOperatorWithNSDate),\n            (\"testPlusMinusOperatorWithNSDate\", testPlusMinusOperatorWithNSDate),\n            (\"testBeCloseToArray\", testBeCloseToArray),\n        ]\n    }\n\n    func testBeCloseTo() {\n        expect(1.2).to(beCloseTo(1.2001))\n        expect(1.2 as CDouble).to(beCloseTo(1.2001))\n        expect(1.2 as Float).to(beCloseTo(1.2001))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 0.0001), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001))\n        }\n    }\n\n    func testBeCloseToWithin() {\n        expect(1.2).to(beCloseTo(9.300, within: 10))\n\n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(1.2).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n\n    func testBeCloseToWithNSNumber() {\n        expect(NSNumber(double:1.2)).to(beCloseTo(9.300, within: 10))\n        expect(NSNumber(double:1.2)).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        expect(1.2).to(beCloseTo(NSNumber(double:9.300), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <1.2001> (within 1), got <1.2>\") {\n            expect(NSNumber(double:1.2)).toNot(beCloseTo(1.2001, within: 1.0))\n        }\n    }\n    \n    func testBeCloseToWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).to(beCloseTo(NSDate(dateTimeString: \"2015-08-26 11:43:05\"), within: 10))\n        \n        failsWithErrorMessage(\"expected to not be close to <2015-08-26 11:43:00.0050> (within 0.004), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")).toNot(beCloseTo(expectedDate, within: 0.004))\n        }\n#endif\n    }\n    \n    func testBeCloseToOperator() {\n        expect(1.2) ≈ 1.2001\n        expect(1.2 as CDouble) ≈ 1.2001\n        \n        failsWithErrorMessage(\"expected to be close to <1.2002> (within 0.0001), got <1.2>\") {\n            expect(1.2) ≈ 1.2002\n        }\n    }\n\n    func testBeCloseToWithinOperator() {\n        expect(1.2) ≈ (9.300, 10)\n        expect(1.2) == (9.300, 10)\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ (1.0, 0.1)\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == (1.0, 0.1)\n        }\n    }\n    \n    func testPlusMinusOperator() {\n        expect(1.2) ≈ 9.300 ± 10\n        expect(1.2) == 9.300 ± 10\n        \n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) ≈ 1.0 ± 0.1\n        }\n        failsWithErrorMessage(\"expected to be close to <1> (within 0.1), got <1.2>\") {\n            expect(1.2) == 1.0 ± 0.1\n        }\n    }\n\n    func testBeCloseToOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:00\")\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.0001), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate\n        }\n#endif\n    }\n\n    func testBeCloseToWithinOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (NSDate(dateTimeString: \"2015-08-26 11:43:05\"), 10)\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ (expectedDate, 0.006)\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == (expectedDate, 0.006)\n        }\n#endif\n    }\n\n    func testPlusMinusOperatorWithNSDate() {\n#if _runtime(_ObjC) // NSDateFormatter isn't functional in swift-corelibs-foundation yet.\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n        expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == NSDate(dateTimeString: \"2015-08-26 11:43:05\") ± 10\n\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) ≈ expectedDate ± 0.006\n        }\n        failsWithErrorMessage(\"expected to be close to <2015-08-26 11:43:00.0050> (within 0.006), got <2015-08-26 11:43:00.0000>\") {\n\n            let expectedDate = NSDate(dateTimeString: \"2015-08-26 11:43:00\").dateByAddingTimeInterval(0.005)\n            expect(NSDate(dateTimeString: \"2015-08-26 11:43:00\")) == expectedDate ± 0.006\n        }\n#endif\n    }\n\n    func testBeCloseToArray() {\n        expect([0.0, 1.1, 2.2]) ≈ [0.0001, 1.1001, 2.2001]\n        expect([0.0, 1.1, 2.2]).to(beCloseTo([0.1, 1.2, 2.3], within: 0.1))\n        \n        failsWithErrorMessage(\"expected to be close to <[0, 1]> (each within 0.0001), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]) ≈ [0.0, 1.0]\n        }\n        failsWithErrorMessage(\"expected to be close to <[0.2, 1.2]> (each within 0.1), got <[0, 1.1]>\") {\n            expect([0.0, 1.1]).to(beCloseTo([0.2, 1.2], within: 0.1))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeEmptyTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeEmptyTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeEmptyPositive\", testBeEmptyPositive),\n            (\"testBeEmptyNegative\", testBeEmptyNegative),\n        ]\n    }\n\n    func testBeEmptyPositive() {\n        expect([] as [Int]).to(beEmpty())\n        expect([1]).toNot(beEmpty())\n\n        expect([] as [CInt]).to(beEmpty())\n        expect([1] as [CInt]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSDictionary() as? [Int:Int]).to(beEmpty())\n        expect(NSDictionary(object: 1, forKey: 1) as? [Int:Int]).toNot(beEmpty())\n#endif\n\n        expect(Dictionary<Int, Int>()).to(beEmpty())\n        expect([\"hi\": 1]).toNot(beEmpty())\n\n#if _runtime(_ObjC)\n        expect(NSArray() as? [Int]).to(beEmpty())\n        expect(NSArray(array: [1]) as? [Int]).toNot(beEmpty())\n#endif\n\n        expect(NSSet()).to(beEmpty())\n        expect(NSSet(array: [NSNumber(integer: 1)])).toNot(beEmpty())\n\n        expect(NSIndexSet()).to(beEmpty())\n        expect(NSIndexSet(index: 1)).toNot(beEmpty())\n\n        expect(NSString()).to(beEmpty())\n        expect(NSString(string: \"hello\")).toNot(beEmpty())\n\n        expect(\"\").to(beEmpty())\n        expect(\"foo\").toNot(beEmpty())\n    }\n\n    func testBeEmptyNegative() {\n        failsWithErrorMessageForNil(\"expected to be empty, got <nil>\") {\n            expect(nil as NSString?).to(beEmpty())\n        }\n        failsWithErrorMessageForNil(\"expected to not be empty, got <nil>\") {\n            expect(nil as [CInt]?).toNot(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSArray()).toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <[1]>\") {\n            expect([1]).to(beEmpty())\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <{()}>\") {\n            expect(NSSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <{(1)}>\") {\n            expect(NSSet(object: NSNumber(int: 1))).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <()>\") {\n            expect(NSIndexSet()).toNot(beEmpty());\n        }\n        failsWithErrorMessage(\"expected to be empty, got <(1)>\") {\n            expect(NSIndexSet(index: 1)).to(beEmpty());\n        }\n\n        failsWithErrorMessage(\"expected to not be empty, got <>\") {\n            expect(\"\").toNot(beEmpty())\n        }\n        failsWithErrorMessage(\"expected to be empty, got <foo>\") {\n            expect(\"foo\").to(beEmpty())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeGreaterThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThanOrEqualTo\", testGreaterThanOrEqualTo),\n            (\"testGreaterThanOrEqualToOperator\", testGreaterThanOrEqualToOperator),\n        ]\n    }\n\n    func testGreaterThanOrEqualTo() {\n        expect(10).to(beGreaterThanOrEqualTo(10))\n        expect(10).to(beGreaterThanOrEqualTo(2))\n        expect(1).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:1)).toNot(beGreaterThanOrEqualTo(2))\n        expect(NSNumber(int:2)).to(beGreaterThanOrEqualTo(NSNumber(int:2)))\n#if _runtime(_ObjC)\n        expect(1).to(beGreaterThanOrEqualTo(NSNumber(int:0)))\n#endif\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <0>\") {\n            expect(0).to(beGreaterThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be greater than or equal to <1>, got <1>\") {\n            expect(1).toNot(beGreaterThanOrEqualTo(1))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThanOrEqualTo(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than or equal to <1>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThanOrEqualTo(1))\n        }\n    }\n\n    func testGreaterThanOrEqualToOperator() {\n        expect(0) >= 0\n        expect(1) >= 0\n        expect(NSNumber(int:1)) >= 1\n        expect(NSNumber(int:1)) >= NSNumber(int:1)\n\n        failsWithErrorMessage(\"expected to be greater than or equal to <2>, got <1>\") {\n            expect(1) >= 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeGreaterThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeGreaterThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testGreaterThan\", testGreaterThan),\n            (\"testGreaterThanOperator\", testGreaterThanOperator),\n        ]\n    }\n    \n    func testGreaterThan() {\n        expect(10).to(beGreaterThan(2))\n        expect(1).toNot(beGreaterThan(2))\n#if _runtime(_ObjC)\n        expect(NSNumber(int:3)).to(beGreaterThan(2))\n#endif\n        expect(NSNumber(int:1)).toNot(beGreaterThan(NSNumber(int:2)))\n\n        failsWithErrorMessage(\"expected to be greater than <2>, got <0>\") {\n            expect(0).to(beGreaterThan(2))\n        }\n        failsWithErrorMessage(\"expected to not be greater than <0>, got <1>\") {\n            expect(1).toNot(beGreaterThan(0))\n        }\n        failsWithErrorMessageForNil(\"expected to be greater than <-2>, got <nil>\") {\n            expect(nil as Int?).to(beGreaterThan(-2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be greater than <0>, got <nil>\") {\n            expect(nil as Int?).toNot(beGreaterThan(0))\n        }\n    }\n\n    func testGreaterThanOperator() {\n        expect(1) > 0\n        expect(NSNumber(int:1)) > NSNumber(int:0)\n#if _runtime(_ObjC)\n        expect(NSNumber(int:1)) > 0\n#endif\n        failsWithErrorMessage(\"expected to be greater than <2>, got <1>\") {\n            expect(1) > 2\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeIdenticalToObjectTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeIdenticalToObjectTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testFailsOnNils\", testFailsOnNils),\n            (\"testOperators\", testOperators),\n        ]\n    }\n\n    private class BeIdenticalToObjectTester {}\n    private let testObjectA = BeIdenticalToObjectTester()\n    private let testObjectB = BeIdenticalToObjectTester()\n\n    func testBeIdenticalToPositive() {\n        expect(self.testObjectA).to(beIdenticalTo(testObjectA))\n    }\n    \n    func testBeIdenticalToNegative() {\n        expect(self.testObjectA).toNot(beIdenticalTo(testObjectB))\n    }\n    \n    func testBeIdenticalToPositiveMessage() {\n        let message = String(NSString(format: \"expected to be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectB, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).to(beIdenticalTo(self.testObjectB))\n        }\n    }\n    \n    func testBeIdenticalToNegativeMessage() {\n        let message = String(NSString(format: \"expected to not be identical to <%p>, got <%p>\",\n            unsafeBitCast(testObjectA, Int.self), unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessage(message) {\n            expect(self.testObjectA).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n\n    func testFailsOnNils() {\n        let message1 = String(NSString(format: \"expected to be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message1) {\n            expect(nil as BeIdenticalToObjectTester?).to(beIdenticalTo(self.testObjectA))\n        }\n\n        let message2 = String(NSString(format: \"expected to not be identical to <%p>, got nil\",\n            unsafeBitCast(testObjectA, Int.self)))\n        failsWithErrorMessageForNil(message2) {\n            expect(nil as BeIdenticalToObjectTester?).toNot(beIdenticalTo(self.testObjectA))\n        }\n    }\n    \n    func testOperators() {\n        expect(self.testObjectA) === testObjectA\n        expect(self.testObjectA) !== testObjectB\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeIdenticalToTest.swift",
    "content": "import Foundation\nimport XCTest\n@testable import Nimble\n\nclass BeIdenticalToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeIdenticalToPositive\", testBeIdenticalToPositive),\n            (\"testBeIdenticalToNegative\", testBeIdenticalToNegative),\n            (\"testBeIdenticalToPositiveMessage\", testBeIdenticalToPositiveMessage),\n            (\"testBeIdenticalToNegativeMessage\", testBeIdenticalToNegativeMessage),\n            (\"testOperators\", testOperators),\n            (\"testBeAlias\", testBeAlias)\n        ]\n    }\n\n    func testBeIdenticalToPositive() {\n        let value = NSDate()\n        expect(value).to(beIdenticalTo(value))\n    }\n\n    func testBeIdenticalToNegative() {\n        expect(NSNumber(integer:1)).toNot(beIdenticalTo(NSString(string: \"yo\")))\n        expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n    }\n\n    func testBeIdenticalToPositiveMessage() {\n        let num1 = NSNumber(integer:1)\n        let num2 = NSNumber(integer:2)\n        let message = \"expected to be identical to \\(identityAsString(num2)), got \\(identityAsString(num1))\"\n        failsWithErrorMessage(message) {\n            expect(num1).to(beIdenticalTo(num2))\n        }\n    }\n\n    func testBeIdenticalToNegativeMessage() {\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(beIdenticalTo(value2))\n        }\n    }\n\n    func testOperators() {\n        let value = NSDate()\n        expect(value) === value\n        expect(NSNumber(integer:1)) !== NSNumber(integer:2)\n    }\n\n    func testBeAlias() {\n        let value = NSDate()\n        expect(value).to(be(value))\n        expect(NSNumber(integer:1)).toNot(be(NSString(stringLiteral: \"turtles\")))\n        #if _runtime(_ObjC)\n            expect([1]).toNot(be([1]))\n        #else\n            expect(NSArray(array: [NSNumber(integer: 1)])).toNot(beIdenticalTo(NSArray(array: [NSNumber(integer: 1)])))\n        #endif\n\n        let value1 = NSArray(array: [])\n        let value2 = NSArray(array: [])\n        let message = \"expected to not be identical to \\(identityAsString(value2)), got \\(identityAsString(value1))\"\n        failsWithErrorMessage(message) {\n            expect(value1).toNot(be(value2))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLessThanOrEqualToTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanOrEqualToTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThanOrEqualTo\", testLessThanOrEqualTo),\n            (\"testLessThanOrEqualToOperator\", testLessThanOrEqualToOperator),\n        ]\n    }\n\n    func testLessThanOrEqualTo() {\n        expect(10).to(beLessThanOrEqualTo(10))\n        expect(2).to(beLessThanOrEqualTo(10))\n        expect(2).toNot(beLessThanOrEqualTo(1))\n\n        expect(NSNumber(int:2)).to(beLessThanOrEqualTo(10))\n        expect(NSNumber(int:2)).toNot(beLessThanOrEqualTo(1))\n#if _runtime(_ObjC)\n        expect(2).to(beLessThanOrEqualTo(NSNumber(int:10)))\n        expect(2).toNot(beLessThanOrEqualTo(NSNumber(int:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than or equal to <0>, got <2>\") {\n            expect(2).to(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessage(\"expected to not be less than or equal to <0>, got <0>\") {\n            expect(0).toNot(beLessThanOrEqualTo(0))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to be less than or equal to <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThanOrEqualTo(2))\n            return\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than or equal to <-2>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThanOrEqualTo(-2))\n            return\n        }\n    }\n\n    func testLessThanOrEqualToOperator() {\n        expect(0) <= 1\n        expect(1) <= 1\n\n        failsWithErrorMessage(\"expected to be less than or equal to <1>, got <2>\") {\n            expect(2) <= 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLessThanTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeLessThanTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testLessThan\", testLessThan),\n            (\"testLessThanOperator\", testLessThanOperator),\n        ]\n    }\n\n    func testLessThan() {\n        expect(2).to(beLessThan(10))\n        expect(2).toNot(beLessThan(1))\n#if _runtime(_ObjC)\n        expect(NSNumber(integer:2)).to(beLessThan(10))\n        expect(NSNumber(integer:2)).toNot(beLessThan(1))\n\n        expect(2).to(beLessThan(NSNumber(integer:10)))\n        expect(2).toNot(beLessThan(NSNumber(integer:1)))\n#endif\n\n        failsWithErrorMessage(\"expected to be less than <0>, got <2>\") {\n            expect(2).to(beLessThan(0))\n        }\n        failsWithErrorMessage(\"expected to not be less than <1>, got <0>\") {\n            expect(0).toNot(beLessThan(1))\n        }\n\n        failsWithErrorMessageForNil(\"expected to be less than <2>, got <nil>\") {\n            expect(nil as Int?).to(beLessThan(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not be less than <-1>, got <nil>\") {\n            expect(nil as Int?).toNot(beLessThan(-1))\n        }\n    }\n\n    func testLessThanOperator() {\n        expect(0) < 1\n#if _runtime(_ObjC)\n        expect(NSNumber(int:0)) < 1\n#endif\n        failsWithErrorMessage(\"expected to be less than <1>, got <2>\") {\n            expect(2) < 1\n            return\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeLogicalTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum ConvertsToBool : BooleanType, CustomStringConvertible {\n    case TrueLike, FalseLike\n\n    var boolValue : Bool {\n        switch self {\n        case .TrueLike: return true\n        case .FalseLike: return false\n        }\n    }\n\n    var description : String {\n        switch self {\n        case .TrueLike: return \"TrueLike\"\n        case .FalseLike: return \"FalseLike\"\n        }\n    }\n}\n\nclass BeTruthyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNonNilTypes\", testShouldMatchNonNilTypes),\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchNilTypes\", testShouldNotMatchNilTypes),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n            (\"testShouldMatchBoolConvertibleTypesThatConvertToTrue\", testShouldMatchBoolConvertibleTypesThatConvertToTrue),\n            (\"testShouldNotMatchBoolConvertibleTypesThatConvertToFalse\", testShouldNotMatchBoolConvertibleTypesThatConvertToFalse),\n        ]\n    }\n\n    func testShouldMatchNonNilTypes() {\n        expect(true as Bool?).to(beTruthy())\n        expect(1 as Int?).to(beTruthy())\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <true>\") {\n            expect(true).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilTypes() {\n        expect(false as Bool?).toNot(beTruthy())\n        expect(nil as Bool?).toNot(beTruthy())\n        expect(nil as Int?).toNot(beTruthy())\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <false>\") {\n            expect(false).to(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        expect(nil as Bool?).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <nil>\") {\n            expect(nil as Bool?).to(beTruthy())\n        }\n    }\n\n    func testShouldMatchBoolConvertibleTypesThatConvertToTrue() {\n        expect(ConvertsToBool.TrueLike).to(beTruthy())\n\n        failsWithErrorMessage(\"expected to not be truthy, got <TrueLike>\") {\n            expect(ConvertsToBool.TrueLike).toNot(beTruthy())\n        }\n    }\n\n    func testShouldNotMatchBoolConvertibleTypesThatConvertToFalse() {\n        expect(ConvertsToBool.FalseLike).toNot(beTruthy())\n\n        failsWithErrorMessage(\"expected to be truthy, got <FalseLike>\") {\n            expect(ConvertsToBool.FalseLike).to(beTruthy())\n        }\n    }\n}\n\nclass BeTrueTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchTrue\", testShouldMatchTrue),\n            (\"testShouldNotMatchFalse\", testShouldNotMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchTrue() {\n        expect(true).to(beTrue())\n\n        failsWithErrorMessage(\"expected to not be true, got <true>\") {\n            expect(true).toNot(beTrue())\n        }\n    }\n\n    func testShouldNotMatchFalse() {\n        expect(false).toNot(beTrue())\n\n        failsWithErrorMessage(\"expected to be true, got <false>\") {\n            expect(false).to(beTrue())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to not be true, got <nil>\") {\n            expect(nil as Bool?).toNot(beTrue())\n        }\n\n        failsWithErrorMessageForNil(\"expected to be true, got <nil>\") {\n            expect(nil as Bool?).to(beTrue())\n        }\n    }\n}\n\nclass BeFalsyTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldMatchNilTypes\", testShouldMatchNilTypes),\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldNotMatchNonNilTypes\", testShouldNotMatchNonNilTypes),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldMatchNilBools\", testShouldMatchNilBools),\n        ]\n    }\n\n    func testShouldMatchNilTypes() {\n        expect(false as Bool?).to(beFalsy())\n        expect(nil as Bool?).to(beFalsy())\n        expect(nil as Int?).to(beFalsy())\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalsy())\n\n        failsWithErrorMessage(\"expected to be falsy, got <true>\") {\n            expect(true).to(beFalsy())\n        }\n    }\n\n    func testShouldNotMatchNonNilTypes() {\n        expect(true as Bool?).toNot(beFalsy())\n        expect(1 as Int?).toNot(beFalsy())\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <false>\") {\n            expect(false).toNot(beFalsy())\n        }\n    }\n\n    func testShouldMatchNilBools() {\n        expect(nil as Bool?).to(beFalsy())\n\n        failsWithErrorMessage(\"expected to not be falsy, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalsy())\n        }\n    }\n}\n\nclass BeFalseTest : XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testShouldNotMatchTrue\", testShouldNotMatchTrue),\n            (\"testShouldMatchFalse\", testShouldMatchFalse),\n            (\"testShouldNotMatchNilBools\", testShouldNotMatchNilBools),\n        ]\n    }\n\n    func testShouldNotMatchTrue() {\n        expect(true).toNot(beFalse())\n\n        failsWithErrorMessage(\"expected to be false, got <true>\") {\n            expect(true).to(beFalse())\n        }\n    }\n\n    func testShouldMatchFalse() {\n        expect(false).to(beFalse())\n\n        failsWithErrorMessage(\"expected to not be false, got <false>\") {\n            expect(false).toNot(beFalse())\n        }\n    }\n\n    func testShouldNotMatchNilBools() {\n        failsWithErrorMessageForNil(\"expected to be false, got <nil>\") {\n            expect(nil as Bool?).to(beFalse())\n        }\n\n        failsWithErrorMessageForNil(\"expected to not be false, got <nil>\") {\n            expect(nil as Bool?).toNot(beFalse())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeNilTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeNilTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeNil\", testBeNil),\n        ]\n    }\n\n    func producesNil() -> Array<Int>? {\n        return nil\n    }\n\n    func testBeNil() {\n        expect(nil as Int?).to(beNil())\n        expect(1 as Int?).toNot(beNil())\n        expect(self.producesNil()).to(beNil())\n\n        failsWithErrorMessage(\"expected to not be nil, got <nil>\") {\n            expect(nil as Int?).toNot(beNil())\n        }\n\n        failsWithErrorMessage(\"expected to be nil, got <1>\") {\n            expect(1 as Int?).to(beNil())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeVoidTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass BeVoidTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeVoid\", testBeVoid),\n        ]\n    }\n\n    func testBeVoid() {\n        expect(()).to(beVoid())\n        expect(() as ()?).to(beVoid())\n        expect(nil as ()?).toNot(beVoid())\n\n        expect(()) == ()\n        expect(() as ()?) == ()\n        expect(nil as ()?) != ()\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(()).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to not be void, got <()>\") {\n            expect(() as ()?).toNot(beVoid())\n        }\n\n        failsWithErrorMessage(\"expected to be void, got <nil>\") {\n            expect(nil as ()?).to(beVoid())\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/BeginWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass BeginWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testNegativeMatches\", testNegativeMatches),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect([1, 2, 3]).to(beginWith(1))\n        expect([1, 2, 3]).toNot(beginWith(2))\n\n        expect(\"foobar\").to(beginWith(\"foo\"))\n        expect(\"foobar\").toNot(beginWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(beginWith(\"foo\"))\n        expect(NSString(string: \"foobar\").description).toNot(beginWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(beginWith(\"a\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(beginWith(\"b\"))\n#endif\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessageForNil(\"expected to begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).to(beginWith(NSString(string: \"b\")))\n        }\n        failsWithErrorMessageForNil(\"expected to not begin with <b>, got <nil>\") {\n            expect(nil as NSArray?).toNot(beginWith(NSString(string: \"b\")))\n        }\n\n        failsWithErrorMessage(\"expected to begin with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(beginWith(2))\n        }\n        failsWithErrorMessage(\"expected to not begin with <1>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(beginWith(1))\n        }\n        failsWithErrorMessage(\"expected to begin with <atm>, got <batman>\") {\n            expect(\"batman\").to(beginWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not begin with <bat>, got <batman>\") {\n            expect(\"batman\").toNot(beginWith(\"bat\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/ContainTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass ContainTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testContain\", testContain),\n            (\"testContainSubstring\", testContainSubstring),\n            (\"testContainObjCSubstring\", testContainObjCSubstring),\n            (\"testVariadicArguments\", testVariadicArguments),\n            (\"testCollectionArguments\", testCollectionArguments),\n        ]\n    }\n\n    func testContain() {\n        expect([1, 2, 3]).to(contain(1))\n        expect([1, 2, 3] as [CInt]).to(contain(1 as CInt))\n        expect([1, 2, 3] as Array<CInt>).to(contain(1 as CInt))\n        expect([\"foo\", \"bar\", \"baz\"]).to(contain(\"baz\"))\n        expect([1, 2, 3]).toNot(contain(4))\n        expect([\"foo\", \"bar\", \"baz\"]).toNot(contain(\"ba\"))\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\"])).to(contain(NSString(string: \"a\")))\n        expect(NSArray(array: [\"a\"])).toNot(contain(NSString(string:\"b\")))\n        expect(NSArray(object: 1) as NSArray?).to(contain(1))\n#endif\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"b\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to contain <bar>, got <nil>\") {\n            expect(nil as [String]?).to(contain(\"bar\"))\n        }\n        failsWithErrorMessageForNil(\"expected to not contain <b>, got <nil>\") {\n            expect(nil as [String]?).toNot(contain(\"b\"))\n        }\n    }\n\n    func testContainSubstring() {\n        expect(\"foo\").to(contain(\"o\"))\n        expect(\"foo\").to(contain(\"oo\"))\n        expect(\"foo\").toNot(contain(\"z\"))\n        expect(\"foo\").toNot(contain(\"zz\"))\n\n        failsWithErrorMessage(\"expected to contain <bar>, got <foo>\") {\n            expect(\"foo\").to(contain(\"bar\"))\n        }\n        failsWithErrorMessage(\"expected to not contain <oo>, got <foo>\") {\n            expect(\"foo\").toNot(contain(\"oo\"))\n        }\n    }\n\n    func testContainObjCSubstring() {\n        let str = NSString(string: \"foo\")\n        expect(str).to(contain(NSString(string: \"o\")))\n        expect(str).to(contain(NSString(string: \"oo\")))\n        expect(str).toNot(contain(NSString(string: \"z\")))\n        expect(str).toNot(contain(NSString(string: \"zz\")))\n    }\n\n    func testVariadicArguments() {\n        expect([1, 2, 3]).to(contain(1, 2))\n        expect([1, 2, 3]).toNot(contain(1, 4))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain(\"a\", \"bar\"))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain(\"bar\", \"b\"))\n        }\n    }\n\n    func testCollectionArguments() {\n        expect([1, 2, 3]).to(contain([1, 2]))\n        expect([1, 2, 3]).toNot(contain([1, 4]))\n\n        let collection = Array(1...10)\n        let slice = Array(collection[3...5])\n        expect(collection).to(contain(slice))\n\n        failsWithErrorMessage(\"expected to contain <a, bar>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).to(contain([\"a\", \"bar\"]))\n        }\n\n        failsWithErrorMessage(\"expected to not contain <bar, b>, got <[a, b, c]>\") {\n            expect([\"a\", \"b\", \"c\"]).toNot(contain([\"bar\", \"b\"]))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/EndWithTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EndWithTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEndWithPositives\", testEndWithPositives),\n            (\"testEndWithNegatives\", testEndWithNegatives),\n        ]\n    }\n\n    func testEndWithPositives() {\n        expect([1, 2, 3]).to(endWith(3))\n        expect([1, 2, 3]).toNot(endWith(2))\n\n        expect(\"foobar\").to(endWith(\"bar\"))\n        expect(\"foobar\").toNot(endWith(\"oo\"))\n\n        expect(NSString(string: \"foobar\").description).to(endWith(\"bar\"))\n        expect(NSString(string: \"foobar\").description).toNot(endWith(\"oo\"))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [\"a\", \"b\"])).to(endWith(\"b\"))\n        expect(NSArray(array: [\"a\", \"b\"])).toNot(endWith(\"a\"))\n#endif\n    }\n\n    func testEndWithNegatives() {\n        failsWithErrorMessageForNil(\"expected to end with <2>, got <nil>\") {\n            expect(nil as [Int]?).to(endWith(2))\n        }\n        failsWithErrorMessageForNil(\"expected to not end with <2>, got <nil>\") {\n            expect(nil as [Int]?).toNot(endWith(2))\n        }\n\n        failsWithErrorMessage(\"expected to end with <2>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(endWith(2))\n        }\n        failsWithErrorMessage(\"expected to not end with <3>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).toNot(endWith(3))\n        }\n        failsWithErrorMessage(\"expected to end with <atm>, got <batman>\") {\n            expect(\"batman\").to(endWith(\"atm\"))\n        }\n        failsWithErrorMessage(\"expected to not end with <man>, got <batman>\") {\n            expect(\"batman\").toNot(endWith(\"man\"))\n        }\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/EqualTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass EqualTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testEquality\", testEquality),\n            (\"testArrayEquality\", testArrayEquality),\n            (\"testSetEquality\", testSetEquality),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n            (\"testDictionaryEquality\", testDictionaryEquality),\n            (\"testDataEquality\", testDataEquality),\n            (\"testNSObjectEquality\", testNSObjectEquality),\n            (\"testOperatorEquality\", testOperatorEquality),\n            (\"testOperatorEqualityWithArrays\", testOperatorEqualityWithArrays),\n            (\"testOperatorEqualityWithDictionaries\", testOperatorEqualityWithDictionaries),\n            (\"testOptionalEquality\", testOptionalEquality),\n            (\"testArrayOfOptionalsEquality\", testArrayOfOptionalsEquality),\n            (\"testDictionariesWithDifferentSequences\", testDictionariesWithDifferentSequences),\n        ]\n    }\n\n    func testEquality() {\n        expect(1 as CInt).to(equal(1 as CInt))\n        expect(1 as CInt).to(equal(1))\n        expect(1).to(equal(1))\n        expect(\"hello\").to(equal(\"hello\"))\n        expect(\"hello\").toNot(equal(\"world\"))\n\n        expect {\n            1\n        }.to(equal(1))\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\").to(equal(\"world\"))\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\").toNot(equal(\"hello\"))\n        }\n    }\n\n    func testArrayEquality() {\n        expect([1, 2, 3]).to(equal([1, 2, 3]))\n        expect([1, 2, 3]).toNot(equal([1, 2]))\n        expect([1, 2, 3]).toNot(equal([1, 2, 4]))\n\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        expect(array1).to(equal(array2))\n        expect(array1).to(equal([1, 2, 3]))\n        expect(array1).toNot(equal([1, 2] as Array<Int>))\n\n#if _runtime(_ObjC)\n        expect(NSArray(array: [1, 2, 3])).to(equal(NSArray(array: [1, 2, 3])))\n#endif\n\n        failsWithErrorMessage(\"expected to equal <[1, 2]>, got <[1, 2, 3]>\") {\n            expect([1, 2, 3]).to(equal([1, 2]))\n        }\n    }\n\n    func testSetEquality() {\n        expect(Set([1, 2])).to(equal(Set([1, 2])))\n        expect(Set<Int>()).to(equal(Set<Int>()))\n        expect(Set<Int>()) == Set<Int>()\n        expect(Set([1, 2])) != Set<Int>()\n\n        failsWithErrorMessageForNil(\"expected to equal <[1, 2]>, got <nil>\") {\n            expect(nil as Set<Int>?).to(equal(Set([1, 2])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3]>, missing <[1]>\") {\n            expect(Set([2, 3])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[1, 2, 3, 4]>, extra <[4]>\") {\n            expect(Set([1, 2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])).to(equal(Set([1, 2, 3])))\n        }\n\n        failsWithErrorMessage(\"expected to equal <[1, 2, 3]>, got <[2, 3, 4]>, missing <[1]>, extra <[4]>\") {\n            expect(Set([2, 3, 4])) == Set([1, 2, 3])\n        }\n\n        failsWithErrorMessage(\"expected to not equal <[1, 2, 3]>, got <[1, 2, 3]>\") {\n            expect(Set([1, 2, 3])) != Set([1, 2, 3])\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as String?).to(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <foo>\") {\n            expect(\"foo\").toNot(equal(nil as String?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <bar>, got <nil>\") {\n            expect(nil as String?).toNot(equal(\"bar\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int]?).to(equal(nil as [Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1]>, got <nil>\") {\n            expect(nil as [Int]?).toNot(equal([1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1]>\") {\n            expect([1]).toNot(equal(nil as [Int]?))\n        }\n\n        failsWithErrorMessageForNil(\"expected to equal <nil>, got <nil>\") {\n            expect(nil as [Int: Int]?).to(equal(nil as [Int: Int]?))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <[1: 1]>, got <nil>\") {\n            expect(nil as [Int: Int]?).toNot(equal([1: 1]))\n        }\n        failsWithErrorMessageForNil(\"expected to not equal <nil>, got <[1: 1]>\") {\n            expect([1: 1]).toNot(equal(nil as [Int: Int]?))\n        }\n    }\n\n    func testDictionaryEquality() {\n        expect([\"foo\": \"bar\"]).to(equal([\"foo\": \"bar\"]))\n        expect([\"foo\": \"bar\"]).toNot(equal([\"foo\": \"baz\"]))\n\n        let actual = [\"foo\": \"bar\"]\n        let expected = [\"foo\": \"bar\"]\n        let unexpected = [\"foo\": \"baz\"]\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n#if _runtime(_ObjC)\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal([\"foo\": \"bar\"]))\n        expect(NSDictionary(object: \"bar\", forKey: \"foo\")).to(equal(expected))\n#endif\n    }\n\n    func testDataEquality() {\n        let actual = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let expected = \"foobar\".dataUsingEncoding(NSUTF8StringEncoding)\n        let unexpected = \"foobarfoo\".dataUsingEncoding(NSUTF8StringEncoding)\n\n        expect(actual).to(equal(expected))\n        expect(actual).toNot(equal(unexpected))\n\n        #if os(Linux)\n            // FIXME: Swift on Linux triggers a segfault when calling NSData's hash() (last checked on 03-11)\n            let expectedErrorMessage = \"expected to equal <NSData<length=9>>, got <NSData<length=6>>\"\n        #else\n            let expectedErrorMessage = \"expected to equal <NSData<hash=92856895,length=9>>,\"\n                + \" got <NSData<hash=114710658,length=6>>\"\n        #endif\n\n        failsWithErrorMessage(expectedErrorMessage) {\n            expect(actual).to(equal(unexpected))\n        }\n    }\n\n    func testNSObjectEquality() {\n        expect(NSNumber(integer:1)).to(equal(NSNumber(integer:1)))\n        expect(NSNumber(integer:1)) == NSNumber(integer:1)\n        expect(NSNumber(integer:1)) != NSNumber(integer:2)\n        expect { NSNumber(integer:1) }.to(equal(1))\n    }\n\n    func testOperatorEquality() {\n        expect(\"foo\") == \"foo\"\n        expect(\"foo\") != \"bar\"\n\n        failsWithErrorMessage(\"expected to equal <world>, got <hello>\") {\n            expect(\"hello\") == \"world\"\n            return\n        }\n        failsWithErrorMessage(\"expected to not equal <hello>, got <hello>\") {\n            expect(\"hello\") != \"hello\"\n            return\n        }\n    }\n\n    func testOperatorEqualityWithArrays() {\n        let array1: Array<Int> = [1, 2, 3]\n        let array2: Array<Int> = [1, 2, 3]\n        let array3: Array<Int> = [1, 2]\n        expect(array1) == array2\n        expect(array1) != array3\n    }\n\n    func testOperatorEqualityWithDictionaries() {\n        let dict1 = [\"foo\": \"bar\"]\n        let dict2 = [\"foo\": \"bar\"]\n        let dict3 = [\"foo\": \"baz\"]\n        expect(dict1) == dict2\n        expect(dict1) != dict3\n    }\n\n    func testOptionalEquality() {\n        expect(1 as CInt?).to(equal(1))\n        expect(1 as CInt?).to(equal(1 as CInt?))\n\n        expect(1).toNot(equal(nil))\n    }\n    \n    func testArrayOfOptionalsEquality() {\n        let array1: Array<Int?> = [1, nil, 3]\n        let array2: Array<Int?> = [nil, 2, 3]\n        let array3: Array<Int?> = [1, nil, 3]\n        \n        expect(array1).toNot(equal(array2))\n        expect(array1).to(equal(array3))\n        expect(array2).toNot(equal(array3))\n        \n        let allNils1: Array<String?> = [nil, nil, nil, nil]\n        let allNils2: Array<String?> = [nil, nil, nil, nil]\n        let notReallyAllNils: Array<String?> = [nil, nil, nil, \"turtles\"]\n        \n        expect(allNils1).to(equal(allNils2))\n        expect(allNils1).toNot(equal(notReallyAllNils))\n        \n        let noNils1: Array<Int?> = [1, 2, 3, 4, 5]\n        let noNils2: Array<Int?> = [1, 3, 5, 7, 9]\n        \n        expect(noNils1).toNot(equal(noNils2))\n        \n        failsWithErrorMessage(\"expected to equal <[Optional(1), nil]>, got <[nil, Optional(2)]>\") {\n            let arrayOfOptionalInts: Array<Int?> = [nil, 2]\n            let anotherArrayOfOptionalInts: Array<Int?> = [1, nil]\n            expect(arrayOfOptionalInts).to(equal(anotherArrayOfOptionalInts))\n            return\n        }\n    }\n\n    func testDictionariesWithDifferentSequences() {\n        // see: https://github.com/Quick/Nimble/issues/61\n        // these dictionaries generate different orderings of sequences.\n        let result = [\"how\":1, \"think\":1, \"didnt\":2, \"because\":1,\n            \"interesting\":1, \"always\":1, \"right\":1, \"such\":1,\n            \"to\":3, \"say\":1, \"cool\":1, \"you\":1,\n            \"weather\":3, \"be\":1, \"went\":1, \"was\":2,\n            \"sometimes\":1, \"and\":3, \"mind\":1, \"rain\":1,\n            \"whole\":1, \"everything\":1, \"weather.\":1, \"down\":1,\n            \"kind\":1, \"mood.\":1, \"it\":2, \"everyday\":1, \"might\":1,\n            \"more\":1, \"have\":2, \"person\":1, \"could\":1, \"tenth\":2,\n            \"night\":1, \"write\":1, \"Youd\":1, \"affects\":1, \"of\":3,\n            \"Who\":1, \"us\":1, \"an\":1, \"I\":4, \"my\":1, \"much\":2,\n            \"wrong.\":1, \"peacefully.\":1, \"amazing\":3, \"would\":4,\n            \"just\":1, \"grade.\":1, \"Its\":2, \"The\":2, \"had\":1, \"that\":1,\n            \"the\":5, \"best\":1, \"but\":1, \"essay\":1, \"for\":1, \"summer\":2,\n            \"your\":1, \"grade\":1, \"vary\":1, \"pretty\":1, \"at\":1, \"rain.\":1,\n            \"about\":1, \"allow\":1, \"thought\":1, \"in\":1, \"sleep\":1, \"a\":1,\n            \"hot\":1, \"really\":1, \"beach\":1, \"life.\":1, \"we\":1, \"although\":1]\n\n        let storyCount = [\"The\":2, \"summer\":2, \"of\":3, \"tenth\":2, \"grade\":1,\n            \"was\":2, \"the\":5, \"best\":1, \"my\":1, \"life.\":1, \"I\":4,\n            \"went\":1, \"to\":3, \"beach\":1, \"everyday\":1, \"and\":3,\n            \"we\":1, \"had\":1, \"amazing\":3, \"weather.\":1, \"weather\":3,\n            \"didnt\":2, \"really\":1, \"vary\":1, \"much\":2, \"always\":1,\n            \"pretty\":1, \"hot\":1, \"although\":1, \"sometimes\":1, \"at\":1,\n            \"night\":1, \"it\":2, \"would\":4, \"rain.\":1, \"mind\":1, \"rain\":1,\n            \"because\":1, \"cool\":1, \"everything\":1, \"down\":1, \"allow\":1,\n            \"us\":1, \"sleep\":1, \"peacefully.\":1, \"Its\":2, \"how\":1,\n            \"affects\":1, \"your\":1, \"mood.\":1, \"Who\":1, \"have\":2,\n            \"thought\":1, \"that\":1, \"could\":1, \"write\":1, \"a\":1,\n            \"whole\":1, \"essay\":1, \"just\":1, \"about\":1, \"in\":1,\n            \"grade.\":1, \"kind\":1, \"right\":1, \"Youd\":1, \"think\":1,\n            \"for\":1, \"such\":1, \"an\":1, \"interesting\":1, \"person\":1,\n            \"might\":1, \"more\":1, \"say\":1, \"but\":1, \"you\":1, \"be\":1, \"wrong.\":1]\n\n        expect(result).to(equal(storyCount))\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/HaveCountTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass HaveCountTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testHaveCountForArray\", testHaveCountForArray),\n            (\"testHaveCountForDictionary\", testHaveCountForDictionary),\n            (\"testHaveCountForSet\", testHaveCountForSet),\n        ]\n    }\n\n    func testHaveCountForArray() {\n        expect([1, 2, 3]).to(haveCount(3))\n        expect([1, 2, 3]).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Array<Int> with count 1, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Array<Int> with count 3, got 3\\nActual Value: [1, 2, 3]\") {\n            expect([1, 2, 3]).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForDictionary() {\n        let dictionary = [\"1\":1, \"2\":2, \"3\":3]\n        expect(dictionary).to(haveCount(3))\n        expect(dictionary).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Dictionary<String, Int> with count 1, got 3\\nActual Value: \\(stringify(dictionary))\") {\n            expect(dictionary).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Dictionary<String, Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(dictionary))\") {\n                expect(dictionary).notTo(haveCount(3))\n        }\n    }\n\n    func testHaveCountForSet() {\n        let set = Set([1, 2, 3])\n        expect(set).to(haveCount(3))\n        expect(set).notTo(haveCount(1))\n\n        failsWithErrorMessage(\"expected to have Set<Int> with count 1, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).to(haveCount(1))\n        }\n\n        failsWithErrorMessage(\"expected to not have Set<Int> with count 3, got 3\" +\n            \"\\nActual Value: \\(stringify(set))\") {\n                expect(set).notTo(haveCount(3))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/MatchErrorTest.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass MatchErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchErrorPositive\", testMatchErrorPositive),\n            (\"testMatchErrorNegative\", testMatchErrorNegative),\n            (\"testMatchNSErrorPositive\", testMatchNSErrorPositive),\n            (\"testMatchNSErrorNegative\", testMatchNSErrorNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testDoesNotMatchNils\", testDoesNotMatchNils),\n        ]\n    }\n\n    func testMatchErrorPositive() {\n        expect(Error.Laugh).to(matchError(Error.Laugh))\n        expect(Error.Laugh).to(matchError(Error.self))\n        expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 1)))\n\n        expect(Error.Laugh as ErrorType).to(matchError(Error.Laugh))\n    }\n\n    func testMatchErrorNegative() {\n        expect(Error.Laugh).toNot(matchError(Error.Cry))\n        expect(Error.Laugh as ErrorType).toNot(matchError(Error.Cry))\n    }\n\n    func testMatchNSErrorPositive() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 0, userInfo: nil)\n\n        expect(error1).to(matchError(error2))\n    }\n\n    func testMatchNSErrorNegative() {\n        let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n        let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n\n        expect(error1).toNot(matchError(error2))\n    }\n\n    func testMatchPositiveMessage() {\n        failsWithErrorMessage(\"expected to match error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect(EquatableError.Parameterized(x: 1)).to(matchError(EquatableError.Parameterized(x: 2)))\n        }\n        failsWithErrorMessage(\"expected to match error <Cry>, got <Laugh>\") {\n            expect(Error.Laugh).to(matchError(Error.Cry))\n        }\n        failsWithErrorMessage(\"expected to match error <code=1>, got <code=0>\") {\n            expect(CustomDebugStringConvertibleError.A).to(matchError(CustomDebugStringConvertibleError.B))\n        }\n\n        failsWithErrorMessage(\"expected to match error <Error Domain=err Code=1 \\\"(null)\\\">, got <Error Domain=err Code=0 \\\"(null)\\\">\") {\n            let error1 = NSError(domain: \"err\", code: 0, userInfo: nil)\n            let error2 = NSError(domain: \"err\", code: 1, userInfo: nil)\n            expect(error1).to(matchError(error2))\n        }\n    }\n\n    func testMatchNegativeMessage() {\n        failsWithErrorMessage(\"expected to not match error <Laugh>, got <Laugh>\") {\n            expect(Error.Laugh).toNot(matchError(Error.Laugh))\n        }\n    }\n\n    func testDoesNotMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).to(matchError(Error.Laugh))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match error <Laugh>, got no error\") {\n            expect(nil as ErrorType?).toNot(matchError(Error.Laugh))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/MatchTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC)\n\nclass MatchTest:XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testMatchPositive\", testMatchPositive),\n            (\"testMatchNegative\", testMatchNegative),\n            (\"testMatchPositiveMessage\", testMatchPositiveMessage),\n            (\"testMatchNegativeMessage\", testMatchNegativeMessage),\n            (\"testMatchNils\", testMatchNils),\n        ]\n    }\n\n    func testMatchPositive() {\n        expect(\"11:14\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchNegative() {\n        expect(\"hello\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n    }\n    \n    func testMatchPositiveMessage() {\n        let message = \"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\"\n        failsWithErrorMessage(message) {\n            expect(\"hello\").to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n    \n    func testMatchNegativeMessage() {\n        let message = \"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:14>\"\n        failsWithErrorMessage(message) {\n            expect(\"11:14\").toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n\n    func testMatchNils() {\n        failsWithErrorMessageForNil(\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).to(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n\n        failsWithErrorMessageForNil(\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\") {\n            expect(nil as String?).toNot(match(\"\\\\d{2}:\\\\d{2}\"))\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/PostNotificationTest.swift",
    "content": "import XCTest\nimport Nimble\nimport Foundation\n\nclass PostNotificationTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPassesWhenNoNotificationsArePosted\", testPassesWhenNoNotificationsArePosted),\n            (\"testPassesWhenExpectedNotificationIsPosted\", testPassesWhenExpectedNotificationIsPosted),\n            (\"testPassesWhenAllExpectedNotificationsArePosted\", testPassesWhenAllExpectedNotificationsArePosted),\n            (\"testFailsWhenNoNotificationsArePosted\", testFailsWhenNoNotificationsArePosted),\n            (\"testFailsWhenNotificationWithWrongNameIsPosted\", testFailsWhenNotificationWithWrongNameIsPosted),\n            (\"testFailsWhenNotificationWithWrongObjectIsPosted\", testFailsWhenNotificationWithWrongObjectIsPosted),\n            (\"testPassesWhenExpectedNotificationEventuallyIsPosted\", testPassesWhenExpectedNotificationEventuallyIsPosted),\n        ]\n    }\n\n    var notificationCenter: NSNotificationCenter!\n\n    #if _runtime(_ObjC)\n    override func setUp() {\n        _setUp()\n        super.setUp()\n    }\n    #else\n    func setUp() {\n        _setUp()\n    }\n    #endif\n\n\n    func _setUp() {\n        notificationCenter = NSNotificationCenter()\n    }\n\n    func testPassesWhenNoNotificationsArePosted() {\n        expect {\n            // no notifications here!\n            return nil\n        }.to(postNotifications(beEmpty(), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenExpectedNotificationIsPosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        expect {\n            self.notificationCenter.postNotification(testNotification)\n        }.to(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testPassesWhenAllExpectedNotificationsArePosted() {\n        let foo = NSNumber(int: 1)\n        let bar = NSNumber(int: 2)\n        let n1 = NSNotification(name: \"Foo\", object: foo)\n        let n2 = NSNotification(name: \"Bar\", object: bar)\n        expect {\n            self.notificationCenter.postNotification(n1)\n            self.notificationCenter.postNotification(n2)\n            return nil\n        }.to(postNotifications(equal([n1, n2]), fromNotificationCenter: notificationCenter))\n    }\n\n    func testFailsWhenNoNotificationsArePosted() {\n        let testNotification = NSNotification(name: \"Foo\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(testNotification)]>, got no notifications\") {\n            expect {\n                // no notifications here!\n                return nil\n            }.to(postNotifications(equal([testNotification]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongNameIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name + \"a\", object: nil)\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testFailsWhenNotificationWithWrongObjectIsPosted() {\n        let n1 = NSNotification(name: \"Foo\", object: nil)\n        let n2 = NSNotification(name: n1.name, object: NSObject())\n        failsWithErrorMessage(\"expected to equal <[\\(n1)]>, got <[\\(n2)]>\") {\n            expect {\n                self.notificationCenter.postNotification(n2)\n                return nil\n            }.to(postNotifications(equal([n1]), fromNotificationCenter: self.notificationCenter))\n        }\n    }\n\n    func testPassesWhenExpectedNotificationEventuallyIsPosted() {\n        #if _runtime(_ObjC)\n            let testNotification = NSNotification(name: \"Foo\", object: nil)\n            expect {\n                deferToMainQueue {\n                    self.notificationCenter.postNotification(testNotification)\n                }\n                return nil\n            }.toEventually(postNotifications(equal([testNotification]), fromNotificationCenter: notificationCenter))\n        #else\n            print(\"\\(#function) is missing because toEventually is not implement on this platform\")\n        #endif\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/RaisesExceptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\n#if _runtime(_ObjC) && !SWIFT_PACKAGE\n\nclass RaisesExceptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutException\", testNegativeMatchesDoNotCallClosureWithoutException),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    var anException = NSException(name: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"])\n\n    func testPositiveMatches() {\n        expect { self.anException.raise() }.to(raiseException())\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n            expect(exception.name).to(equal(\"laugh\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).to(beginWith(\"lau\"))\n        })\n\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"df\"))\n        })\n        expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n            expect(exception.name).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        failsWithErrorMessage(\"expected to raise exception with name <foo>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"foo\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <bar>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"bar\"))\n        }\n\n        failsWithErrorMessage(\n            \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{k = v;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"k\": \"v\"]))\n        }\n\n        failsWithErrorMessage(\"expected to raise any exception, got no exception\") {\n            expect { self.anException }.to(raiseException())\n        }\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n        failsWithErrorMessage(\"expected to raise exception with name <laugh> with reason <Lulz>, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <bar> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException(named: \"bar\", reason: \"Lulz\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\"))\n        }\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\"))\n        }\n\n        failsWithErrorMessage(\"expected to not raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}>, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutException() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to raise exception with name <foo> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <ha> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"ha\") { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        failsWithErrorMessage(\"expected to raise exception with name <foo> with reason <Lulz> with userInfo <{}> that satisfies block, got no exception\") {\n            expect { self.anException }.to(raiseException(named: \"foo\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n                })\n        }\n\n        failsWithErrorMessage(\"expected to not raise any exception, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.toNot(raiseException())\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n        failsWithErrorMessage(\"expected to raise exception that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\") {\n            expect { self.anException.raise() }.to(raiseException { (exception: NSException) in\n                expect(exception.name).to(equal(\"foo\"))\n            })\n        }\n\n        let innerFailureMessage = \"expected to begin with <fo>, got <laugh>\"\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <wrong> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"wrong\") { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <laugh> with reason <Lulz> with userInfo <{key = value;}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"laugh\", reason: \"Lulz\", userInfo: [\"key\": \"value\"]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to raise exception with name <lol> with reason <Lulz> with userInfo <{}> that satisfies block, got NSException { name=laugh, reason='Lulz', userInfo=[key: value] }\"]) {\n            expect { self.anException.raise() }.to(raiseException(named: \"lol\", reason: \"Lulz\", userInfo: [:]) { (exception: NSException) in\n                expect(exception.name).to(beginWith(\"fo\"))\n            })\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/SatisfyAnyOfTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass SatisfyAnyOfTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testSatisfyAnyOf\", testSatisfyAnyOf),\n            (\"testOperatorOr\", testOperatorOr),\n        ]\n    }\n\n    func testSatisfyAnyOf() {\n        expect(2).to(satisfyAnyOf(equal(2), equal(3)))\n#if _runtime(_ObjC)\n        expect(2).toNot(satisfyAnyOf(equal(3), equal(\"turtles\")))\n#endif\n        expect([1,2,3]).to(satisfyAnyOf(equal([1,2,3]), allPass({$0 < 4}), haveCount(3)))\n        expect(\"turtle\").toNot(satisfyAnyOf(contain(\"a\"), endWith(\"magic\")))\n        expect(82.0).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        expect(false).to(satisfyAnyOf(beTrue(), beFalse()))\n        expect(true).to(satisfyAnyOf(beTruthy(), beFalsy()))\n        \n        failsWithErrorMessage(\n            \"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\") {\n                expect(2).to(satisfyAnyOf(equal(3), equal(4), equal(5)))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {all be less than 4, but failed first at element <5> in <[5, 6, 7]>}, or {equal <[1, 2, 3, 4]>}, got [5, 6, 7]\") {\n                expect([5,6,7]).to(satisfyAnyOf(allPass(\"be less than 4\", {$0 < 4}), equal([1,2,3,4])))\n        }\n        failsWithErrorMessage(\n            \"expected to match one of: {be true}, got false\") {\n                expect(false).to(satisfyAnyOf(beTrue()))\n        }\n        failsWithErrorMessage(\n            \"expected to not match one of: {be less than <10.5>}, or {be greater than <100.75>}, or {be close to <50.1> (within 0.0001)}, got 50.10001\") {\n                expect(50.10001).toNot(satisfyAnyOf(beLessThan(10.5), beGreaterThan(100.75), beCloseTo(50.1)))\n        }\n    }\n    \n    func testOperatorOr() {\n        expect(2).to(equal(2) || equal(3))\n#if _runtime(_ObjC)\n        expect(2).toNot(equal(3) || equal(\"turtles\"))\n#endif\n        expect(\"turtle\").toNot(contain(\"a\") || endWith(\"magic\"))\n        expect(82.0).toNot(beLessThan(10.5) || beGreaterThan(100.75))\n        expect(false).to(beTrue() || beFalse())\n        expect(true).to(beTruthy() || beFalsy())\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/Matchers/ThrowErrorTest.swift",
    "content": "import XCTest\nimport Nimble\n\nenum Error : ErrorType {\n    case Laugh\n    case Cry\n}\n\nenum EquatableError : ErrorType {\n    case Parameterized(x: Int)\n}\n\nextension EquatableError : Equatable {\n}\n\nfunc ==(lhs: EquatableError, rhs: EquatableError) -> Bool {\n    switch (lhs, rhs) {\n    case (.Parameterized(let l), .Parameterized(let r)):\n        return l == r\n    }\n}\n\nenum CustomDebugStringConvertibleError : ErrorType {\n    case A\n    case B\n}\n\nextension CustomDebugStringConvertibleError : CustomDebugStringConvertible {\n    var debugDescription : String {\n        return \"code=\\(_code)\"\n    }\n}\n\nclass ThrowErrorTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testPositiveMatches\", testPositiveMatches),\n            (\"testPositiveMatchesWithClosures\", testPositiveMatchesWithClosures),\n            (\"testNegativeMatches\", testNegativeMatches),\n            (\"testPositiveNegatedMatches\", testPositiveNegatedMatches),\n            (\"testNegativeNegatedMatches\", testNegativeNegatedMatches),\n            (\"testNegativeMatchesDoNotCallClosureWithoutError\", testNegativeMatchesDoNotCallClosureWithoutError),\n            (\"testNegativeMatchesWithClosure\", testNegativeMatchesWithClosure),\n        ]\n    }\n\n    func testPositiveMatches() {\n        expect { throw Error.Laugh }.to(throwError())\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh))\n        expect { throw Error.Laugh }.to(throwError(errorType: Error.self))\n        expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 1)))\n    }\n\n    func testPositiveMatchesWithClosures() {\n        // Generic typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { error in\n            guard case EquatableError.Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Explicit typed closure\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError { (error: EquatableError) in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over errorType argument\n        expect { throw EquatableError.Parameterized(x: 42) }.to(throwError(errorType: EquatableError.self) { error in\n            guard case .Parameterized(let x) = error else { fail(); return }\n            expect(x) >= 1\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).to(beginWith(\"Nim\"))\n        })\n        // Typed closure over error argument\n        expect { throw Error.Laugh }.to(throwError(Error.Laugh) { (error: Error) in\n            expect(error._domain).toNot(beginWith(\"as\"))\n        })\n    }\n\n    func testNegativeMatches() {\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Same case, different arguments\n        failsWithErrorMessage(\"expected to throw error <Parameterized(2)>, got <Parameterized(1)>\") {\n            expect { throw EquatableError.Parameterized(x: 1) }.to(throwError(EquatableError.Parameterized(x: 2)))\n        }\n        // Different case\n        failsWithErrorMessage(\"expected to throw error <Cry>, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry))\n        }\n        // Different case with closure\n        failsWithErrorMessage(\"expected to throw error <Cry> that satisfies block, got <Laugh>\") {\n            expect { throw Error.Laugh }.to(throwError(Error.Cry) { _ in return })\n        }\n        // Different case, implementing CustomDebugStringConvertible\n        failsWithErrorMessage(\"expected to throw error <code=1>, got <code=0>\") {\n            expect { throw CustomDebugStringConvertibleError.A }.to(throwError(CustomDebugStringConvertibleError.B))\n        }\n    }\n\n    func testPositiveNegatedMatches() {\n        // No error at all\n        expect { return }.toNot(throwError())\n        // Different case\n        expect { throw Error.Laugh }.toNot(throwError(Error.Cry))\n    }\n\n    func testNegativeNegatedMatches() {\n        // No error at all\n        failsWithErrorMessage(\"expected to not throw any error, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError())\n        }\n        // Different error\n        failsWithErrorMessage(\"expected to not throw error <Laugh>, got <Laugh>\") {\n            expect { throw Error.Laugh }.toNot(throwError(Error.Laugh))\n        }\n    }\n\n    func testNegativeMatchesDoNotCallClosureWithoutError() {\n        failsWithErrorMessage(\"expected to throw error that satisfies block, got no error\") {\n            expect { return }.to(throwError { error in\n                fail()\n            })\n        }\n        \n        failsWithErrorMessage(\"expected to throw error <Laugh> that satisfies block, got no error\") {\n            expect { return }.to(throwError(Error.Laugh) { error in\n                fail()\n            })\n        }\n    }\n\n    func testNegativeMatchesWithClosure() {\n#if SWIFT_PACKAGE\n        let moduleName = \"Nimbletest\"\n#else\n        let moduleName = \"NimbleTests\"\n#endif\n        let innerFailureMessage = \"expected to equal <foo>, got <\\(moduleName).Error>\"\n        let closure = { (error: Error) in\n            print(\"** In closure! With domain \\(error._domain)\")\n            expect(error._domain).to(equal(\"foo\"))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error from type <Error> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(closure: closure))\n        }\n\n        failsWithErrorMessage([innerFailureMessage, \"expected to throw error <Laugh> that satisfies block, got <Laugh>\"]) {\n            expect { throw Error.Laugh }.to(throwError(Error.Laugh, closure: closure))\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/SynchronousTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Nimble\n\nclass SynchronousTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testFailAlwaysFails\", testFailAlwaysFails),\n            (\"testUnexpectedErrorsThrownFails\", testUnexpectedErrorsThrownFails),\n            (\"testToMatchesIfMatcherReturnsTrue\", testToMatchesIfMatcherReturnsTrue),\n            (\"testToProvidesActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpression\", testToProvidesActualValueExpression),\n            (\"testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToMatchAgainstLazyProperties\", testToMatchAgainstLazyProperties),\n            (\"testToNotMatchesIfMatcherReturnsTrue\", testToNotMatchesIfMatcherReturnsTrue),\n            (\"testToNotProvidesActualValueExpression\", testToNotProvidesActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpression\", testToNotProvidesAMemoizedActualValueExpression),\n            (\"testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl\", testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl),\n            (\"testToNotNegativeMatches\", testToNotNegativeMatches),\n            (\"testNotToMatchesLikeToNot\", testNotToMatchesLikeToNot),\n        ]\n    }\n\n    let errorToThrow = NSError(domain: NSCocoaErrorDomain, code: 42, userInfo: nil)\n    private func doThrowError() throws -> Int {\n        throw errorToThrow\n    }\n\n    func testFailAlwaysFails() {\n        failsWithErrorMessage(\"My error message\") {\n            fail(\"My error message\")\n        }\n        failsWithErrorMessage(\"fail() always fails\") {\n            fail()\n        }\n    }\n\n    func testUnexpectedErrorsThrownFails() {\n#if _runtime(_ObjC) // This test triggers a weird segfault on Linux currently\n        failsWithErrorMessage(\"expected to equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.to(equal(1))\n        }\n        failsWithErrorMessage(\"expected to not equal <1>, got an unexpected error thrown: <\\(errorToThrow)>\") {\n            expect { try self.doThrowError() }.toNot(equal(1))\n        }\n#endif\n    }\n\n    func testToMatchesIfMatcherReturnsTrue() {\n        expect(1).to(MatcherFunc { expr, failure in true })\n        expect{1}.to(MatcherFunc { expr, failure in true })\n    }\n\n    func testToProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).to(MatcherFunc { expr, failure in value = try expr.evaluate(); return true })\n        expect(value).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.to(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return true\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToMatchAgainstLazyProperties() {\n        expect(ObjectWithLazyProperty().value).to(equal(\"hello\"))\n        expect(ObjectWithLazyProperty().value).toNot(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).to(equal(\"world\"))\n        expect(ObjectWithLazyProperty().anotherValue).toNot(equal(\"hello\"))\n    }\n\n    // repeated tests from to() for toNot()\n    func testToNotMatchesIfMatcherReturnsTrue() {\n        expect(1).toNot(MatcherFunc { expr, failure in false })\n        expect{1}.toNot(MatcherFunc { expr, failure in false })\n    }\n\n    func testToNotProvidesActualValueExpression() {\n        var value: Int?\n        expect(1).toNot(MatcherFunc { expr, failure in value = try expr.evaluate(); return false })\n        expect(value).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpression() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            try expr.evaluate()\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotProvidesAMemoizedActualValueExpressionIsEvaluatedAtMatcherControl() {\n        var callCount = 0\n        expect{ callCount += 1 }.toNot(MatcherFunc { expr, failure in\n            expect(callCount).to(equal(0))\n            try expr.evaluate()\n            return false\n        })\n        expect(callCount).to(equal(1))\n    }\n\n    func testToNotNegativeMatches() {\n        failsWithErrorMessage(\"expected to not match, got <1>\") {\n            expect(1).toNot(MatcherFunc { expr, failure in true })\n        }\n    }\n\n\n    func testNotToMatchesLikeToNot() {\n        expect(1).notTo(MatcherFunc { expr, failure in false })\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/UserDescriptionTest.swift",
    "content": "import XCTest\nimport Nimble\n\nclass UserDescriptionTest: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testToMatcher_CustomFailureMessage\", testToMatcher_CustomFailureMessage),\n            (\"testNotToMatcher_CustomFailureMessage\", testNotToMatcher_CustomFailureMessage),\n            (\"testToNotMatcher_CustomFailureMessage\", testToNotMatcher_CustomFailureMessage),\n            (\"testToEventuallyMatch_CustomFailureMessage\", testToEventuallyMatch_CustomFailureMessage),\n            (\"testToEventuallyNotMatch_CustomFailureMessage\", testToEventuallyNotMatch_CustomFailureMessage),\n            (\"testToNotEventuallyMatch_CustomFailureMessage\", testToNotEventuallyMatch_CustomFailureMessage),\n        ]\n    }\n    \n    func testToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to match, got <1>\") {\n                expect(1).to(MatcherFunc { expr, failure in false }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testNotToMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).notTo(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToNotMatcher_CustomFailureMessage() {\n        failsWithErrorMessage(\n            \"These aren't equal!\\n\" +\n            \"expected to not match, got <1>\") {\n                expect(1).toNot(MatcherFunc { expr, failure in true }, description: \"These aren't equal!\")\n        }\n    }\n    \n    func testToEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These aren't eventually equal!\\n\" +\n            \"expected to eventually equal <1>, got <0>\") {\n                expect { 0 }.toEventually(equal(1), description: \"These aren't eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToEventuallyNotMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n    \n    func testToNotEventuallyMatch_CustomFailureMessage() {\n#if _runtime(_ObjC)\n        failsWithErrorMessage(\n            \"These are eventually equal!\\n\" +\n            \"expected to eventually not equal <1>, got <1>\") {\n                expect { 1 }.toEventuallyNot(equal(1), description: \"These are eventually equal!\")\n        }\n#endif\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/NimbleSpecHelper.h",
    "content": "@import Nimble;\n#import \"NimbleTests-Swift.h\"\n\n// Use this when you want to verify the failure message for when an expectation fails\n#define expectFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessage:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n#define expectFailureMessages(MSGS, BLOCK) \\\n[NimbleHelper expectFailureMessages:(MSGS) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n\n\n// Use this when you want to verify the failure message with the nil message postfixed\n// to it: \" (use beNil() to match nils)\"\n#define expectNilFailureMessage(MSG, BLOCK) \\\n[NimbleHelper expectFailureMessageForNil:(MSG) block:(BLOCK) file:@(__FILE__) line:__LINE__];\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCAllPassTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAllPassTest : XCTestCase\n\n@end\n\n@implementation ObjCAllPassTest\n\n- (void)testPositiveMatches {\n    expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@5)));\n    expect(@[@1, @2, @3,@4]).toNot(allPass(beGreaterThan(@5)));\n    \n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).to(allPass(beLessThan(@5)));\n    expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beGreaterThan(@5)));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to all be less than <3>, but failed first at element\"\n                         \" <3> in <[1, 2, 3, 4]>\", ^{\n                             expect(@[@1, @2, @3,@4]).to(allPass(beLessThan(@3)));\n                         });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect(@[@1, @2, @3,@4]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"expected to not all be less than <5>\", ^{\n        expect([NSSet setWithArray:@[@1, @2, @3,@4]]).toNot(allPass(beLessThan(@5)));\n    });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).to(allPass(beLessThan(@5)));\n                         });\n    expectFailureMessage(@\"allPass only works with NSFastEnumeration\"\n                         \" (NSArray, NSSet, ...) of NSObjects, got <3>\", ^{\n                             expect(@3).toNot(allPass(beLessThan(@5)));\n                         });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCAsyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCAsyncTest : XCTestCase\n\n@end\n\n@implementation ObjCAsyncTest\n\n- (void)testAsync {\n    __block id obj = @1;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = nil;\n    });\n    expect(obj).toEventually(beNil());\n}\n\n\n- (void)testAsyncWithCustomTimeout {\n    __block id obj = nil;\n    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n        obj = @1;\n    });\n    expect(obj).withTimeout(5).toEventuallyNot(beNil());\n}\n\n- (void)testAsyncCallback {\n    waitUntil(^(void (^done)(void)){\n        done();\n    });\n\n    expectFailureMessage(@\"Waited more than 1.0 second\", ^{\n        waitUntil(^(void (^done)(void)){ /* ... */ });\n    });\n\n    expectFailureMessage(@\"Waited more than 0.01 seconds\", ^{\n        waitUntilTimeout(0.01, ^(void (^done)(void)){\n            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n                [NSThread sleepForTimeInterval:0.1];\n                done();\n            });\n        });\n    });\n\n    expectFailureMessage(@\"expected to equal <goodbye>, got <hello>\", ^{\n        waitUntil(^(void (^done)(void)){\n            [NSThread sleepForTimeInterval:0.1];\n            expect(@\"hello\").to(equal(@\"goodbye\"));\n            done();\n        });\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeAnInstanceOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeAnInstanceOfTest : XCTestCase\n@end\n\n@implementation ObjCBeAnInstanceOfTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beAnInstanceOf([NSNull class]));\n    expect(@1).toNot(beAnInstanceOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be an instance of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAnInstanceOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be an instance of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be an instance of NSNull, got <nil>\", ^{\n        expect(nil).to(beAnInstanceOf([NSNull class]));\n    });\n\n    expectNilFailureMessage(@\"expected to not be an instance of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAnInstanceOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeCloseToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeCloseToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeCloseToTest\n\n- (void)testPositiveMatches {\n    expect(@1.2).to(beCloseTo(@1.2001));\n    expect(@1.2).to(beCloseTo(@2).within(10));\n    expect(@2).toNot(beCloseTo(@1));\n    expect(@1.00001).toNot(beCloseTo(@1).within(0.00000001));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be close to <0> (within 0.001), got <1>\", ^{\n        expect(@1).to(beCloseTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be close to <0> (within 0.001), got <0.0001>\", ^{\n        expect(@(0.0001)).toNot(beCloseTo(@0));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).to(beCloseTo(@0));\n    });\n    expectNilFailureMessage(@\"expected to not be close to <0> (within 0.001), got <nil>\", ^{\n        expect(nil).toNot(beCloseTo(@0));\n    });\n}\n\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeEmptyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeEmptyTest : XCTestCase\n@end\n\n@implementation ObjCBeEmptyTest\n\n- (void)testPositiveMatches {\n    expect(@[]).to(beEmpty());\n    expect(@\"\").to(beEmpty());\n    expect(@{}).to(beEmpty());\n    expect([NSSet set]).to(beEmpty());\n    expect([NSIndexSet indexSet]).to(beEmpty());\n    expect([NSHashTable hashTableWithOptions:NSPointerFunctionsWeakMemory]).to(beEmpty());\n\n    expect(@[@1, @2]).toNot(beEmpty());\n    expect(@\"a\").toNot(beEmpty());\n    expect(@{@\"key\": @\"value\"}).toNot(beEmpty());\n    expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    expect(table).toNot(beEmpty());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be empty, got <foo>\", ^{\n        expect(@\"foo\").to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect(@[@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{key = value;}>\", ^{\n        expect(@{@\"key\": @\"value\"}).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).to(beEmpty());\n    });\n    NSHashTable *table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    NSString *tableString = [[table description] stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be empty, got <%@>\", tableString]), ^{\n        expect(table).to(beEmpty());\n    });\n\n    expectFailureMessage(@\"expected to not be empty, got <>\", ^{\n        expect(@\"\").toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <()>\", ^{\n        expect(@[]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{}>\", ^{\n        expect(@{}).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <{(1)}>\", ^{\n        expect([NSSet setWithObject:@1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <(1)>\", ^{\n        expect([NSIndexSet indexSetWithIndex:1]).toNot(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty, got <NSHashTable {}>\", ^{\n        expect([NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory]).toNot(beEmpty());\n    });\n}\n\n- (void)testItDoesNotMatchNil {\n    expectNilFailureMessage(@\"expected to be empty, got <nil>\", ^{\n        expect(nil).to(beEmpty());\n    });\n    expectNilFailureMessage(@\"expected to not be empty, got <nil>\", ^{\n        expect(nil).toNot(beEmpty());\n    });\n}\n\n- (void)testItReportsTypesItMatchesAgainst {\n    expectFailureMessage(@\"expected to be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).to(beEmpty());\n    });\n    expectFailureMessage(@\"expected to not be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings), got __NSCFNumber type\", ^{\n        expect(@1).toNot(beEmpty());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeFalseTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalseTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalseTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalse());\n    expect(@YES).toNot(beFalse());\n}\n\n- (void)testNegativeMatches {\n    expectNilFailureMessage(@\"expected to be false, got <nil>\", ^{\n        expect(nil).to(beFalse());\n    });\n    expectNilFailureMessage(@\"expected to not be false, got <nil>\", ^{\n        expect(nil).toNot(beFalse());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeFalsyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeFalsyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeFalsyTest\n\n- (void)testPositiveMatches {\n    expect(@NO).to(beFalsy());\n    expect(@YES).toNot(beFalsy());\n    expect(nil).to(beFalsy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to not be falsy, got <nil>\", ^{\n        expect(nil).toNot(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be falsy, got <1>\", ^{\n        expect(@1).to(beFalsy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThanOrEqualTo(@2));\n    expect(@2).toNot(beGreaterThanOrEqualTo(@3));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than or equal to <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThanOrEqualTo(@0));\n    });\n    expectFailureMessage(@\"expected to not be greater than or equal to <1>, got <2>\", ^{\n        expect(@2).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than or equal to <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThanOrEqualTo(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than or equal to <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThanOrEqualTo(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeGreaterThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeGreaterThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeGreaterThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beGreaterThan(@1));\n    expect(@2).toNot(beGreaterThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be greater than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beGreaterThan(@(0)));\n    });\n    expectFailureMessage(@\"expected to not be greater than <1>, got <0>\", ^{\n        expect(@0).toNot(beGreaterThan(@(1)));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be greater than <-1>, got <nil>\", ^{\n        expect(nil).to(beGreaterThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be greater than <1>, got <nil>\", ^{\n        expect(nil).toNot(beGreaterThan(@(1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeIdenticalToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeIdenticalToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeIdenticalToTest\n\n- (void)testPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(beIdenticalTo([NSNull null]));\n    expect(@2).toNot(beIdenticalTo(@3));\n}\n\n- (void)testNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(beIdenticalTo(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(beIdenticalTo(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(beIdenticalTo(obj));\n    });\n}\n\n- (void)testAliasPositiveMatches {\n    NSNull *obj = [NSNull null];\n    expect(obj).to(be([NSNull null]));\n    expect(@2).toNot(be(@3));\n}\n\n- (void)testAliasNegativeMatches {\n    NSNull *obj = [NSNull null];\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to be identical to <%p>, got <%p>\", obj, @2]), ^{\n        expect(@2).to(be(obj));\n    });\n    expectFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got <%p>\", obj, obj]), ^{\n        expect(obj).toNot(be(obj));\n    });\n}\n\n- (void)testAliasNilMatches {\n    NSNull *obj = [NSNull null];\n    expectNilFailureMessage(@\"expected to be identical to nil, got nil\", ^{\n        expect(nil).to(be(nil));\n    });\n    expectNilFailureMessage(([NSString stringWithFormat:@\"expected to not be identical to <%p>, got nil\", obj]), ^{\n        expect(nil).toNot(be(obj));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeKindOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeKindOfTest : XCTestCase\n\n@end\n\n@implementation ObjCBeKindOfTest\n\n- (void)testPositiveMatches {\n    NSMutableArray *array = [NSMutableArray array];\n    expect(array).to(beAKindOf([NSArray class]));\n    expect(@1).toNot(beAKindOf([NSNull class]));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be a kind of NSNull, got <__NSCFNumber instance>\", ^{\n        expect(@1).to(beAKindOf([NSNull class]));\n    });\n    expectFailureMessage(@\"expected to not be a kind of NSNull, got <NSNull instance>\", ^{\n        expect([NSNull null]).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be a kind of NSNull, got <nil>\", ^{\n        expect(nil).to(beAKindOf([NSNull class]));\n    });\n    expectNilFailureMessage(@\"expected to not be a kind of NSNull, got <nil>\", ^{\n        expect(nil).toNot(beAKindOf([NSNull class]));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeLessThanOrEqualToTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanOrEqualToTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanOrEqualToTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThanOrEqualTo(@2));\n    expect(@2).toNot(beLessThanOrEqualTo(@1));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than or equal to <1>, got <2>\", ^{\n        expect(@2).to(beLessThanOrEqualTo(@1));\n    });\n    expectFailureMessage(@\"expected to not be less than or equal to <1>, got <1>\", ^{\n        expect(@1).toNot(beLessThanOrEqualTo(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than or equal to <1>, got <nil>\", ^{\n        expect(nil).to(beLessThanOrEqualTo(@1));\n    });\n    expectNilFailureMessage(@\"expected to not be less than or equal to <-1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThanOrEqualTo(@(-1)));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeLessThanTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeLessThanTest : XCTestCase\n\n@end\n\n@implementation ObjCBeLessThanTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(beLessThan(@3));\n    expect(@2).toNot(beLessThan(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be less than <0>, got <-1>\", ^{\n        expect(@(-1)).to(beLessThan(@0));\n    });\n    expectFailureMessage(@\"expected to not be less than <1>, got <0>\", ^{\n        expect(@0).toNot(beLessThan(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to be less than <-1>, got <nil>\", ^{\n        expect(nil).to(beLessThan(@(-1)));\n    });\n    expectNilFailureMessage(@\"expected to not be less than <1>, got <nil>\", ^{\n        expect(nil).toNot(beLessThan(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeNilTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeNilTest : XCTestCase\n\n@end\n\n@implementation ObjCBeNilTest\n\n- (void)testPositiveMatches {\n    expect(nil).to(beNil());\n    expect(@NO).toNot(beNil());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be nil, got <1>\", ^{\n        expect(@1).to(beNil());\n    });\n    expectFailureMessage(@\"expected to not be nil, got <nil>\", ^{\n        expect(nil).toNot(beNil());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeTrueTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTrueTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTrueTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTrue());\n    expect(@NO).toNot(beTrue());\n    expect(nil).toNot(beTrue());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be true, got <0>\", ^{\n        expect(@NO).to(beTrue());\n    });\n    expectFailureMessage(@\"expected to be true, got <nil>\", ^{\n        expect(nil).to(beTrue());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeTruthyTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeTruthyTest : XCTestCase\n\n@end\n\n@implementation ObjCBeTruthyTest\n\n- (void)testPositiveMatches {\n    expect(@YES).to(beTruthy());\n    expect(@NO).toNot(beTruthy());\n    expect(nil).toNot(beTruthy());\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to be truthy, got <nil>\", ^{\n        expect(nil).to(beTruthy());\n    });\n    expectFailureMessage(@\"expected to not be truthy, got <1>\", ^{\n        expect(@1).toNot(beTruthy());\n    });\n    expectFailureMessage(@\"expected to be truthy, got <0>\", ^{\n        expect(@NO).to(beTruthy());\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCBeginWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCBeginWithTest : XCTestCase\n\n@end\n\n@implementation ObjCBeginWithTest\n\n- (void)testPositiveMatches {\n    expect(@\"hello world!\").to(beginWith(@\"hello\"));\n    expect(@\"hello world!\").toNot(beginWith(@\"world\"));\n\n    NSArray *array = @[@1, @2];\n    expect(array).to(beginWith(@1));\n    expect(array).toNot(beginWith(@2));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to begin with <bar>, got <foo>\", ^{\n        expect(@\"foo\").to(beginWith(@\"bar\"));\n    });\n    expectFailureMessage(@\"expected to not begin with <foo>, got <foo>\", ^{\n        expect(@\"foo\").toNot(beginWith(@\"foo\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to begin with <1>, got <nil>\", ^{\n        expect(nil).to(beginWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not begin with <1>, got <nil>\", ^{\n        expect(nil).toNot(beginWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCContainTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCContainTest : XCTestCase\n\n@end\n\n@implementation ObjCContainTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1));\n    expect(array).toNot(contain(@\"HI\"));\n    expect(@\"String\").to(contain(@\"Str\"));\n    expect(@\"Other\").toNot(contain(@\"Str\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to contain <3>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).to(contain(@3));\n    });\n    expectFailureMessage(@\"expected to not contain <2>, got <(1, 2)>\", ^{\n        expect((@[@1, @2])).toNot(contain(@2));\n    });\n\n    expectFailureMessage(@\"expected to contain <hi>, got <la>\", ^{\n        expect(@\"la\").to(contain(@\"hi\"));\n    });\n    expectFailureMessage(@\"expected to not contain <hi>, got <hihihi>\", ^{\n        expect(@\"hihihi\").toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to contain <3>, got <nil>\", ^{\n        expect(nil).to(contain(@3));\n    });\n    expectNilFailureMessage(@\"expected to not contain <3>, got <nil>\", ^{\n        expect(nil).toNot(contain(@3));\n    });\n\n    expectNilFailureMessage(@\"expected to contain <hi>, got <nil>\", ^{\n        expect(nil).to(contain(@\"hi\"));\n    });\n    expectNilFailureMessage(@\"expected to not contain <hi>, got <nil>\", ^{\n        expect(nil).toNot(contain(@\"hi\"));\n    });\n}\n\n- (void)testVariadicArguments {\n    NSArray *array = @[@1, @2];\n    expect(array).to(contain(@1, @2));\n    expect(array).toNot(contain(@\"HI\", @\"whale\"));\n    expect(@\"String\").to(contain(@\"Str\", @\"ng\"));\n    expect(@\"Other\").toNot(contain(@\"Str\", @\"Oth\"));\n\n\n    expectFailureMessage(@\"expected to contain <Optional(a), Optional(bar)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).to(contain(@\"a\", @\"bar\"));\n    });\n\n    expectFailureMessage(@\"expected to not contain <Optional(bar), Optional(b)>, got <(a, b, c)>\", ^{\n        expect(@[@\"a\", @\"b\", @\"c\"]).toNot(contain(@\"bar\", @\"b\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCEndWithTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEndWithTest : XCTestCase\n\n@end\n\n@implementation ObjCEndWithTest\n\n- (void)testPositiveMatches {\n    NSArray *array = @[@1, @2];\n    expect(@\"hello world!\").to(endWith(@\"world!\"));\n    expect(@\"hello world!\").toNot(endWith(@\"hello\"));\n    expect(array).to(endWith(@2));\n    expect(array).toNot(endWith(@1));\n    expect(@1).toNot(contain(@\"foo\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to end with <?>, got <hello world!>\", ^{\n        expect(@\"hello world!\").to(endWith(@\"?\"));\n    });\n    expectFailureMessage(@\"expected to not end with <!>, got <hello world!>\", ^{\n        expect(@\"hello world!\").toNot(endWith(@\"!\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to end with <1>, got <nil>\", ^{\n        expect(nil).to(endWith(@1));\n    });\n    expectNilFailureMessage(@\"expected to not end with <1>, got <nil>\", ^{\n        expect(nil).toNot(endWith(@1));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCEqualTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCEqualTest : XCTestCase\n\n@end\n\n@implementation ObjCEqualTest\n\n- (void)testPositiveMatches {\n    expect(@1).to(equal(@1));\n    expect(@1).toNot(equal(@2));\n    expect(@1).notTo(equal(@2));\n    expect(@\"hello\").to(equal(@\"hello\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to equal <2>, got <1>\", ^{\n        expect(@1).to(equal(@2));\n    });\n    expectFailureMessage(@\"expected to not equal <1>, got <1>\", ^{\n        expect(@1).toNot(equal(@1));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to equal <nil>, got <nil>\", ^{\n        expect(nil).to(equal(nil));\n    });\n    expectNilFailureMessage(@\"expected to not equal <nil>, got <nil>\", ^{\n        expect(nil).toNot(equal(nil));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCHaveCount.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCHaveCountTest : XCTestCase\n\n@end\n\n@implementation ObjCHaveCountTest\n\n- (void)testHaveCountForNSArray {\n    expect(@[@1, @2, @3]).to(haveCount(@3));\n    expect(@[@1, @2, @3]).notTo(haveCount(@1));\n\n    expect(@[]).to(haveCount(@0));\n    expect(@[@1]).notTo(haveCount(@0));\n\n    expectFailureMessage(@\"expected to have NSArray with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSArray with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(@[@1, @2, @3]).notTo(haveCount(@3));\n    });\n\n}\n\n- (void)testHaveCountForNSDictionary {\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@3));\n    expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSDictionary with count 1, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSDictionary with count 3, got 3\\nActual Value: {1 = 1;2 = 2;3 = 3;}\", ^{\n        expect(@{@\"1\":@1, @\"2\":@2, @\"3\":@3}).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSHashtable {\n    NSHashTable *const table = [NSHashTable hashTableWithOptions:NSPointerFunctionsStrongMemory];\n    [table addObject:@1];\n    [table addObject:@2];\n    [table addObject:@3];\n\n    expect(table).to(haveCount(@3));\n    expect(table).notTo(haveCount(@1));\n\n    NSString *msg = [NSString stringWithFormat:\n                     @\"expected to have NSHashTable with count 1, got 3\\nActual Value: %@\",\n                     [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).to(haveCount(@1));\n    });\n\n\n    msg = [NSString stringWithFormat:\n           @\"expected to not have NSHashTable with count 3, got 3\\nActual Value: %@\",\n           [table.description stringByReplacingOccurrencesOfString:@\"\\n\" withString:@\"\"]];\n    expectFailureMessage(msg, ^{\n        expect(table).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSSet {\n    NSSet *const set = [NSSet setWithArray:@[@1, @2, @3]];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSSet with count 1, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSSet with count 3, got 3\\nActual Value: {(3,1,2)}\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForNSIndexSet {\n    NSIndexSet *const set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n\n    expect(set).to(haveCount(@3));\n    expect(set).notTo(haveCount(@1));\n\n    expectFailureMessage(@\"expected to have NSIndexSet with count 1, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).to(haveCount(@1));\n    });\n\n    expectFailureMessage(@\"expected to not have NSIndexSet with count 3, got 3\\nActual Value: (1, 2, 3)\", ^{\n        expect(set).notTo(haveCount(@3));\n    });\n}\n\n- (void)testHaveCountForUnsupportedTypes {\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFConstantString\", ^{\n        expect(@\"string\").to(haveCount(@6));\n    });\n\n    expectFailureMessage(@\"expected to get type of NSArray, NSSet, NSDictionary, or NSHashTable, got __NSCFNumber\", ^{\n        expect(@1).to(haveCount(@6));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCMatchTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCMatchTest : XCTestCase\n\n@end\n\n@implementation ObjCMatchTest\n\n- (void)testPositiveMatches {\n    expect(@\"11:14\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    expect(@\"hello\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <hello>\", ^{\n        expect(@\"hello\").to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <11:22>\", ^{\n        expect(@\"11:22\").toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n- (void)testNilMatches {\n    expectNilFailureMessage(@\"expected to match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).to(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n    expectNilFailureMessage(@\"expected to not match <\\\\d{2}:\\\\d{2}>, got <nil>\", ^{\n        expect(nil).toNot(match(@\"\\\\d{2}:\\\\d{2}\"));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCRaiseExceptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCRaiseExceptionTest : XCTestCase\n\n@end\n\n@implementation ObjCRaiseExceptionTest\n\n- (void)testPositiveMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ @throw exception; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException());\n    expectAction(^{ [exception raise]; }).to(raiseException().named(NSInvalidArgumentException));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\"));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}));\n\n    expectAction(^{ }).toNot(raiseException());\n}\n\n- (void)testPositiveMatchesWithBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n    expectAction(^{ [exception raise]; }).to(raiseException().\n                                             named(NSInvalidArgumentException).\n                                             reason(@\"No food\").\n                                             userInfo(@{@\"key\": @\"value\"}).\n                                             satisfyingBlock(^(NSException *exception) {\n        expect(exception.name).to(equal(NSInvalidArgumentException));\n    }));\n}\n\n- (void)testNegativeMatches {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n\n    expectFailureMessage(@\"expected to raise any exception, got no exception\", ^{\n        expectAction(^{ }).to(raiseException());\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <foo>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(@\"foo\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <cakes>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"cakes\"));\n    });\n\n    expectFailureMessage(@\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{k = v;}>, got no exception\", ^{\n        expectAction(^{ }).to(raiseException().\n                              named(NSInvalidArgumentException).\n                              reason(@\"No food\").\n                              userInfo(@{@\"k\": @\"v\"}));\n    });\n\n    expectFailureMessage(@\"expected to not raise any exception, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\", ^{\n        expectAction(^{ [exception raise]; }).toNot(raiseException());\n    });\n}\n\n- (void)testNegativeMatchesWithPassingBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    expectFailureMessage(@\"expected to raise exception that satisfies block, got no exception\", ^{\n        expect(exception).to(raiseException().\n                             satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"LOL\"));\n        }));\n    });\n\n    NSString *outerFailureMessage = @\"expected to raise exception that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <foo> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(@\"foo\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <bar> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"bar\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(NSInvalidArgumentException));\n        }));\n    });\n}\n\n- (void)testNegativeMatchesWithNegativeBlocks {\n    __block NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException\n                                                             reason:@\"No food\"\n                                                           userInfo:@{@\"key\": @\"value\"}];\n    NSString *outerFailureMessage;\n\n    NSString const *innerFailureMessage = @\"expected to equal <foo>, got <NSInvalidArgumentException>\";\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n\n\n    outerFailureMessage = @\"expected to raise exception with name <NSInvalidArgumentException> with reason <No food> with userInfo <{key = value;}> that satisfies block, got NSException { name=NSInvalidArgumentException, reason='No food', userInfo=[key: value] }\";\n    expectFailureMessages((@[outerFailureMessage, innerFailureMessage]), ^{\n        expectAction(^{ [exception raise]; }).to(raiseException().\n                                                 named(NSInvalidArgumentException).\n                                                 reason(@\"No food\").\n                                                 userInfo(@{@\"key\": @\"value\"}).\n                                                 satisfyingBlock(^(NSException *exception) {\n            expect(exception.name).to(equal(@\"foo\"));\n        }));\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCSatisfyAnyOfTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSatisfyAnyOfTest : XCTestCase\n\n@end\n\n@implementation ObjCSatisfyAnyOfTest\n\n- (void)testPositiveMatches {\n    expect(@2).to(satisfyAnyOf(equal(@2), equal(@3)));\n    expect(@2).toNot(satisfyAnyOf(equal(@3), equal(@16)));\n    expect(@[@1, @2, @3]).to(satisfyAnyOf(equal(@[@1, @2, @3]), allPass(beLessThan(@4))));\n    expect(@NO).to(satisfyAnyOf(beTrue(), beFalse()));\n    expect(@YES).to(satisfyAnyOf(beTrue(), beFalse()));\n}\n\n- (void)testNegativeMatches {\n    expectFailureMessage(@\"expected to match one of: {equal <3>}, or {equal <4>}, or {equal <5>}, got 2\", ^{\n        expect(@2).to(satisfyAnyOf(equal(@3), equal(@4), equal(@5)));\n    });\n    \n    expectFailureMessage(@\"expected to match one of: {all be less than <4>, but failed first at element\"\n                         \" <5> in <[5, 6, 7]>}, or {equal <(1, 2, 3, 4)>}, got (5,6,7)\", ^{\n                             expect(@[@5, @6, @7]).to(satisfyAnyOf(allPass(beLessThan(@4)), equal(@[@1, @2, @3, @4])));\n                         });\n    \n    expectFailureMessage(@\"satisfyAnyOf must be called with at least one matcher\", ^{\n        expect(@\"turtles\").to(satisfyAnyOf());\n    });\n}\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCSyncTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Nimble/Nimble.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCSyncTest : XCTestCase\n\n@end\n\n@implementation ObjCSyncTest\n\n- (void)testFailureExpectation {\n    expectFailureMessage(@\"fail() always fails\", ^{\n        fail();\n    });\n\n    expectFailureMessage(@\"This always fails\", ^{\n        failWithMessage(@\"This always fails\");\n    });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjCUserDescriptionTest.m",
    "content": "#import <XCTest/XCTest.h>\n#import \"NimbleSpecHelper.h\"\n\n@interface ObjCUserDescriptionTest : XCTestCase\n\n@end\n\n@implementation ObjCUserDescriptionTest\n\n- (void)testToWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to equal <2>, got <1>\", ^{\n                             expect(@1).toWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).toNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testNotToWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to not equal <1>, got <1>\", ^{\n                             expect(@1).notToWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToEventuallyWithDescription {\n    expectFailureMessage(@\"These are equal!\\n\"\n                         \"expected to eventually equal <2>, got <1>\", ^{\n                             expect(@1).toEventuallyWithDescription(equal(@2), @\"These are equal!\");\n                         });\n}\n\n- (void)testToEventuallyNotWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toEventuallyNotWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n- (void)testToNotEventuallyWithDescription {\n    expectFailureMessage(@\"These aren't equal!\\n\"\n                         \"expected to eventually not equal <1>, got <1>\", ^{\n                             expect(@1).toNotEventuallyWithDescription(equal(@1), @\"These aren't equal!\");\n                         });\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/Tests/Nimble/objc/ObjcStringersTest.m",
    "content": "@import XCTest;\n@import Nimble;\n\n@interface ObjcStringersTest : XCTestCase\n\n@end\n\n@implementation ObjcStringersTest\n\n- (void)testItCanStringifyArrays {\n    NSArray *array = @[@1, @2, @3];\n    NSString *result = NMBStringify(array);\n    \n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItCanStringifyIndexSets {\n    NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)];\n    NSString *result = NMBStringify(indexSet);\n\n    expect(result).to(equal(@\"(1, 2, 3)\"));\n}\n\n- (void)testItRoundsLongDecimals {\n    NSNumber *num = @291.123782163;\n    NSString *result = NMBStringify(num);\n    \n    expect(result).to(equal(@\"291.1238\"));\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ndependencies:\n  pre:\n    - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n\ntest:\n  override:\n    - NIMBLE_RUNTIME_IOS_SDK_VERSION=9.0 ./test ios\n    - NIMBLE_RUNTIME_OSX_SDK_VERSION=10.10 ./test osx\n    - eval \"$(swiftenv init -)\"; ./test swiftpm:\n        environment:\n          SWIFTENV_ROOT: $HOME/.swiftenv\n          PATH: $SWIFTENV_ROOT/bin:$PATH\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Nimble\nPODSPEC=Nimble.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"---------------- Released as $VERSION_TAG ----------------\"\necho \n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for GitHub styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Nimble/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Externals/Nimble/test",
    "content": "#!/bin/bash\n\nGREEN=\"\\033[0;32m\"\nCLEAR=\"\\033[0m\"\n\nif which xcodebuild > /dev/null; then\n    echo -e \"Gathering ${GREEN}xcodebuild sdk versions${CLEAR}...\"\n    BUILD_DIR=`pwd`/build\n    LATEST_IOS_SDK_VERSION=`xcodebuild -showsdks | grep iphonesimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_TVOS_SDK_VERSION=`xcodebuild -showsdks | grep appletvsimulator | cut -d ' ' -f 4 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    LATEST_OSX_SDK_VERSION=`xcodebuild -showsdks | grep 'macosx' | cut -d ' ' -f 3 | ruby -e 'puts STDIN.read.chomp.split(\"\\n\").last'`\n    BUILD_IOS_SDK_VERSION=${NIMBLE_BUILD_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    RUNTIME_IOS_SDK_VERSION=${NIMBLE_RUNTIME_IOS_SDK_VERSION:-$LATEST_IOS_SDK_VERSION}\n    BUILD_TVOS_SDK_VERSION=${NIMBLE_BUILD_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    RUNTIME_TVOS_SDK_VERSION=${NIMBLE_RUNTIME_TVOS_SDK_VERSION:-$LATEST_TVOS_SDK_VERSION}\n    BUILD_OSX_SDK_VERSION=${NIMBLE_BUILD_OSX_SDK_VERSION:-$LATEST_OSX_SDK_VERSION}\nfi\n\nset -e\n\nfunction color_if_overridden {\n    local actual=$1\n    local env_var=$2\n    if [ -z \"$env_var\" ]; then\n        printf \"$actual\"\n    else\n        printf \"$GREEN$actual$CLEAR\"\n    fi\n}\n\nfunction print_env {\n    echo \"=== Environment ===\"\n    echo \" iOS:\"\n    echo \"   Latest iOS SDK: $LATEST_IOS_SDK_VERSION\"\n    echo \"   Building with iOS SDK: `color_if_overridden $BUILD_IOS_SDK_VERSION $NIMBLE_BUILD_IOS_SDK_VERSION`\"\n    echo \"   Running with iOS SDK: `color_if_overridden $RUNTIME_IOS_SDK_VERSION $NIMBLE_RUNTIME_IOS_SDK_VERSION`\"\n    echo\n    echo \" tvOS:\"\n    echo \"   Latest tvOS SDK: $LATEST_TVOS_SDK_VERSION\"\n    echo \"   Building with tvOS SDK: `color_if_overridden $BUILD_TVOS_SDK_VERSION $NIMBLE_BUILD_TVOS_SDK_VERSION`\"\n    echo \"   Running with tvOS SDK: `color_if_overridden $RUNTIME_TVOS_SDK_VERSION $NIMBLE_RUNTIME_TVOS_SDK_VERSION`\"\n    echo\n    echo \" Mac OS X:\"\n    echo \"   Latest OS X SDK: $LATEST_OSX_SDK_VERSION\"\n    echo \"   Building with OS X SDK: `color_if_overridden $BUILD_OSX_SDK_VERSION $NIMBLE_BUILD_OSX_SDK_VERSION`\"\n    echo\n    echo \"======= END =======\"\n    echo\n}\n\nfunction run {\n    echo -e \"$GREEN==>$CLEAR $@\"\n    \"$@\"\n}\n\nfunction test_ios {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPad Air,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-iOS\" -configuration \"Debug\" -sdk \"iphonesimulator$BUILD_IOS_SDK_VERSION\" -destination \"name=iPhone 5s,OS=$RUNTIME_IOS_SDK_VERSION\" build test\n}\n\nfunction test_tvos {\n    run osascript -e 'tell app \"Simulator\" to quit'\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-tvOS\" -configuration \"Debug\" -sdk \"appletvsimulator$BUILD_TVOS_SDK_VERSION\" -destination \"name=Apple TV 1080p,OS=$RUNTIME_TVOS_SDK_VERSION\" build test\n}\n\nfunction test_osx {\n    run xcodebuild -project Nimble.xcodeproj -scheme \"Nimble-OSX\" -configuration \"Debug\" -sdk \"macosx$BUILD_OSX_SDK_VERSION\" build test\n}\n\nfunction test_podspec {\n    echo \"Gathering CocoaPods installation information...\"\n    run bundle exec pod --version\n    echo \"Linting podspec...\"\n    run bundle exec pod lib lint Nimble.podspec\n}\n\nfunction test_swiftpm {\n    run swift build --clean && swift build && swift test\n}\n\nfunction test() {\n    test_ios\n    test_tvos\n    test_osx\n\n    if which swift-test; then\n        test_swiftpm\n    else\n        echo \"Not testing with the Swift Package Manager because swift-test is not installed\"\n    fi\n}\n\nfunction clean {\n    run rm -rf ~/Library/Developer/Xcode/DerivedData\\; true\n}\n\nfunction help {\n    echo \"Usage: $0 COMMANDS\"\n    echo\n    echo \"COMMANDS:\"\n    echo \" clean        - Cleans the derived data directory of Xcode. Assumes default location\"\n    echo \" ios          - Runs the tests as an iOS device\"\n    echo \" tvos         - Runs the tests as an tvOS device\"\n    echo \" osx          - Runs the tests on Mac OS X 10.10 (Yosemite and newer only)\"\n    echo \" podspec      - Runs pod lib lint against the podspec to detect breaking changes\"\n    echo \" all          - Runs the all tests of ios, tvos and osx\"\n    echo \" swiftpm      - Runs the tests built by the Swift Package Manager\"\n    echo \" help         - Displays this help\"\n    echo\n    exit 1\n}\n\nfunction main {\n    print_env\n    for arg in $@\n    do\n        case \"$arg\" in\n            clean) clean ;;\n            ios) test_ios ;;\n            tvos) test_tvos ;;\n            osx) test_osx ;;\n            podspec) test_podspec ;;\n            test) test ;;\n            all) test ;;\n            swiftpm) test_swiftpm ;;\n            help) help ;;\n        esac\n    done\n\n    if [ $# -eq 0 ]; then\n        clean\n        test\n    fi\n}\n\nmain $@\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Gemfile",
    "content": "source \"https://rubygems.org\"\n\ngem 'cocoapods', '1.0'\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/LICENSE",
    "content": "Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2014, Quick Team\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Quick\",\n    targets: [\n        Target(name: \"QuickTests\", dependencies: [.Target(name: \"Quick\"), .Target(name: \"QuickTestHelpers\")]),\n        Target(name: \"QuickFocusedTests\", dependencies: [.Target(name: \"Quick\"), .Target(name: \"QuickTestHelpers\")]),\n        Target(name: \"QuickTestHelpers\", dependencies: [.Target(name: \"Quick\")]),\n    ],\n    // TODO: Once the `test` command has been implemented in the Swift Package Manager, this should be changed to\n    // be `testDependencies:` instead. For now it has to be done like this for the library to get linked with the test targets.\n    // See: https://github.com/apple/swift-evolution/blob/master/proposals/0019-package-manager-testing.md\n    dependencies: [ \n        .Package(url: \"https://github.com/briancroom/Nimble\", majorVersion: 3)\n    ]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Objective-C/___FILEBASENAME___.h",
    "content": "@import Quick;\n\n@interface ___FILEBASENAMEASIDENTIFIER___ : QuickConfiguration\n\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Objective-C/___FILEBASENAME___.m",
    "content": "#import \"___FILEBASENAMEASIDENTIFIER___.h\"\n\n@implementation ___FILEBASENAMEASIDENTIFIER___\n\n+ (void)configure:(Configuration *)configuration {\n\n}\n\n@end\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/Swift/___FILEBASENAME___.swift",
    "content": "import Quick\n\nclass ___FILEBASENAMEASIDENTIFIER___: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n\n    }\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Configuration Class.xctemplate/TemplateInfo.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>Kind</key>\n\t<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>\n\t<key>Description</key>\n\t<string>A QuickConfiguration subclass.</string>\n\t<key>Summary</key>\n  <string>A QuickConfiguration subclass, overload +configure: to configure the behaviour when running specs, shared examples that are used across spec files.</string>\n\t<key>SortOrder</key>\n\t<integer>1</integer>\n\t<key>BuildableType</key>\n\t<string>Test</string>\n\t<key>DefaultCompletionName</key>\n\t<string>Spec</string>\n\t<key>Options</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>Description</key>\n\t\t\t<string>Name of the Quick Configuration</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>productName</string>\n\t\t\t<key>Name</key>\n\t\t\t<string>QuickConfiguration Name:</string>\n\t\t\t<key>NotPersisted</key>\n\t\t\t<true/>\n\t\t\t<key>Required</key>\n\t\t\t<true/>\n\t\t\t<key>Type</key>\n\t\t\t<string>text</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>AllowedTypes</key>\n\t\t\t<dict>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.swift-source</string>\n\t\t\t\t</array>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.objective-c-source</string>\n\t\t\t\t\t<string>public.objective-c-plus-plus-source</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t\t<key>Default</key>\n\t\t\t<string>Swift</string>\n\t\t\t<key>Description</key>\n\t\t\t<string>The implementation language</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>languageChoice</string>\n\t\t\t<key>MainTemplateFiles</key>\n\t\t\t<dict>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<string>___FILEBASENAME___.m</string>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<string>___FILEBASENAME___.swift</string>\n\t\t\t</dict>\n\t\t\t<key>Name</key>\n\t\t\t<string>Language:</string>\n\t\t\t<key>Required</key>\n\t\t\t<string>Yes</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>popup</string>\n\t\t\t<key>Values</key>\n\t\t\t<array>\n\t\t\t\t<string>Swift</string>\n\t\t\t\t<string>Objective-C</string>\n\t\t\t</array>\n\t\t</dict>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/Objective-C/___FILEBASENAME___.m",
    "content": "#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\nQuickSpecBegin(___FILEBASENAMEASIDENTIFIER___)\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/Swift/___FILEBASENAME___.swift",
    "content": "import Quick\nimport Nimble\n\nclass ___FILEBASENAMEASIDENTIFIER___: QuickSpec {\n    override func spec() {\n\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick Templates/Quick Spec Class.xctemplate/TemplateInfo.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>Kind</key>\n\t<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>\n\t<key>Description</key>\n\t<string>A class implementing a Quick spec.</string>\n\t<key>Summary</key>\n\t<string>A class implementing a Quick spec</string>\n\t<key>SortOrder</key>\n\t<integer>1</integer>\n\t<key>BuildableType</key>\n\t<string>Test</string>\n\t<key>DefaultCompletionName</key>\n\t<string>Spec</string>\n\t<key>Options</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>Description</key>\n\t\t\t<string>Name of the Quick spec class</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>productName</string>\n\t\t\t<key>Name</key>\n\t\t\t<string>Spec Name:</string>\n\t\t\t<key>NotPersisted</key>\n\t\t\t<true/>\n\t\t\t<key>Required</key>\n\t\t\t<true/>\n\t\t\t<key>Type</key>\n\t\t\t<string>text</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>AllowedTypes</key>\n\t\t\t<dict>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.swift-source</string>\n\t\t\t\t</array>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>public.objective-c-source</string>\n\t\t\t\t\t<string>public.objective-c-plus-plus-source</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t\t<key>Default</key>\n\t\t\t<string>Swift</string>\n\t\t\t<key>Description</key>\n\t\t\t<string>The implementation language</string>\n\t\t\t<key>Identifier</key>\n\t\t\t<string>languageChoice</string>\n\t\t\t<key>MainTemplateFiles</key>\n\t\t\t<dict>\n\t\t\t\t<key>Objective-C</key>\n\t\t\t\t<string>___FILEBASENAME___.m</string>\n\t\t\t\t<key>Swift</key>\n\t\t\t\t<string>___FILEBASENAME___.swift</string>\n\t\t\t</dict>\n\t\t\t<key>Name</key>\n\t\t\t<string>Language:</string>\n\t\t\t<key>Required</key>\n\t\t\t<string>Yes</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>popup</string>\n\t\t\t<key>Values</key>\n\t\t\t<array>\n\t\t\t\t<string>Swift</string>\n\t\t\t\t<string>Objective-C</string>\n\t\t\t</array>\n\t\t</dict>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = \"Quick\"\n  s.version      = \"0.9.2\"\n  s.summary      = \"The Swift (and Objective-C) testing framework.\"\n\n  s.description  = <<-DESC\n                   Quick is a behavior-driven development framework for Swift and Objective-C. Inspired by RSpec, Specta, and Ginkgo.\n                   DESC\n\n  s.homepage     = \"https://github.com/Quick/Quick\"\n  s.license      = { :type => \"Apache 2.0\", :file => \"LICENSE\" }\n\n  s.author       = \"Quick Contributors\"\n  s.ios.deployment_target = \"7.0\"\n  s.osx.deployment_target = \"10.9\"\n  s.tvos.deployment_target = '9.0'\n\n  s.source       = { :git => \"https://github.com/Quick/Quick.git\", :tag => \"v#{s.version}\" }\n  s.source_files = \"Sources/Quick/**/*.{swift,h,m}\"\n\n  s.public_header_files = [\n    'Sources/Quick/Configuration/QuickConfiguration.h',\n    'Sources/Quick/DSL/QCKDSL.h',\n    'Sources/Quick/Quick.h',\n    'Sources/Quick/QuickSpec.h',\n  ]\n\n  s.exclude_files = [\n    'Sources/Quick/Configuration/QuickConfiguration.swift',\n    'Sources/Quick/QuickSpec.swift',\n    'Sources/Quick/QuickMain.swift',\n  ]\n\n  s.framework = \"XCTest\"\n  s.requires_arc = true\n  s.user_target_xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '$(PLATFORM_DIR)/Developer/Library/Frameworks' }\n  s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO' }\nend\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1F118CDF1BDCA4AB005013A2 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118CD51BDCA4AB005013A2 /* Quick.framework */; };\n\t\t1F118CF51BDCA4BB005013A2 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118CD51BDCA4AB005013A2 /* Quick.framework */; };\n\t\t1F118CFB1BDCA536005013A2 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\t1F118CFC1BDCA536005013A2 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\t1F118CFD1BDCA536005013A2 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\t1F118CFE1BDCA536005013A2 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\t1F118CFF1BDCA536005013A2 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\t1F118D001BDCA536005013A2 /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\t1F118D011BDCA536005013A2 /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\t1F118D021BDCA536005013A2 /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\t1F118D031BDCA536005013A2 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t1F118D041BDCA536005013A2 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t1F118D051BDCA536005013A2 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\t1F118D061BDCA536005013A2 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t1F118D071BDCA536005013A2 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t1F118D081BDCA536005013A2 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\t1F118D091BDCA536005013A2 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t1F118D0A1BDCA536005013A2 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t1F118D0C1BDCA543005013A2 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\t1F118D0D1BDCA547005013A2 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\t1F118D0E1BDCA547005013A2 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\t1F118D0F1BDCA54B005013A2 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\t1F118D101BDCA556005013A2 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\t1F118D111BDCA556005013A2 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\t1F118D121BDCA556005013A2 /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\t1F118D131BDCA556005013A2 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t1F118D141BDCA556005013A2 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\t1F118D151BDCA556005013A2 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\t1F118D161BDCA556005013A2 /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\t1F118D171BDCA556005013A2 /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t1F118D181BDCA556005013A2 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\t1F118D191BDCA556005013A2 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t1F118D1A1BDCA556005013A2 /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\t1F118D1B1BDCA556005013A2 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t1F118D1C1BDCA556005013A2 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\t1F118D1D1BDCA556005013A2 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t1F118D1E1BDCA556005013A2 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\t1F118D1F1BDCA556005013A2 /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t1F118D201BDCA556005013A2 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\t1F118D211BDCA556005013A2 /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t1F118D221BDCA556005013A2 /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\t1F118D231BDCA556005013A2 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t1F118D241BDCA561005013A2 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\t1F118D251BDCA561005013A2 /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n\t\t1F118D261BDCA5AF005013A2 /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\t1F118D271BDCA5AF005013A2 /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\t1F118D281BDCA5AF005013A2 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t1F118D291BDCA5B6005013A2 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2A1BDCA5B6005013A2 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2B1BDCA5B6005013A2 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D2C1BDCA5B6005013A2 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t1F118D351BDCA657005013A2 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118D341BDCA657005013A2 /* Nimble.framework */; };\n\t\t1F118D371BDCA65C005013A2 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F118D361BDCA65C005013A2 /* Nimble.framework */; };\n\t\t1F118D381BDCA6E1005013A2 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\t1F118D391BDCA6E6005013A2 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\t1FD0CFAD1AFA0B8C00874CC1 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\t34C586011C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586021C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586031C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586041C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586051C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586061C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */; };\n\t\t34C586081C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34C586091C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34C5860A1C4AC5E500D4F057 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C586071C4AC5E500D4F057 /* ErrorUtility.swift */; };\n\t\t34F375A719515CA700CE1B99 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t34F375A819515CA700CE1B99 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759C19515CA700CE1B99 /* Callsite.swift */; };\n\t\t34F375AB19515CA700CE1B99 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t34F375AC19515CA700CE1B99 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759E19515CA700CE1B99 /* Example.swift */; };\n\t\t34F375AD19515CA700CE1B99 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t34F375AE19515CA700CE1B99 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F3759F19515CA700CE1B99 /* ExampleGroup.swift */; };\n\t\t34F375AF19515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t34F375B019515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */; };\n\t\t34F375B119515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t34F375B219515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */; };\n\t\t34F375B719515CA700CE1B99 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t34F375B819515CA700CE1B99 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F375A419515CA700CE1B99 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t34F375B919515CA700CE1B99 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t34F375BA19515CA700CE1B99 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A519515CA700CE1B99 /* QuickSpec.m */; };\n\t\t34F375BB19515CA700CE1B99 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t34F375BC19515CA700CE1B99 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F375A619515CA700CE1B99 /* World.swift */; };\n\t\t470D6ECB1A43442400043E50 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t470D6ECC1A43442900043E50 /* AfterEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */; };\n\t\t471590401A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t471590411A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */; };\n\t\t4728253B1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t4728253C1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */; };\n\t\t4748E8941A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t4748E8951A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */; };\n\t\t4772173A1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t4772173B1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */; };\n\t\t47876F7D1A49AD63002575C7 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t47876F7E1A49AD71002575C7 /* BeforeSuiteTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */; };\n\t\t479C31E31A36171B00DA8718 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t479C31E41A36172700DA8718 /* ItTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 479C31E11A36156E00DA8718 /* ItTests+ObjC.m */; };\n\t\t47FAEA361A3F49E6005A1D2F /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t47FAEA371A3F49EB005A1D2F /* BeforeEachTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = 47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */; };\n\t\t5A5D118719473F2100F6D13D /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A5D117C19473F2100F6D13D /* Quick.framework */; };\n\t\t5A5D11A7194740E000F6D13D /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7B44ADBE1C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B44ADBF1C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B44ADC01C5444940007AF2E /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B44ADBD1C5444940007AF2E /* HooksPhase.swift */; };\n\t\t7B5358CE1C3D4FBC00A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t7B5358CF1C3D4FBE00A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t7B5358D01C3D4FC000A23FAA /* ContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */; };\n\t\t8D010A571C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t8D010A581C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t8D010A591C11726F00633E2B /* DescribeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D010A561C11726F00633E2B /* DescribeTests.swift */; };\n\t\t96327C631C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C641C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C651C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */ = {isa = PBXBuildFile; fileRef = 96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */; };\n\t\t96327C661C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\t96327C671C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\t96327C681C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */ = {isa = PBXBuildFile; fileRef = 96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */; };\n\t\tAE4E58131C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58141C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58151C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58161C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58171C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAE4E58181C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */ = {isa = PBXBuildFile; fileRef = AEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */; };\n\t\tAED9C8631CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tAED9C8641CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tAED9C8651CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */; };\n\t\tCE57CEDD1C430BD200D63004 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE57CEDE1C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE57CEDF1C430BD200D63004 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE57CEE01C430BD200D63004 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE57CEE11C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tCE590E1A1C431FE300253D19 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE590E1B1C431FE300253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE590E1C1C431FE300253D19 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE590E1D1C431FE300253D19 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE590E1E1C431FE300253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tCE590E1F1C431FE400253D19 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */; };\n\t\tCE590E201C431FE400253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */; };\n\t\tCE590E211C431FE400253D19 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */; };\n\t\tCE590E221C431FE400253D19 /* String+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDB1C430BD200D63004 /* String+FileName.swift */; };\n\t\tCE590E231C431FE400253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */; };\n\t\tDA02C91919A8073100093156 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\tDA02C91A19A8073100093156 /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA02C91819A8073100093156 /* ExampleMetadata.swift */; };\n\t\tDA05D61019F73A3800771050 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\tDA05D61119F73A3800771050 /* AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA05D60F19F73A3800771050 /* AfterEachTests.swift */; };\n\t\tDA07722E1A4E5B7B0098839D /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA07722F1A4E5B7C0098839D /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA169E4819FF5DF100619816 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\tDA169E4919FF5DF100619816 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA169E4719FF5DF100619816 /* Configuration.swift */; };\n\t\tDA3124E619FCAEE8002858A7 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\tDA3124E719FCAEE8002858A7 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E219FCAEE8002858A7 /* DSL.swift */; };\n\t\tDA3124E819FCAEE8002858A7 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDA3124E919FCAEE8002858A7 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DA3124E319FCAEE8002858A7 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDA3124EA19FCAEE8002858A7 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\tDA3124EB19FCAEE8002858A7 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E419FCAEE8002858A7 /* QCKDSL.m */; };\n\t\tDA3124EC19FCAEE8002858A7 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\tDA3124ED19FCAEE8002858A7 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3124E519FCAEE8002858A7 /* World+DSL.swift */; };\n\t\tDA3E7A341A1E66C600CCE408 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDA3E7A351A1E66CB00CCE408 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDA408BE219FF5599005DF92A /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\tDA408BE319FF5599005DF92A /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BDF19FF5599005DF92A /* Closures.swift */; };\n\t\tDA408BE419FF5599005DF92A /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\tDA408BE519FF5599005DF92A /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE019FF5599005DF92A /* ExampleHooks.swift */; };\n\t\tDA408BE619FF5599005DF92A /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\tDA408BE719FF5599005DF92A /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA408BE119FF5599005DF92A /* SuiteHooks.swift */; };\n\t\tDA5663EE1A4C8D8500193C88 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAEB6B8E1943873100289F44 /* Quick.framework */; };\n\t\tDA5663F41A4C8D9A00193C88 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\tDA6B30181A4DB0D500FFB148 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\tDA6B30191A4DB0D500FFB148 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6B30171A4DB0D500FFB148 /* Filter.swift */; };\n\t\tDA7AE6F119FC493F000AFDCE /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\tDA7AE6F219FC493F000AFDCE /* ItTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA7AE6F019FC493F000AFDCE /* ItTests.swift */; };\n\t\tDA8940F01B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\tDA8940F11B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */; };\n\t\tDA8C00211A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\tDA8C00221A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */; };\n\t\tDA8F919919F31680006F6675 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA8F919A19F31680006F6675 /* QCKSpecRunner.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919619F31680006F6675 /* QCKSpecRunner.m */; };\n\t\tDA8F919D19F31921006F6675 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\tDA8F919E19F31921006F6675 /* FailureTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DA8F919C19F31921006F6675 /* FailureTests+ObjC.m */; };\n\t\tDA8F91A519F3208B006F6675 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\tDA8F91A619F3208B006F6675 /* BeforeSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */; };\n\t\tDA8F91A819F32556006F6675 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\tDA8F91A919F32556006F6675 /* AfterSuiteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91A719F32556006F6675 /* AfterSuiteTests.swift */; };\n\t\tDA8F91AB19F3299E006F6675 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\tDA8F91AC19F3299E006F6675 /* SharedExamplesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */; };\n\t\tDA8F91AE19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\tDA8F91AF19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */; };\n\t\tDA9876B81A4C70EB0004AA17 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A5D117C19473F2100F6D13D /* Quick.framework */; };\n\t\tDA9876C11A4C87200004AA17 /* FocusedTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9876BF1A4C87200004AA17 /* FocusedTests.swift */; };\n\t\tDAA63EA319F7637300CD0A3B /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\tDAA63EA419F7637300CD0A3B /* PendingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA63EA219F7637300CD0A3B /* PendingTests.swift */; };\n\t\tDAA7C0D719F777EB0093D1D9 /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\tDAB0136F19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\tDAB0137019FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */; };\n\t\tDAB067E919F7801C00F970AC /* BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA87078219F48775008C04AC /* BeforeEachTests.swift */; };\n\t\tDAD297651AA8129D001D25CD /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8100E901A1E4447007595ED /* Nimble.framework */; };\n\t\tDAE714F019FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\tDAE714F119FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */; };\n\t\tDAE714F319FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\tDAE714F419FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */; };\n\t\tDAE714F719FF6812005905B8 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\tDAE714F819FF6812005905B8 /* Configuration+AfterEach.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */; };\n\t\tDAE714FA19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\tDAE714FB19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */; };\n\t\tDAE714FE19FF6A62005905B8 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAE714FF19FF6A62005905B8 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = DAE714FC19FF6A62005905B8 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAE7150019FF6A62005905B8 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\tDAE7150119FF6A62005905B8 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = DAE714FD19FF6A62005905B8 /* QuickConfiguration.m */; };\n\t\tDAEB6B941943873100289F44 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = DAEB6B931943873100289F44 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tDAEB6B9A1943873100289F44 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DAEB6B8E1943873100289F44 /* Quick.framework */; };\n\t\tDAED1EC41B1105BC006F61EC /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\tDAED1EC51B1105BC006F61EC /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC21B1105BC006F61EC /* World.h */; };\n\t\tDAED1ECA1B110699006F61EC /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\tDAED1ECB1B110699006F61EC /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = DAED1EC81B110699006F61EC /* World+DSL.h */; };\n\t\tDAF28BC31A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n\t\tDAF28BC41A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = DAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t047655511949F4CB00B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t047655531949F4CB00B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04765555194A327000B288BB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E4194B4A6000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E6194B4A6000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97E8194B4B7E00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97EA194B4B9B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F0194B82DB00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97F2194B82DE00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F6194B831200CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97F8194B834000CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97FA194B834100CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC97FC194B834B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC97FE194B835E00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9800194B836100CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC9802194B836300CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9804194B838400CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t04DC9806194B838700CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t04DC9808194B838B00CE00B6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\t1F118CE01BDCA4AB005013A2 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F118CD41BDCA4AB005013A2;\n\t\t\tremoteInfo = \"Quick-tvOS\";\n\t\t};\n\t\t1F118CF61BDCA4BB005013A2 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1F118CD41BDCA4AB005013A2;\n\t\t\tremoteInfo = \"Quick-tvOS\";\n\t\t};\n\t\t5A5D118819473F2100F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t5A5D11EF194741B500F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t5A5D11F1194741B500F6D13D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\t93625F381951DDC8006B1FE1 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n\t\tDA5663EF1A4C8D8500193C88 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = \"Quick-OSX\";\n\t\t};\n\t\tDA9876B91A4C70EB0004AA17 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 5A5D117B19473F2100F6D13D;\n\t\t\tremoteInfo = \"Quick-iOS\";\n\t\t};\n\t\tDAEB6B9B1943873100289F44 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DAEB6B851943873100289F44 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = DAEB6B8D1943873100289F44;\n\t\t\tremoteInfo = Quick;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t1F118CD51BDCA4AB005013A2 /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t1F118D341BDCA657005013A2 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = \"Externals/Nimble/build/Debug-appletvos/Nimble.framework\"; sourceTree = \"<group>\"; };\n\t\t1F118D361BDCA65C005013A2 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = \"Externals/Nimble/build/Debug-appletvos/Nimble.framework\"; sourceTree = \"<group>\"; };\n\t\t34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XCTestCaseProvider.swift; sourceTree = \"<group>\"; };\n\t\t34C586071C4AC5E500D4F057 /* ErrorUtility.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ErrorUtility.swift; sourceTree = \"<group>\"; };\n\t\t34F3759C19515CA700CE1B99 /* Callsite.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Callsite.swift; sourceTree = \"<group>\"; };\n\t\t34F3759E19515CA700CE1B99 /* Example.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Example.swift; sourceTree = \"<group>\"; };\n\t\t34F3759F19515CA700CE1B99 /* ExampleGroup.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleGroup.swift; sourceTree = \"<group>\"; };\n\t\t34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSString+QCKSelectorName.h\"; sourceTree = \"<group>\"; };\n\t\t34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSString+QCKSelectorName.m\"; sourceTree = \"<group>\"; };\n\t\t34F375A419515CA700CE1B99 /* QuickSpec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickSpec.h; sourceTree = \"<group>\"; };\n\t\t34F375A519515CA700CE1B99 /* QuickSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickSpec.m; sourceTree = \"<group>\"; };\n\t\t34F375A619515CA700CE1B99 /* World.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = World.swift; sourceTree = \"<group>\"; };\n\t\t470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"AfterEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"PendingTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"SharedExamplesTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"SharedExamples+BeforeEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"AfterSuiteTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"BeforeSuiteTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t479C31E11A36156E00DA8718 /* ItTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"ItTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"BeforeEachTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\t5A5D117C19473F2100F6D13D /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t7B44ADBD1C5444940007AF2E /* HooksPhase.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HooksPhase.swift; sourceTree = \"<group>\"; };\n\t\t7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContextTests.swift; sourceTree = \"<group>\"; };\n\t\t8D010A561C11726F00633E2B /* DescribeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DescribeTests.swift; sourceTree = \"<group>\"; };\n\t\t96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"QuickSpec+QuickSpec_MethodList.h\"; sourceTree = \"<group>\"; };\n\t\t96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"QuickSpec+QuickSpec_MethodList.m\"; sourceTree = \"<group>\"; };\n\t\tAEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestObservationCenter+QCKSuspendObservation.m\"; sourceTree = \"<group>\"; };\n\t\tAED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CrossReferencingSpecs.swift; sourceTree = \"<group>\"; };\n\t\tCE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"NSBundle+CurrentTestBundle.swift\"; sourceTree = \"<group>\"; };\n\t\tCE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickSelectedTestSuiteBuilder.swift; sourceTree = \"<group>\"; };\n\t\tCE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickTestSuite.swift; sourceTree = \"<group>\"; };\n\t\tCE57CEDB1C430BD200D63004 /* String+FileName.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"String+FileName.swift\"; sourceTree = \"<group>\"; };\n\t\tCE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"XCTestSuite+QuickTestSuiteBuilder.m\"; sourceTree = \"<group>\"; };\n\t\tDA02C91819A8073100093156 /* ExampleMetadata.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleMetadata.swift; sourceTree = \"<group>\"; };\n\t\tDA05D60F19F73A3800771050 /* AfterEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AfterEachTests.swift; sourceTree = \"<group>\"; };\n\t\tDA169E4719FF5DF100619816 /* Configuration.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = \"<group>\"; };\n\t\tDA3124E219FCAEE8002858A7 /* DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DSL.swift; sourceTree = \"<group>\"; };\n\t\tDA3124E319FCAEE8002858A7 /* QCKDSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QCKDSL.h; sourceTree = \"<group>\"; };\n\t\tDA3124E419FCAEE8002858A7 /* QCKDSL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QCKDSL.m; sourceTree = \"<group>\"; };\n\t\tDA3124E519FCAEE8002858A7 /* World+DSL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"World+DSL.swift\"; sourceTree = \"<group>\"; };\n\t\tDA408BDF19FF5599005DF92A /* Closures.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Closures.swift; sourceTree = \"<group>\"; };\n\t\tDA408BE019FF5599005DF92A /* ExampleHooks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExampleHooks.swift; sourceTree = \"<group>\"; };\n\t\tDA408BE119FF5599005DF92A /* SuiteHooks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SuiteHooks.swift; sourceTree = \"<group>\"; };\n\t\tDA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-OSXTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDA6B30171A4DB0D500FFB148 /* Filter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Filter.swift; sourceTree = \"<group>\"; };\n\t\tDA7AE6F019FC493F000AFDCE /* ItTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ItTests.swift; sourceTree = \"<group>\"; };\n\t\tDA87078219F48775008C04AC /* BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeforeEachTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FailureUsingXCTAssertTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tDA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickConfigurationTests.m; sourceTree = \"<group>\"; };\n\t\tDA8F919519F31680006F6675 /* QCKSpecRunner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QCKSpecRunner.h; sourceTree = \"<group>\"; };\n\t\tDA8F919619F31680006F6675 /* QCKSpecRunner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QCKSpecRunner.m; sourceTree = \"<group>\"; };\n\t\tDA8F919719F31680006F6675 /* QuickTestsBridgingHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickTestsBridgingHeader.h; sourceTree = \"<group>\"; };\n\t\tDA8F919819F31680006F6675 /* XCTestObservationCenter+QCKSuspendObservation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"XCTestObservationCenter+QCKSuspendObservation.h\"; sourceTree = \"<group>\"; };\n\t\tDA8F919C19F31921006F6675 /* FailureTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FailureTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tDA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BeforeSuiteTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91A719F32556006F6675 /* AfterSuiteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AfterSuiteTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SharedExamplesTests.swift; sourceTree = \"<group>\"; };\n\t\tDA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FunctionalTests_SharedExamplesTests_SharedExamples.swift; sourceTree = \"<group>\"; };\n\t\tDA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"QuickFocused-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDA9876BF1A4C87200004AA17 /* FocusedTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FocusedTests.swift; sourceTree = \"<group>\"; };\n\t\tDA9876C01A4C87200004AA17 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAA63EA219F7637300CD0A3B /* PendingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PendingTests.swift; sourceTree = \"<group>\"; };\n\t\tDAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"SharedExamples+BeforeEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+BeforeEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+BeforeEach.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+AfterEach.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"Configuration+AfterEachTests.swift\"; sourceTree = \"<group>\"; };\n\t\tDAE714FC19FF6A62005905B8 /* QuickConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickConfiguration.h; sourceTree = \"<group>\"; };\n\t\tDAE714FD19FF6A62005905B8 /* QuickConfiguration.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuickConfiguration.m; sourceTree = \"<group>\"; };\n\t\tDAEB6B8E1943873100289F44 /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDAEB6B921943873100289F44 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAEB6B931943873100289F44 /* Quick.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Quick.h; sourceTree = \"<group>\"; };\n\t\tDAEB6B991943873100289F44 /* Quick-OSXTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Quick-OSXTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tDAEB6B9F1943873100289F44 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tDAED1EC21B1105BC006F61EC /* World.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = World.h; sourceTree = \"<group>\"; };\n\t\tDAED1EC81B110699006F61EC /* World+DSL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"World+DSL.h\"; sourceTree = \"<group>\"; };\n\t\tDAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"FocusedTests+ObjC.m\"; sourceTree = \"<group>\"; };\n\t\tF8100E901A1E4447007595ED /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t1F118CD11BDCA4AB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDB1BDCA4AB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118CDF1BDCA4AB005013A2 /* Quick.framework in Frameworks */,\n\t\t\t\t1F118D351BDCA657005013A2 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CED1BDCA4BB005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118CF51BDCA4BB005013A2 /* Quick.framework in Frameworks */,\n\t\t\t\t1F118D371BDCA65C005013A2 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117819473F2100F6D13D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118319473F2100F6D13D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t5A5D118719473F2100F6D13D /* Quick.framework in Frameworks */,\n\t\t\t\tDA3E7A351A1E66CB00CCE408 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E51A4C8D8500193C88 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA5663EE1A4C8D8500193C88 /* Quick.framework in Frameworks */,\n\t\t\t\t1FD0CFAD1AFA0B8C00874CC1 /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876AF1A4C70EB0004AA17 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA9876B81A4C70EB0004AA17 /* Quick.framework in Frameworks */,\n\t\t\t\tDAD297651AA8129D001D25CD /* Nimble.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8A1943873100289F44 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B961943873100289F44 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA3E7A341A1E66C600CCE408 /* Nimble.framework in Frameworks */,\n\t\t\t\tDAEB6B9A1943873100289F44 /* Quick.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t1F118D331BDCA645005013A2 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1F118D361BDCA65C005013A2 /* Nimble.framework */,\n\t\t\t\t1F118D341BDCA657005013A2 /* Nimble.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA169E4619FF5DF100619816 /* Configuration */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714FC19FF6A62005905B8 /* QuickConfiguration.h */,\n\t\t\t\tDAE714FD19FF6A62005905B8 /* QuickConfiguration.m */,\n\t\t\t\tDA169E4719FF5DF100619816 /* Configuration.swift */,\n\t\t\t);\n\t\t\tpath = Configuration;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA3124E119FCAEE8002858A7 /* DSL */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA3124E519FCAEE8002858A7 /* World+DSL.swift */,\n\t\t\t\tDAED1EC81B110699006F61EC /* World+DSL.h */,\n\t\t\t\tDA3124E219FCAEE8002858A7 /* DSL.swift */,\n\t\t\t\tDA3124E319FCAEE8002858A7 /* QCKDSL.h */,\n\t\t\t\tDA3124E419FCAEE8002858A7 /* QCKDSL.m */,\n\t\t\t);\n\t\t\tpath = DSL;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA408BDE19FF5599005DF92A /* Hooks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA408BDF19FF5599005DF92A /* Closures.swift */,\n\t\t\t\tDA408BE019FF5599005DF92A /* ExampleHooks.swift */,\n\t\t\t\tDA408BE119FF5599005DF92A /* SuiteHooks.swift */,\n\t\t\t\t7B44ADBD1C5444940007AF2E /* HooksPhase.swift */,\n\t\t\t);\n\t\t\tpath = Hooks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA8F919419F31680006F6675 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8F919719F31680006F6675 /* QuickTestsBridgingHeader.h */,\n\t\t\t\tDA8F919519F31680006F6675 /* QCKSpecRunner.h */,\n\t\t\t\tDA8F919619F31680006F6675 /* QCKSpecRunner.m */,\n\t\t\t\t34ACFB7B1C34859300942064 /* XCTestCaseProvider.swift */,\n\t\t\t\tDA8F919819F31680006F6675 /* XCTestObservationCenter+QCKSuspendObservation.h */,\n\t\t\t\t96327C611C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h */,\n\t\t\t\t96327C621C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m */,\n\t\t\t\tAEB080BB1C72F028004917D3 /* XCTestObservationCenter+QCKSuspendObservation.m */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA8F919B19F3189D006F6675 /* FunctionalTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714E919FF65A6005905B8 /* Configuration */,\n\t\t\t\tDA7AE6F019FC493F000AFDCE /* ItTests.swift */,\n\t\t\t\t479C31E11A36156E00DA8718 /* ItTests+ObjC.m */,\n\t\t\t\t8D010A561C11726F00633E2B /* DescribeTests.swift */,\n\t\t\t\tDA8F919C19F31921006F6675 /* FailureTests+ObjC.m */,\n\t\t\t\tDA8940EF1B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m */,\n\t\t\t\tDA87078219F48775008C04AC /* BeforeEachTests.swift */,\n\t\t\t\t47FAEA341A3F45ED005A1D2F /* BeforeEachTests+ObjC.m */,\n\t\t\t\tDA05D60F19F73A3800771050 /* AfterEachTests.swift */,\n\t\t\t\t470D6EC91A43409600043E50 /* AfterEachTests+ObjC.m */,\n\t\t\t\tDAA63EA219F7637300CD0A3B /* PendingTests.swift */,\n\t\t\t\t4715903F1A488F3F00FBA644 /* PendingTests+ObjC.m */,\n\t\t\t\tDA8F91A419F3208B006F6675 /* BeforeSuiteTests.swift */,\n\t\t\t\t47876F7B1A4999B0002575C7 /* BeforeSuiteTests+ObjC.m */,\n\t\t\t\tDA8F91A719F32556006F6675 /* AfterSuiteTests.swift */,\n\t\t\t\t477217391A59C1B00022013E /* AfterSuiteTests+ObjC.m */,\n\t\t\t\tDA8F91AA19F3299E006F6675 /* SharedExamplesTests.swift */,\n\t\t\t\t4728253A1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m */,\n\t\t\t\tDAB0136E19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift */,\n\t\t\t\t4748E8931A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m */,\n\t\t\t\t7B5358CA1C3D4E2A00A23FAA /* ContextTests.swift */,\n\t\t\t\tAED9C8621CC8A7BD00432F62 /* CrossReferencingSpecs.swift */,\n\t\t\t);\n\t\t\tpath = FunctionalTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA9876BE1A4C87200004AA17 /* QuickFocusedTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA9876BF1A4C87200004AA17 /* FocusedTests.swift */,\n\t\t\t\tDAF28BC21A4DB8EC00A5D9BF /* FocusedTests+ObjC.m */,\n\t\t\t\tDA9876C31A4C87310004AA17 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = QuickFocusedTests;\n\t\t\tpath = Sources/QuickFocusedTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDA9876C31A4C87310004AA17 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA9876C01A4C87200004AA17 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714E919FF65A6005905B8 /* Configuration */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F519FF67FF005905B8 /* AfterEach */,\n\t\t\t\tDAE714EA19FF65A6005905B8 /* BeforeEach */,\n\t\t\t);\n\t\t\tpath = Configuration;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714EA19FF65A6005905B8 /* BeforeEach */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F219FF65E7005905B8 /* Configuration+BeforeEach.swift */,\n\t\t\t\tDAE714EF19FF65D3005905B8 /* Configuration+BeforeEachTests.swift */,\n\t\t\t);\n\t\t\tpath = BeforeEach;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAE714F519FF67FF005905B8 /* AfterEach */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAE714F619FF6812005905B8 /* Configuration+AfterEach.swift */,\n\t\t\t\tDAE714F919FF682A005905B8 /* Configuration+AfterEachTests.swift */,\n\t\t\t);\n\t\t\tpath = AfterEach;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B841943873100289F44 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B901943873100289F44 /* Quick */,\n\t\t\t\tDAEB6B9D1943873100289F44 /* QuickTests */,\n\t\t\t\tDA9876BE1A4C87200004AA17 /* QuickFocusedTests */,\n\t\t\t\tDAEB6B8F1943873100289F44 /* Products */,\n\t\t\t\t1F118D331BDCA645005013A2 /* Frameworks */,\n\t\t\t);\n\t\t\tindentWidth = 4;\n\t\t\tsourceTree = \"<group>\";\n\t\t\ttabWidth = 4;\n\t\t};\n\t\tDAEB6B8F1943873100289F44 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B8E1943873100289F44 /* Quick.framework */,\n\t\t\t\tDAEB6B991943873100289F44 /* Quick-OSXTests.xctest */,\n\t\t\t\t5A5D117C19473F2100F6D13D /* Quick.framework */,\n\t\t\t\t5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */,\n\t\t\t\tDA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */,\n\t\t\t\tDA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */,\n\t\t\t\t1F118CD51BDCA4AB005013A2 /* Quick.framework */,\n\t\t\t\t1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */,\n\t\t\t\t1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B901943873100289F44 /* Quick */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA169E4619FF5DF100619816 /* Configuration */,\n\t\t\t\tDA3124E119FCAEE8002858A7 /* DSL */,\n\t\t\t\tDA408BDE19FF5599005DF92A /* Hooks */,\n\t\t\t\tDAEB6B931943873100289F44 /* Quick.h */,\n\t\t\t\t34F375A619515CA700CE1B99 /* World.swift */,\n\t\t\t\tDAED1EC21B1105BC006F61EC /* World.h */,\n\t\t\t\t34F3759E19515CA700CE1B99 /* Example.swift */,\n\t\t\t\tDA02C91819A8073100093156 /* ExampleMetadata.swift */,\n\t\t\t\t34F3759F19515CA700CE1B99 /* ExampleGroup.swift */,\n\t\t\t\t34F3759C19515CA700CE1B99 /* Callsite.swift */,\n\t\t\t\tDA6B30171A4DB0D500FFB148 /* Filter.swift */,\n\t\t\t\t34F375A419515CA700CE1B99 /* QuickSpec.h */,\n\t\t\t\t34F375A519515CA700CE1B99 /* QuickSpec.m */,\n\t\t\t\tCE57CEDA1C430BD200D63004 /* QuickTestSuite.swift */,\n\t\t\t\tCE57CED91C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift */,\n\t\t\t\tCE57CED81C430BD200D63004 /* NSBundle+CurrentTestBundle.swift */,\n\t\t\t\t34F375A019515CA700CE1B99 /* NSString+QCKSelectorName.h */,\n\t\t\t\t34F375A119515CA700CE1B99 /* NSString+QCKSelectorName.m */,\n\t\t\t\tCE57CEDB1C430BD200D63004 /* String+FileName.swift */,\n\t\t\t\tCE57CEDC1C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m */,\n\t\t\t\t34C586071C4AC5E500D4F057 /* ErrorUtility.swift */,\n\t\t\t\tDAEB6B911943873100289F44 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = Quick;\n\t\t\tpath = Sources/Quick;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B911943873100289F44 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B921943873100289F44 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B9D1943873100289F44 /* QuickTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8C00201A01E4B900CE58A6 /* QuickConfigurationTests.m */,\n\t\t\t\tDA8F919419F31680006F6675 /* Helpers */,\n\t\t\t\tDAEB6BCD194387D700289F44 /* Fixtures */,\n\t\t\t\tDA8F919B19F3189D006F6675 /* FunctionalTests */,\n\t\t\t\tF8100E941A1E4469007595ED /* Frameworks */,\n\t\t\t\tDAEB6B9E1943873100289F44 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = QuickTests;\n\t\t\tpath = Sources/QuickTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6B9E1943873100289F44 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDAEB6B9F1943873100289F44 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDAEB6BCD194387D700289F44 /* Fixtures */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tDA8F91AD19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift */,\n\t\t\t);\n\t\t\tpath = Fixtures;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF8100E941A1E4469007595ED /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF8100E901A1E4447007595ED /* Nimble.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t1F118CD21BDCA4AB005013A2 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D2B1BDCA5B6005013A2 /* Quick.h in Headers */,\n\t\t\t\t1F118D261BDCA5AF005013A2 /* World+DSL.h in Headers */,\n\t\t\t\t96327C651C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\t1F118D271BDCA5AF005013A2 /* World.h in Headers */,\n\t\t\t\t1F118D2A1BDCA5B6005013A2 /* QCKDSL.h in Headers */,\n\t\t\t\t1F118D2C1BDCA5B6005013A2 /* QuickSpec.h in Headers */,\n\t\t\t\t1F118D281BDCA5AF005013A2 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\t1F118D291BDCA5B6005013A2 /* QuickConfiguration.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117919473F2100F6D13D /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t34F375B019515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\tDAE714FF19FF6A62005905B8 /* QuickConfiguration.h in Headers */,\n\t\t\t\t96327C641C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\tDA3124E919FCAEE8002858A7 /* QCKDSL.h in Headers */,\n\t\t\t\tDAED1ECB1B110699006F61EC /* World+DSL.h in Headers */,\n\t\t\t\tDAED1EC51B1105BC006F61EC /* World.h in Headers */,\n\t\t\t\t34F375B819515CA700CE1B99 /* QuickSpec.h in Headers */,\n\t\t\t\t5A5D11A7194740E000F6D13D /* Quick.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8B1943873100289F44 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t34F375AF19515CA700CE1B99 /* NSString+QCKSelectorName.h in Headers */,\n\t\t\t\tDAE714FE19FF6A62005905B8 /* QuickConfiguration.h in Headers */,\n\t\t\t\t96327C631C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.h in Headers */,\n\t\t\t\tDA3124E819FCAEE8002858A7 /* QCKDSL.h in Headers */,\n\t\t\t\tDAED1ECA1B110699006F61EC /* World+DSL.h in Headers */,\n\t\t\t\tDAED1EC41B1105BC006F61EC /* World.h in Headers */,\n\t\t\t\t34F375B719515CA700CE1B99 /* QuickSpec.h in Headers */,\n\t\t\t\tDAEB6B941943873100289F44 /* Quick.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t1F118CD41BDCA4AB005013A2 /* Quick-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CE61BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CD01BDCA4AB005013A2 /* Sources */,\n\t\t\t\t1F118CD11BDCA4AB005013A2 /* Frameworks */,\n\t\t\t\t1F118CD21BDCA4AB005013A2 /* Headers */,\n\t\t\t\t1F118CD31BDCA4AB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-tvOS\";\n\t\t\tproductName = \"Quick-tvOS\";\n\t\t\tproductReference = 1F118CD51BDCA4AB005013A2 /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t1F118CDD1BDCA4AB005013A2 /* Quick-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CE91BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CDA1BDCA4AB005013A2 /* Sources */,\n\t\t\t\t1F118CDB1BDCA4AB005013A2 /* Frameworks */,\n\t\t\t\t1F118CDC1BDCA4AB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F118CE11BDCA4AB005013A2 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-tvOSTests\";\n\t\t\tproductName = \"Quick-tvOSTests\";\n\t\t\tproductReference = 1F118CDE1BDCA4AB005013A2 /* Quick-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t1F118CEF1BDCA4BB005013A2 /* QuickFocused-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 1F118CF81BDCA4BC005013A2 /* Build configuration list for PBXNativeTarget \"QuickFocused-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t1F118CEC1BDCA4BB005013A2 /* Sources */,\n\t\t\t\t1F118CED1BDCA4BB005013A2 /* Frameworks */,\n\t\t\t\t1F118CEE1BDCA4BB005013A2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t1F118CF71BDCA4BB005013A2 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-tvOSTests\";\n\t\t\tproductName = \"QuickFocused-tvOSTests\";\n\t\t\tproductReference = 1F118CF01BDCA4BB005013A2 /* QuickFocused-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t5A5D117B19473F2100F6D13D /* Quick-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 5A5D119319473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t5A5D117719473F2100F6D13D /* Sources */,\n\t\t\t\t5A5D117819473F2100F6D13D /* Frameworks */,\n\t\t\t\t5A5D117919473F2100F6D13D /* Headers */,\n\t\t\t\t5A5D117A19473F2100F6D13D /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-iOS\";\n\t\t\tproductName = \"Quick-iOS\";\n\t\t\tproductReference = 5A5D117C19473F2100F6D13D /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t5A5D118519473F2100F6D13D /* Quick-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 5A5D119419473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t5A5D118219473F2100F6D13D /* Sources */,\n\t\t\t\t5A5D118319473F2100F6D13D /* Frameworks */,\n\t\t\t\t5A5D118419473F2100F6D13D /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t5A5D118919473F2100F6D13D /* PBXTargetDependency */,\n\t\t\t\t5A5D11F0194741B500F6D13D /* PBXTargetDependency */,\n\t\t\t\t5A5D11F2194741B500F6D13D /* PBXTargetDependency */,\n\t\t\t\t04DC97E9194B4B7E00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97EB194B4B9B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F3194B82DE00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F7194B831200CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FB194B834100CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FF194B835E00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9803194B836300CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9807194B838700CE00B6 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-iOSTests\";\n\t\t\tproductName = \"Quick-iOSTests\";\n\t\t\tproductReference = 5A5D118619473F2100F6D13D /* Quick-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDA5663E71A4C8D8500193C88 /* QuickFocused-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DA5663F31A4C8D8500193C88 /* Build configuration list for PBXNativeTarget \"QuickFocused-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDA5663E41A4C8D8500193C88 /* Sources */,\n\t\t\t\tDA5663E51A4C8D8500193C88 /* Frameworks */,\n\t\t\t\tDA5663E61A4C8D8500193C88 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDA5663F01A4C8D8500193C88 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-OSXTests\";\n\t\t\tproductName = \"QuickFocused-OSXTests\";\n\t\t\tproductReference = DA5663E81A4C8D8500193C88 /* QuickFocused-OSXTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDA9876B11A4C70EB0004AA17 /* QuickFocused-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DA9876BD1A4C70EB0004AA17 /* Build configuration list for PBXNativeTarget \"QuickFocused-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDA9876AE1A4C70EB0004AA17 /* Sources */,\n\t\t\t\tDA9876AF1A4C70EB0004AA17 /* Frameworks */,\n\t\t\t\tDA9876B01A4C70EB0004AA17 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDA9876BA1A4C70EB0004AA17 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"QuickFocused-iOSTests\";\n\t\t\tproductName = \"QuickFocused-iOSTests\";\n\t\t\tproductReference = DA9876B21A4C70EB0004AA17 /* QuickFocused-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tDAEB6B8D1943873100289F44 /* Quick-OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DAEB6BA41943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDAEB6B891943873100289F44 /* Sources */,\n\t\t\t\tDAEB6B8A1943873100289F44 /* Frameworks */,\n\t\t\t\tDAEB6B8B1943873100289F44 /* Headers */,\n\t\t\t\tDAEB6B8C1943873100289F44 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Quick-OSX\";\n\t\t\tproductName = Quick;\n\t\t\tproductReference = DAEB6B8E1943873100289F44 /* Quick.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tDAEB6B981943873100289F44 /* Quick-OSXTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = DAEB6BA71943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSXTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tDAEB6B951943873100289F44 /* Sources */,\n\t\t\t\tDAEB6B961943873100289F44 /* Frameworks */,\n\t\t\t\tDAEB6B971943873100289F44 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tDAEB6B9C1943873100289F44 /* PBXTargetDependency */,\n\t\t\t\t047655521949F4CB00B288BB /* PBXTargetDependency */,\n\t\t\t\t047655541949F4CB00B288BB /* PBXTargetDependency */,\n\t\t\t\t04765556194A327000B288BB /* PBXTargetDependency */,\n\t\t\t\t04DC97E5194B4A6000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97E7194B4A6000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F1194B82DB00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97F9194B834000CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC97FD194B834B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9801194B836100CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9805194B838400CE00B6 /* PBXTargetDependency */,\n\t\t\t\t04DC9809194B838B00CE00B6 /* PBXTargetDependency */,\n\t\t\t\t93625F391951DDC8006B1FE1 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Quick-OSXTests\";\n\t\t\tproductName = QuickTests;\n\t\t\tproductReference = DAEB6B991943873100289F44 /* Quick-OSXTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tDAEB6B851943873100289F44 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0710;\n\t\t\t\tLastUpgradeCheck = 0700;\n\t\t\t\tORGANIZATIONNAME = \"Brian Ivan Gesiak\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t1F118CD41BDCA4AB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F118CDD1BDCA4AB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t1F118CEF1BDCA4BB005013A2 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t5A5D117B19473F2100F6D13D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t5A5D118519473F2100F6D13D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 5A5D117B19473F2100F6D13D;\n\t\t\t\t\t};\n\t\t\t\t\tDA5663E71A4C8D8500193C88 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDA9876B11A4C70EB0004AA17 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDAEB6B8D1943873100289F44 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tDAEB6B981943873100289F44 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = DAEB6B8D1943873100289F44;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = DAEB6B881943873100289F44 /* Build configuration list for PBXProject \"Quick\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = DAEB6B841943873100289F44;\n\t\t\tproductRefGroup = DAEB6B8F1943873100289F44 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tDAEB6B8D1943873100289F44 /* Quick-OSX */,\n\t\t\t\tDAEB6B981943873100289F44 /* Quick-OSXTests */,\n\t\t\t\tDA5663E71A4C8D8500193C88 /* QuickFocused-OSXTests */,\n\t\t\t\t5A5D117B19473F2100F6D13D /* Quick-iOS */,\n\t\t\t\t5A5D118519473F2100F6D13D /* Quick-iOSTests */,\n\t\t\t\tDA9876B11A4C70EB0004AA17 /* QuickFocused-iOSTests */,\n\t\t\t\t1F118CD41BDCA4AB005013A2 /* Quick-tvOS */,\n\t\t\t\t1F118CDD1BDCA4AB005013A2 /* Quick-tvOSTests */,\n\t\t\t\t1F118CEF1BDCA4BB005013A2 /* QuickFocused-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t1F118CD31BDCA4AB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDC1BDCA4AB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CEE1BDCA4BB005013A2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117A19473F2100F6D13D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118419473F2100F6D13D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E61A4C8D8500193C88 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876B01A4C70EB0004AA17 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B8C1943873100289F44 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B971943873100289F44 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t1F118CD01BDCA4AB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C681C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t1F118D031BDCA536005013A2 /* World.swift in Sources */,\n\t\t\t\tCE590E201C431FE400253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\t1F118CFC1BDCA536005013A2 /* Configuration.swift in Sources */,\n\t\t\t\t1F118D021BDCA536005013A2 /* SuiteHooks.swift in Sources */,\n\t\t\t\t1F118CFB1BDCA536005013A2 /* QuickConfiguration.m in Sources */,\n\t\t\t\t34C5860A1C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\t1F118D041BDCA536005013A2 /* Example.swift in Sources */,\n\t\t\t\t1F118CFF1BDCA536005013A2 /* QCKDSL.m in Sources */,\n\t\t\t\tCE590E211C431FE400253D19 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\t1F118D071BDCA536005013A2 /* Callsite.swift in Sources */,\n\t\t\t\tCE590E231C431FE400253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\t1F118D081BDCA536005013A2 /* Filter.swift in Sources */,\n\t\t\t\t1F118CFD1BDCA536005013A2 /* World+DSL.swift in Sources */,\n\t\t\t\tCE590E221C431FE400253D19 /* String+FileName.swift in Sources */,\n\t\t\t\t1F118D0A1BDCA536005013A2 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\t1F118CFE1BDCA536005013A2 /* DSL.swift in Sources */,\n\t\t\t\t7B44ADC01C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\t1F118D001BDCA536005013A2 /* Closures.swift in Sources */,\n\t\t\t\t1F118D051BDCA536005013A2 /* ExampleMetadata.swift in Sources */,\n\t\t\t\t1F118D061BDCA536005013A2 /* ExampleGroup.swift in Sources */,\n\t\t\t\tCE590E1F1C431FE400253D19 /* QuickTestSuite.swift in Sources */,\n\t\t\t\t1F118D091BDCA536005013A2 /* QuickSpec.m in Sources */,\n\t\t\t\t1F118D011BDCA536005013A2 /* ExampleHooks.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CDA1BDCA4AB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D381BDCA6E1005013A2 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\t1F118D121BDCA556005013A2 /* ItTests.swift in Sources */,\n\t\t\t\t1F118D1C1BDCA556005013A2 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\t1F118D1D1BDCA556005013A2 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t1F118D0E1BDCA547005013A2 /* QCKSpecRunner.m in Sources */,\n\t\t\t\t1F118D141BDCA556005013A2 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\t1F118D0F1BDCA54B005013A2 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\t1F118D101BDCA556005013A2 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\t1F118D1F1BDCA556005013A2 /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t1F118D1A1BDCA556005013A2 /* PendingTests.swift in Sources */,\n\t\t\t\t1F118D171BDCA556005013A2 /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D231BDCA556005013A2 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D151BDCA556005013A2 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t1F118D131BDCA556005013A2 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t1F118D191BDCA556005013A2 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t1F118D221BDCA556005013A2 /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tAE4E58171C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8651CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t1F118D211BDCA556005013A2 /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\t1F118D201BDCA556005013A2 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\t1F118D0C1BDCA543005013A2 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\t1F118D391BDCA6E6005013A2 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\t1F118D181BDCA556005013A2 /* AfterEachTests.swift in Sources */,\n\t\t\t\t1F118D1B1BDCA556005013A2 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\t34C586051C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A591C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t1F118D1E1BDCA556005013A2 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t1F118D111BDCA556005013A2 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\t1F118D161BDCA556005013A2 /* BeforeEachTests.swift in Sources */,\n\t\t\t\t7B5358D01C3D4FC000A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t1F118CEC1BDCA4BB005013A2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t1F118D0D1BDCA547005013A2 /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586061C4ABD4100D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t1F118D241BDCA561005013A2 /* FocusedTests.swift in Sources */,\n\t\t\t\t1F118D251BDCA561005013A2 /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58181C73097E00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D117719473F2100F6D13D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C671C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t34F375B219515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\tCE590E1B1C431FE300253D19 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\tDA3124EB19FCAEE8002858A7 /* QCKDSL.m in Sources */,\n\t\t\t\tDA408BE319FF5599005DF92A /* Closures.swift in Sources */,\n\t\t\t\tDA02C91A19A8073100093156 /* ExampleMetadata.swift in Sources */,\n\t\t\t\t34C586091C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\tDA408BE719FF5599005DF92A /* SuiteHooks.swift in Sources */,\n\t\t\t\t34F375BA19515CA700CE1B99 /* QuickSpec.m in Sources */,\n\t\t\t\tCE590E1C1C431FE300253D19 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\tDAE7150119FF6A62005905B8 /* QuickConfiguration.m in Sources */,\n\t\t\t\tCE590E1E1C431FE300253D19 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\t34F375A819515CA700CE1B99 /* Callsite.swift in Sources */,\n\t\t\t\t34F375AE19515CA700CE1B99 /* ExampleGroup.swift in Sources */,\n\t\t\t\tCE590E1D1C431FE300253D19 /* String+FileName.swift in Sources */,\n\t\t\t\t34F375BC19515CA700CE1B99 /* World.swift in Sources */,\n\t\t\t\tDA169E4919FF5DF100619816 /* Configuration.swift in Sources */,\n\t\t\t\t7B44ADBF1C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\tDA3124ED19FCAEE8002858A7 /* World+DSL.swift in Sources */,\n\t\t\t\tDA408BE519FF5599005DF92A /* ExampleHooks.swift in Sources */,\n\t\t\t\t34F375AC19515CA700CE1B99 /* Example.swift in Sources */,\n\t\t\t\tCE590E1A1C431FE300253D19 /* QuickTestSuite.swift in Sources */,\n\t\t\t\tDA3124E719FCAEE8002858A7 /* DSL.swift in Sources */,\n\t\t\t\tDA6B30191A4DB0D500FFB148 /* Filter.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t5A5D118219473F2100F6D13D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDAE714F819FF6812005905B8 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\tDAA7C0D719F777EB0093D1D9 /* BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F919A19F31680006F6675 /* QCKSpecRunner.m in Sources */,\n\t\t\t\tDA8940F11B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t4728253C1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F119FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA05D61119F73A3800771050 /* AfterEachTests.swift in Sources */,\n\t\t\t\tDAB0137019FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F91A619F3208B006F6675 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\tDA8C00221A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\tDAA63EA419F7637300CD0A3B /* PendingTests.swift in Sources */,\n\t\t\t\tDA8F91AC19F3299E006F6675 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\tDA7AE6F219FC493F000AFDCE /* ItTests.swift in Sources */,\n\t\t\t\t4748E8951A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\tDA8F91AF19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\tDAE714FB19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\tAE4E58151C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8641CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t471590411A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\tDA8F919E19F31921006F6675 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F419FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\tDA8F91A919F32556006F6675 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t4772173B1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t479C31E41A36172700DA8718 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t34C586031C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A581C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t47FAEA371A3F49EB005A1D2F /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t470D6ECC1A43442900043E50 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t47876F7E1A49AD71002575C7 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t7B5358CF1C3D4FBE00A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA5663E41A4C8D8500193C88 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA07722E1A4E5B7B0098839D /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586021C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\tDA5663F41A4C8D9A00193C88 /* FocusedTests.swift in Sources */,\n\t\t\t\tDAF28BC31A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58141C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDA9876AE1A4C70EB0004AA17 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDA07722F1A4E5B7C0098839D /* QCKSpecRunner.m in Sources */,\n\t\t\t\t34C586041C4ABD4000D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\tDA9876C11A4C87200004AA17 /* FocusedTests.swift in Sources */,\n\t\t\t\tDAF28BC41A4DB8EC00A5D9BF /* FocusedTests+ObjC.m in Sources */,\n\t\t\t\tAE4E58161C73097C00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B891943873100289F44 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t96327C661C56E90C00405AB3 /* QuickSpec+QuickSpec_MethodList.m in Sources */,\n\t\t\t\t34F375B119515CA700CE1B99 /* NSString+QCKSelectorName.m in Sources */,\n\t\t\t\tCE57CEDE1C430BD200D63004 /* QuickSelectedTestSuiteBuilder.swift in Sources */,\n\t\t\t\tDA3124EA19FCAEE8002858A7 /* QCKDSL.m in Sources */,\n\t\t\t\tDA408BE219FF5599005DF92A /* Closures.swift in Sources */,\n\t\t\t\tCE57CEDD1C430BD200D63004 /* NSBundle+CurrentTestBundle.swift in Sources */,\n\t\t\t\tDA02C91919A8073100093156 /* ExampleMetadata.swift in Sources */,\n\t\t\t\tCE57CEDF1C430BD200D63004 /* QuickTestSuite.swift in Sources */,\n\t\t\t\t34C586081C4AC5E500D4F057 /* ErrorUtility.swift in Sources */,\n\t\t\t\tDA408BE619FF5599005DF92A /* SuiteHooks.swift in Sources */,\n\t\t\t\t34F375B919515CA700CE1B99 /* QuickSpec.m in Sources */,\n\t\t\t\tCE57CEE11C430BD200D63004 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */,\n\t\t\t\tDAE7150019FF6A62005905B8 /* QuickConfiguration.m in Sources */,\n\t\t\t\t34F375A719515CA700CE1B99 /* Callsite.swift in Sources */,\n\t\t\t\tCE57CEE01C430BD200D63004 /* String+FileName.swift in Sources */,\n\t\t\t\t34F375AD19515CA700CE1B99 /* ExampleGroup.swift in Sources */,\n\t\t\t\t34F375BB19515CA700CE1B99 /* World.swift in Sources */,\n\t\t\t\tDA169E4819FF5DF100619816 /* Configuration.swift in Sources */,\n\t\t\t\t7B44ADBE1C5444940007AF2E /* HooksPhase.swift in Sources */,\n\t\t\t\tDA3124EC19FCAEE8002858A7 /* World+DSL.swift in Sources */,\n\t\t\t\tDA408BE419FF5599005DF92A /* ExampleHooks.swift in Sources */,\n\t\t\t\t34F375AB19515CA700CE1B99 /* Example.swift in Sources */,\n\t\t\t\tDA3124E619FCAEE8002858A7 /* DSL.swift in Sources */,\n\t\t\t\tDA6B30181A4DB0D500FFB148 /* Filter.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tDAEB6B951943873100289F44 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tDAE714F719FF6812005905B8 /* Configuration+AfterEach.swift in Sources */,\n\t\t\t\tDAB067E919F7801C00F970AC /* BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F919919F31680006F6675 /* QCKSpecRunner.m in Sources */,\n\t\t\t\tDA8940F01B35B1FA00161061 /* FailureUsingXCTAssertTests+ObjC.m in Sources */,\n\t\t\t\t4728253B1A5EECCE008DC74F /* SharedExamplesTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F019FF65D3005905B8 /* Configuration+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA05D61019F73A3800771050 /* AfterEachTests.swift in Sources */,\n\t\t\t\tDAB0136F19FC4315006AFBEE /* SharedExamples+BeforeEachTests.swift in Sources */,\n\t\t\t\tDA8F91A519F3208B006F6675 /* BeforeSuiteTests.swift in Sources */,\n\t\t\t\tDA8C00211A01E4B900CE58A6 /* QuickConfigurationTests.m in Sources */,\n\t\t\t\tDAA63EA319F7637300CD0A3B /* PendingTests.swift in Sources */,\n\t\t\t\tDA8F91AB19F3299E006F6675 /* SharedExamplesTests.swift in Sources */,\n\t\t\t\tDA7AE6F119FC493F000AFDCE /* ItTests.swift in Sources */,\n\t\t\t\t4748E8941A6AEBB3009EC992 /* SharedExamples+BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\tDA8F91AE19F32CE2006F6675 /* FunctionalTests_SharedExamplesTests_SharedExamples.swift in Sources */,\n\t\t\t\tDAE714FA19FF682A005905B8 /* Configuration+AfterEachTests.swift in Sources */,\n\t\t\t\tAE4E58131C73097A00420A2E /* XCTestObservationCenter+QCKSuspendObservation.m in Sources */,\n\t\t\t\tAED9C8631CC8A7BD00432F62 /* CrossReferencingSpecs.swift in Sources */,\n\t\t\t\t471590401A488F3F00FBA644 /* PendingTests+ObjC.m in Sources */,\n\t\t\t\tDA8F919D19F31921006F6675 /* FailureTests+ObjC.m in Sources */,\n\t\t\t\tDAE714F319FF65E7005905B8 /* Configuration+BeforeEach.swift in Sources */,\n\t\t\t\tDA8F91A819F32556006F6675 /* AfterSuiteTests.swift in Sources */,\n\t\t\t\t4772173A1A59C1B00022013E /* AfterSuiteTests+ObjC.m in Sources */,\n\t\t\t\t479C31E31A36171B00DA8718 /* ItTests+ObjC.m in Sources */,\n\t\t\t\t34C586011C4ABD3F00D4F057 /* XCTestCaseProvider.swift in Sources */,\n\t\t\t\t8D010A571C11726F00633E2B /* DescribeTests.swift in Sources */,\n\t\t\t\t47FAEA361A3F49E6005A1D2F /* BeforeEachTests+ObjC.m in Sources */,\n\t\t\t\t470D6ECB1A43442400043E50 /* AfterEachTests+ObjC.m in Sources */,\n\t\t\t\t47876F7D1A49AD63002575C7 /* BeforeSuiteTests+ObjC.m in Sources */,\n\t\t\t\t7B5358CE1C3D4FBC00A23FAA /* ContextTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t047655521949F4CB00B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 047655511949F4CB00B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t047655541949F4CB00B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 047655531949F4CB00B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t04765556194A327000B288BB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04765555194A327000B288BB /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E5194B4A6000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97E4194B4A6000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E7194B4A6000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97E6194B4A6000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97E9194B4B7E00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97E8194B4B7E00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97EB194B4B9B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97EA194B4B9B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F1194B82DB00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97F0194B82DB00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F3194B82DE00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97F2194B82DE00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F7194B831200CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97F6194B831200CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97F9194B834000CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97F8194B834000CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FB194B834100CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97FA194B834100CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FD194B834B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC97FC194B834B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC97FF194B835E00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC97FE194B835E00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9801194B836100CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9800194B836100CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9803194B836300CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC9802194B836300CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9805194B838400CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9804194B838400CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9807194B838700CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 04DC9806194B838700CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t04DC9809194B838B00CE00B6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 04DC9808194B838B00CE00B6 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F118CE11BDCA4AB005013A2 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F118CD41BDCA4AB005013A2 /* Quick-tvOS */;\n\t\t\ttargetProxy = 1F118CE01BDCA4AB005013A2 /* PBXContainerItemProxy */;\n\t\t};\n\t\t1F118CF71BDCA4BB005013A2 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 1F118CD41BDCA4AB005013A2 /* Quick-tvOS */;\n\t\t\ttargetProxy = 1F118CF61BDCA4BB005013A2 /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D118919473F2100F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D118819473F2100F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D11F0194741B500F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D11EF194741B500F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t5A5D11F2194741B500F6D13D /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = 5A5D11F1194741B500F6D13D /* PBXContainerItemProxy */;\n\t\t};\n\t\t93625F391951DDC8006B1FE1 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = 93625F381951DDC8006B1FE1 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDA5663F01A4C8D8500193C88 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = DA5663EF1A4C8D8500193C88 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDA9876BA1A4C70EB0004AA17 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 5A5D117B19473F2100F6D13D /* Quick-iOS */;\n\t\t\ttargetProxy = DA9876B91A4C70EB0004AA17 /* PBXContainerItemProxy */;\n\t\t};\n\t\tDAEB6B9C1943873100289F44 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = DAEB6B8D1943873100289F44 /* Quick-OSX */;\n\t\t\ttargetProxy = DAEB6B9B1943873100289F44 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t1F118CE71BDCA4AB005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CE81BDCA4AB005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F118CEA1BDCA4AB005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CEB1BDCA4AB005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t1F118CF91BDCA4BC005013A2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t1F118CFA1BDCA4BC005013A2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Externals/Nimble/build/Debug-appletvos\",\n\t\t\t\t);\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t5A5D118F19473F2100F6D13D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t5A5D119019473F2100F6D13D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t5A5D119119473F2100F6D13D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t5A5D119219473F2100F6D13D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDA5663F11A4C8D8500193C88 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDA5663F21A4C8D8500193C88 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDA9876BB1A4C70EB0004AA17 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDA9876BC1A4C70EB0004AA17 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickFocusedTests/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 7.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tONLY_ACTIVE_ARCH = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA21943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA31943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_MISSING_NEWLINE = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA51943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA61943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(PLATFORM_DIR)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Sources/Quick/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_MODULE_NAME = Quick;\n\t\t\t\tPRODUCT_NAME = Quick;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDAEB6BA81943873200289F44 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDAEB6BA91943873200289F44 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Sources/QuickTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMETAL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.quick.${PRODUCT_NAME:rfc1034identifier}\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t1F118CE61BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CE71BDCA4AB005013A2 /* Debug */,\n\t\t\t\t1F118CE81BDCA4AB005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F118CE91BDCA4AB005013A2 /* Build configuration list for PBXNativeTarget \"Quick-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CEA1BDCA4AB005013A2 /* Debug */,\n\t\t\t\t1F118CEB1BDCA4AB005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t1F118CF81BDCA4BC005013A2 /* Build configuration list for PBXNativeTarget \"QuickFocused-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t1F118CF91BDCA4BC005013A2 /* Debug */,\n\t\t\t\t1F118CFA1BDCA4BC005013A2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t5A5D119319473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t5A5D118F19473F2100F6D13D /* Debug */,\n\t\t\t\t5A5D119019473F2100F6D13D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t5A5D119419473F2100F6D13D /* Build configuration list for PBXNativeTarget \"Quick-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t5A5D119119473F2100F6D13D /* Debug */,\n\t\t\t\t5A5D119219473F2100F6D13D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDA5663F31A4C8D8500193C88 /* Build configuration list for PBXNativeTarget \"QuickFocused-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDA5663F11A4C8D8500193C88 /* Debug */,\n\t\t\t\tDA5663F21A4C8D8500193C88 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDA9876BD1A4C70EB0004AA17 /* Build configuration list for PBXNativeTarget \"QuickFocused-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDA9876BB1A4C70EB0004AA17 /* Debug */,\n\t\t\t\tDA9876BC1A4C70EB0004AA17 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6B881943873100289F44 /* Build configuration list for PBXProject \"Quick\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA21943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA31943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6BA41943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA51943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA61943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDAEB6BA71943873200289F44 /* Build configuration list for PBXNativeTarget \"Quick-OSXTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDAEB6BA81943873200289F44 /* Debug */,\n\t\t\t\tDAEB6BA91943873200289F44 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = DAEB6B851943873100289F44 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-OSX\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DAEB6B981943873100289F44\"\n               BuildableName = \"Quick-OSXTests.xctest\"\n               BlueprintName = \"Quick-OSXTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DA5663E71A4C8D8500193C88\"\n               BuildableName = \"QuickFocused-OSXTests.xctest\"\n               BlueprintName = \"QuickFocused-OSXTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-OSX\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-iOS\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"5A5D118519473F2100F6D13D\"\n               BuildableName = \"Quick-iOSTests.xctest\"\n               BlueprintName = \"Quick-iOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DA9876B11A4C70EB0004AA17\"\n               BuildableName = \"QuickFocused-iOSTests.xctest\"\n               BlueprintName = \"QuickFocused-iOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-iOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Quick.xcodeproj/xcshareddata/xcschemes/Quick-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-tvOS\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CDD1BDCA4AB005013A2\"\n               BuildableName = \"Quick-tvOSTests.xctest\"\n               BlueprintName = \"Quick-tvOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CEF1BDCA4BB005013A2\"\n               BuildableName = \"QuickFocused-tvOSTests.xctest\"\n               BlueprintName = \"QuickFocused-tvOSTests\"\n               ReferencedContainer = \"container:Quick.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n            BuildableName = \"Quick.framework\"\n            BlueprintName = \"Quick-tvOS\"\n            ReferencedContainer = \"container:Quick.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/README.md",
    "content": "![](http://f.cl.ly/items/0r1E192C1R0b2g2Q3h2w/QuickLogo_Color.png)\n\nQuick is a behavior-driven development framework for Swift and Objective-C.\nInspired by [RSpec](https://github.com/rspec/rspec), [Specta](https://github.com/specta/specta), and [Ginkgo](https://github.com/onsi/ginkgo).\n\n![](https://raw.githubusercontent.com/Quick/Assets/master/Screenshots/QuickSpec%20screenshot.png)\n\n```swift\n// Swift\n\nimport Quick\nimport Nimble\n\nclass TableOfContentsSpec: QuickSpec {\n  override func spec() {\n    describe(\"the 'Documentation' directory\") {\n      it(\"has everything you need to get started\") {\n        let sections = Directory(\"Documentation\").sections\n        expect(sections).to(contain(\"Organized Tests with Quick Examples and Example Groups\"))\n        expect(sections).to(contain(\"Installing Quick\"))\n      }\n\n      context(\"if it doesn't have what you're looking for\") {\n        it(\"needs to be updated\") {\n          let you = You(awesome: true)\n          expect{you.submittedAnIssue}.toEventually(beTruthy())\n        }\n      }\n    }\n  }\n}\n```\n#### Nimble\nQuick comes together with [Nimble](https://github.com/Quick/Nimble) — a matcher framework for your tests. You can learn why `XCTAssert()` statements make your expectations unclear and how to fix that using Nimble assertions [here](./Documentation/en-us/NimbleAssertions.md).\n\n## Documentation\n\nAll documentation can be found in the [Documentation folder](./Documentation), including [detailed installation instructions](./Documentation/en-us/InstallingQuick.md) for CocoaPods, Carthage, Git submodules, and more. For example, you can install Quick and [Nimble](https://github.com/Quick/Nimble) using CocoaPods by adding the following to your Podfile:\n\n```rb\n# Podfile\n\nuse_frameworks!\n\ndef testing_pods\n    pod 'Quick'\n    pod 'Nimble'\nend\n\ntarget 'MyTests' do\n    testing_pods\nend\n\ntarget 'MyUITests' do\n    testing_pods\nend\n```\n\n## License\n\nApache 2.0 license. See the `LICENSE` file for details.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Rakefile",
    "content": "def run(command)\n  system(command) or raise \"RAKE TASK FAILED: #{command}\"\nend\n\ndef has_xcodebuild\n  system \"which xcodebuild >/dev/null\"\nend\n\nnamespace \"podspec\" do\n  desc \"Run lint for podspec\"\n  task :lint do\n    run \"bundle exec pod lib lint\"\n  end\nend\n\nnamespace \"test\" do\n  desc \"Run unit tests for all iOS targets\"\n  task :ios do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-iOS -destination 'platform=iOS Simulator,name=iPhone 6' clean test\"\n  end\n\n  desc \"Run unit tests for all tvOS targets\"\n  task :tvos do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-tvOS -destination 'platform=tvOS Simulator,name=Apple TV 1080p' clean test\"\n  end\n\n  desc \"Run unit tests for all OS X targets\"\n  task :osx do |t|\n    run \"xcodebuild -workspace Quick.xcworkspace -scheme Quick-OSX clean test\"\n  end\n\n  desc \"Run unit tests for all iOS, tvOS and OS X targets using xctool\"\n  task xctool: %w[test:xctool:version test:xctool:ios test:xctool:tvos test:xctool:osx]\n  namespace :xctool do\n    desc \"Run unit tests for all iOS targets using xctool\"\n    task :ios do |t|\n      Rake::Task[\"test:xctool:version\"].invoke\n      run \"xctool -workspace Quick.xcworkspace -scheme Quick-iOS -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 6' clean test\"\n    end\n\n    desc \"Run unit tests for all tvOS targets using xctool\"\n    task :tvos do |t|\n      Rake::Task[\"test:xctool:version\"].invoke\n      run \"xctool -workspace Quick.xcworkspace -scheme Quick-tvOS -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 1080p' clean test\"\n    end\n\n    desc \"Run unit tests for all OS X targets using xctool\"\n    task :osx do |t|\n      Rake::Task[\"test:xctool:version\"].invoke\n      run \"xctool -workspace Quick.xcworkspace -scheme Quick-OSX clean test\"\n    end\n\n    desc \"Print the version of xctool being used\"\n    task :version do\n      run \"echo Using xctool v`xctool -v`...\"\n    end\n  end\n\n  desc \"Run unit tests for the current platform built by the Swift Package Manager\"\n  task :swiftpm do |t|\n    run \"swift build --clean && swift build\"\n    run \".build/debug/QuickTests\"\n    run \".build/debug/QuickFocusedTests\"\n  end\nend\n\nnamespace \"templates\" do\n  install_dir = File.expand_path(\"~/Library/Developer/Xcode/Templates/File Templates/Quick\")\n  src_dir = File.expand_path(\"../Quick Templates\", __FILE__)\n\n  desc \"Install Quick templates\"\n  task :install do\n    if File.exists? install_dir\n      raise \"RAKE TASK FAILED: Quick templates are already installed at #{install_dir}\"\n    else\n      mkdir_p install_dir\n      cp_r src_dir, install_dir\n    end\n  end\n\n  desc \"Uninstall Quick templates\"\n  task :uninstall do\n    rm_rf install_dir\n  end\nend\n\nif has_xcodebuild then\n  task default: [\"test:ios\", \"test:tvos\", \"test:osx\"]\nelse\n  task default: [\"test:swiftpm\"]\nend\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Callsite.swift",
    "content": "import Foundation\n\n/**\n    An object encapsulating the file and line number at which\n    a particular example is defined.\n*/\nfinal public class Callsite: NSObject {\n    /**\n        The absolute path of the file in which an example is defined.\n    */\n    public let file: String\n\n    /**\n        The line number on which an example is defined.\n    */\n    public let line: UInt\n\n    internal init(file: String, line: UInt) {\n        self.file = file\n        self.line = line\n    }\n}\n\n/**\n    Returns a boolean indicating whether two Callsite objects are equal.\n    If two callsites are in the same file and on the same line, they must be equal.\n*/\npublic func ==(lhs: Callsite, rhs: Callsite) -> Bool {\n    return lhs.file == rhs.file && lhs.line == rhs.line\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Configuration/Configuration.swift",
    "content": "import Foundation\n\n/**\n    A closure that temporarily exposes a Configuration object within\n    the scope of the closure.\n*/\npublic typealias QuickConfigurer = (configuration: Configuration) -> ()\n\n/**\n    A closure that, given metadata about an example, returns a boolean value\n    indicating whether that example should be run.\n*/\npublic typealias ExampleFilter = (example: Example) -> Bool\n\n/**\n    A configuration encapsulates various options you can use\n    to configure Quick's behavior.\n*/\nfinal public class Configuration: NSObject {\n    internal let exampleHooks = ExampleHooks()\n    internal let suiteHooks = SuiteHooks()\n    internal var exclusionFilters: [ExampleFilter] = [{ example in\n        if let pending = example.filterFlags[Filter.pending] {\n            return pending\n        } else {\n            return false\n        }\n    }]\n    internal var inclusionFilters: [ExampleFilter] = [{ example in\n        if let focused = example.filterFlags[Filter.focused] {\n            return focused\n        } else {\n            return false\n        }\n    }]\n\n    /**\n        Run all examples if none match the configured filters. True by default.\n    */\n    public var runAllWhenEverythingFiltered = true\n\n    /**\n        Registers an inclusion filter.\n\n        All examples are filtered using all inclusion filters.\n        The remaining examples are run. If no examples remain, all examples are run.\n\n        - parameter filter: A filter that, given an example, returns a value indicating\n                       whether that example should be included in the examples\n                       that are run.\n    */\n    public func include(filter: ExampleFilter) {\n        inclusionFilters.append(filter)\n    }\n\n    /**\n        Registers an exclusion filter.\n\n        All examples that remain after being filtered by the inclusion filters are\n        then filtered via all exclusion filters.\n\n        - parameter filter: A filter that, given an example, returns a value indicating\n                       whether that example should be excluded from the examples\n                       that are run.\n    */\n    public func exclude(filter: ExampleFilter) {\n        exclusionFilters.append(filter)\n    }\n\n    /**\n        Identical to Quick.Configuration.beforeEach, except the closure is\n        provided with metadata on the example that the closure is being run\n        prior to.\n    */\n#if _runtime(_ObjC)\n    @objc(beforeEachWithMetadata:)\n    public func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n#else\n    public func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n#endif\n\n    /**\n        Like Quick.DSL.beforeEach, this configures Quick to execute the\n        given closure before each example that is run. The closure\n        passed to this method is executed before each example Quick runs,\n        globally across the test suite. You may call this method multiple\n        times across mulitple +[QuickConfigure configure:] methods in order\n        to define several closures to run before each example.\n\n        Note that, since Quick makes no guarantee as to the order in which\n        +[QuickConfiguration configure:] methods are evaluated, there is no\n        guarantee as to the order in which beforeEach closures are evaluated\n        either. Mulitple beforeEach defined on a single configuration, however,\n        will be executed in the order they're defined.\n\n        - parameter closure: The closure to be executed before each example\n                        in the test suite.\n    */\n    public func beforeEach(closure: BeforeExampleClosure) {\n        exampleHooks.appendBefore(closure)\n    }\n\n    /**\n        Identical to Quick.Configuration.afterEach, except the closure\n        is provided with metadata on the example that the closure is being\n        run after.\n    */\n#if _runtime(_ObjC)\n    @objc(afterEachWithMetadata:)\n    public func afterEach(closure: AfterExampleWithMetadataClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n#else\n    public func afterEach(closure: AfterExampleWithMetadataClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n#endif\n\n    /**\n        Like Quick.DSL.afterEach, this configures Quick to execute the\n        given closure after each example that is run. The closure\n        passed to this method is executed after each example Quick runs,\n        globally across the test suite. You may call this method multiple\n        times across mulitple +[QuickConfigure configure:] methods in order\n        to define several closures to run after each example.\n\n        Note that, since Quick makes no guarantee as to the order in which\n        +[QuickConfiguration configure:] methods are evaluated, there is no\n        guarantee as to the order in which afterEach closures are evaluated\n        either. Mulitple afterEach defined on a single configuration, however,\n        will be executed in the order they're defined.\n\n        - parameter closure: The closure to be executed before each example\n                        in the test suite.\n    */\n    public func afterEach(closure: AfterExampleClosure) {\n        exampleHooks.appendAfter(closure)\n    }\n\n    /**\n        Like Quick.DSL.beforeSuite, this configures Quick to execute\n        the given closure prior to any and all examples that are run.\n        The two methods are functionally equivalent.\n    */\n    public func beforeSuite(closure: BeforeSuiteClosure) {\n        suiteHooks.appendBefore(closure)\n    }\n\n    /**\n        Like Quick.DSL.afterSuite, this configures Quick to execute\n        the given closure after all examples have been run.\n        The two methods are functionally equivalent.\n    */\n    public func afterSuite(closure: AfterSuiteClosure) {\n        suiteHooks.appendAfter(closure)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class Configuration;\n\n/**\n Subclass QuickConfiguration and override the +[QuickConfiguration configure:]\n method in order to configure how Quick behaves when running specs, or to define\n shared examples that are used across spec files.\n */\n@interface QuickConfiguration : NSObject\n\n/**\n This method is executed on each subclass of this class before Quick runs\n any examples. You may override this method on as many subclasses as you like, but\n there is no guarantee as to the order in which these methods are executed.\n\n You can override this method in order to:\n\n 1. Configure how Quick behaves, by modifying properties on the Configuration object.\n    Setting the same properties in several methods has undefined behavior.\n\n 2. Define shared examples using `sharedExamples`.\n\n @param configuration A mutable object that is used to configure how Quick behaves on\n                      a framework level. For details on all the options, see the\n                      documentation in Configuration.swift.\n */\n+ (void)configure:(Configuration *)configuration;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.m",
    "content": "#import \"QuickConfiguration.h\"\n#import \"World.h\"\n#import <objc/runtime.h>\n\ntypedef void (^QCKClassEnumerationBlock)(Class klass);\n\n/**\n Finds all direct subclasses of the given class and passes them to the block provided.\n The classes are iterated over in the order that objc_getClassList returns them.\n\n @param klass The base class to find subclasses of.\n @param block A block that takes a Class. This block will be executed once for each subclass of klass.\n */\nvoid qck_enumerateSubclasses(Class klass, QCKClassEnumerationBlock block) {\n    Class *classes = NULL;\n    int classesCount = objc_getClassList(NULL, 0);\n\n    if (classesCount > 0) {\n        classes = (Class *)calloc(sizeof(Class), classesCount);\n        classesCount = objc_getClassList(classes, classesCount);\n\n        Class subclass, superclass;\n        for(int i = 0; i < classesCount; i++) {\n            subclass = classes[i];\n            superclass = class_getSuperclass(subclass);\n            if (superclass == klass && block) {\n                block(subclass);\n            }\n        }\n\n        free(classes);\n    }\n}\n\n@implementation QuickConfiguration\n\n#pragma mark - Object Lifecycle\n\n/**\n QuickConfiguration is not meant to be instantiated; it merely provides a hook\n for users to configure how Quick behaves. Raise an exception if an instance of\n QuickConfiguration is created.\n */\n- (instancetype)init {\n    NSString *className = NSStringFromClass([self class]);\n    NSString *selectorName = NSStringFromSelector(@selector(configure:));\n    [NSException raise:NSInternalInconsistencyException\n                format:@\"%@ is not meant to be instantiated; \"\n     @\"subclass %@ and override %@ to configure Quick.\",\n     className, className, selectorName];\n    return nil;\n}\n\n#pragma mark - NSObject Overrides\n\n/**\n Hook into when QuickConfiguration is initialized in the runtime in order to\n call +[QuickConfiguration configure:] on each of its subclasses.\n */\n+ (void)initialize {\n    // Only enumerate over the subclasses of QuickConfiguration, not any of its subclasses.\n    if ([self class] == [QuickConfiguration class]) {\n\n        // Only enumerate over subclasses once, even if +[QuickConfiguration initialize]\n        // were to be called several times. This is necessary because +[QuickSpec initialize]\n        // manually calls +[QuickConfiguration initialize].\n        static dispatch_once_t onceToken;\n        dispatch_once(&onceToken, ^{\n            qck_enumerateSubclasses([QuickConfiguration class], ^(__unsafe_unretained Class klass) {\n                [[World sharedWorld] configure:^(Configuration *configuration) {\n                    [klass configure:configuration];\n                }];\n            });\n            [[World sharedWorld] finalizeConfiguration];\n        });\n    }\n}\n\n#pragma mark - Public Interface\n\n+ (void)configure:(Configuration *)configuration { }\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Configuration/QuickConfiguration.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\npublic class QuickConfiguration {\n    public class func configure(configuration: Configuration) {}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/DSL/DSL.swift",
    "content": "/**\n    Defines a closure to be run prior to any examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n\n    If the test suite crashes before the first example is run, this closure\n    will not be executed.\n\n    - parameter closure: The closure to be run prior to any examples in the test suite.\n*/\npublic func beforeSuite(closure: BeforeSuiteClosure) {\n    World.sharedWorld.beforeSuite(closure)\n}\n\n/**\n    Defines a closure to be run after all of the examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n\n    If the test suite crashes before all examples are run, this closure\n    will not be executed.\n\n    - parameter closure: The closure to be run after all of the examples in the test suite.\n*/\npublic func afterSuite(closure: AfterSuiteClosure) {\n    World.sharedWorld.afterSuite(closure)\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n\n    - parameter name: The name of the shared example group. This must be unique across all shared example\n                 groups defined in a test suite.\n    - parameter closure: A closure containing the examples. This behaves just like an example group defined\n                    using `describe` or `context`--the closure may contain any number of `beforeEach`\n                    and `afterEach` closures, as well as any number of examples (defined using `it`).\n*/\npublic func sharedExamples(name: String, closure: () -> ()) {\n    World.sharedWorld.sharedExamples(name, closure: { (NSDictionary) in closure() })\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n\n    - parameter name: The name of the shared example group. This must be unique across all shared example\n                 groups defined in a test suite.\n    - parameter closure: A closure containing the examples. This behaves just like an example group defined\n                    using `describe` or `context`--the closure may contain any number of `beforeEach`\n                    and `afterEach` closures, as well as any number of examples (defined using `it`).\n\n                    The closure takes a SharedExampleContext as an argument. This context is a function\n                    that can be executed to retrieve parameters passed in via an `itBehavesLike` function.\n*/\npublic func sharedExamples(name: String, closure: SharedExampleClosure) {\n    World.sharedWorld.sharedExamples(name, closure: closure)\n}\n\n/**\n    Defines an example group. Example groups are logical groupings of examples.\n    Example groups can share setup and teardown code.\n\n    - parameter description: An arbitrary string describing the example group.\n    - parameter closure: A closure that can contain other examples.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n*/\npublic func describe(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.describe(description, flags: flags, closure: closure)\n}\n\n/**\n    Defines an example group. Equivalent to `describe`.\n*/\npublic func context(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.context(description, flags: flags, closure: closure)\n}\n\n/**\n    Defines a closure to be run prior to each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of beforeEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n\n    - parameter closure: The closure to be run prior to each example.\n*/\npublic func beforeEach(closure: BeforeExampleClosure) {\n    World.sharedWorld.beforeEach(closure)\n}\n\n/**\n    Identical to Quick.DSL.beforeEach, except the closure is provided with\n    metadata on the example that the closure is being run prior to.\n*/\npublic func beforeEach(closure: BeforeExampleWithMetadataClosure) {\n    World.sharedWorld.beforeEach(closure: closure)\n}\n\n/**\n    Defines a closure to be run after each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of afterEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n\n    - parameter closure: The closure to be run after each example.\n*/\npublic func afterEach(closure: AfterExampleClosure) {\n    World.sharedWorld.afterEach(closure)\n}\n\n/**\n    Identical to Quick.DSL.afterEach, except the closure is provided with\n    metadata on the example that the closure is being run after.\n*/\npublic func afterEach(closure: AfterExampleWithMetadataClosure) {\n    World.sharedWorld.afterEach(closure: closure)\n}\n\n/**\n    Defines an example. Examples use assertions to demonstrate how code should\n    behave. These are like \"tests\" in XCTest.\n\n    - parameter description: An arbitrary string describing what the example is meant to specify.\n    - parameter closure: A closure that can contain assertions.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the example. A sensible default is provided.\n    - parameter line: The line containing the example. A sensible default is provided.\n*/\npublic func it(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.it(description, flags: flags, file: file, line: line, closure: closure)\n}\n\n/**\n    Inserts the examples defined using a `sharedExamples` function into the current example group.\n    The shared examples are executed at this location, as if they were written out manually.\n\n    - parameter name: The name of the shared examples group to be executed. This must be identical to the\n                 name of a shared examples group defined using `sharedExamples`. If there are no shared\n                 examples that match the name given, an exception is thrown and the test suite will crash.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the current example group. A sensible default is provided.\n    - parameter line: The line containing the current example group. A sensible default is provided.\n*/\npublic func itBehavesLike(name: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line) {\n    itBehavesLike(name, flags: flags, file: file, line: line, sharedExampleContext: { return [:] })\n}\n\n/**\n    Inserts the examples defined using a `sharedExamples` function into the current example group.\n    The shared examples are executed at this location, as if they were written out manually.\n    This function also passes those shared examples a context that can be evaluated to give the shared\n    examples extra information on the subject of the example.\n\n    - parameter name: The name of the shared examples group to be executed. This must be identical to the\n                 name of a shared examples group defined using `sharedExamples`. If there are no shared\n                 examples that match the name given, an exception is thrown and the test suite will crash.\n    - parameter sharedExampleContext: A closure that, when evaluated, returns key-value pairs that provide the\n                                 shared examples with extra information on the subject of the example.\n    - parameter flags: A mapping of string keys to booleans that can be used to filter examples or example groups.\n                  Empty by default.\n    - parameter file: The absolute path to the file containing the current example group. A sensible default is provided.\n    - parameter line: The line containing the current example group. A sensible default is provided.\n*/\npublic func itBehavesLike(name: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, sharedExampleContext: SharedExampleContext) {\n    World.sharedWorld.itBehavesLike(name, sharedExampleContext: sharedExampleContext, flags: flags, file: file, line: line)\n}\n\n/**\n    Defines an example or example group that should not be executed. Use `pending` to temporarily disable\n    examples or groups that should not be run yet.\n\n    - parameter description: An arbitrary string describing the example or example group.\n    - parameter closure: A closure that will not be evaluated.\n*/\npublic func pending(description: String, closure: () -> ()) {\n    World.sharedWorld.pending(description, closure: closure)\n}\n\n/**\n    Use this to quickly mark a `describe` closure as pending.\n    This disables all examples within the closure.\n*/\npublic func xdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n    World.sharedWorld.xdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly mark a `context` closure as pending.\n    This disables all examples within the closure.\n*/\npublic func xcontext(description: String, flags: FilterFlags, closure: () -> ()) {\n    xdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly mark an `it` closure as pending.\n    This disables the example and ensures the code within the closure is never run.\n*/\npublic func xit(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.xit(description, flags: flags, file: file, line: line, closure: closure)\n}\n\n/**\n    Use this to quickly focus a `describe` closure, focusing the examples in the closure.\n    If any examples in the test suite are focused, only those examples are executed.\n    This trumps any explicitly focused or unfocused examples within the closure--they are all treated as focused.\n*/\npublic func fdescribe(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    World.sharedWorld.fdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly focus a `context` closure. Equivalent to `fdescribe`.\n*/\npublic func fcontext(description: String, flags: FilterFlags = [:], closure: () -> ()) {\n    fdescribe(description, flags: flags, closure: closure)\n}\n\n/**\n    Use this to quickly focus an `it` closure, focusing the example.\n    If any examples in the test suite are focused, only those examples are executed.\n*/\npublic func fit(description: String, flags: FilterFlags = [:], file: String = #file, line: UInt = #line, closure: () -> ()) {\n    World.sharedWorld.fit(description, flags: flags, file: file, line: line, closure: closure)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/DSL/QCKDSL.h",
    "content": "#import <Foundation/Foundation.h>\n\n@class ExampleMetadata;\n\n/**\n Provides a hook for Quick to be configured before any examples are run.\n Within this scope, override the +[QuickConfiguration configure:] method\n to set properties on a configuration object to customize Quick behavior.\n For details, see the documentation for Configuraiton.swift.\n\n @param name The name of the configuration class. Like any Objective-C\n             class name, this must be unique to the current runtime\n             environment.\n */\n#define QuickConfigurationBegin(name) \\\n    @interface name : QuickConfiguration; @end \\\n    @implementation name \\\n\n\n/**\n Marks the end of a Quick configuration.\n Make sure you put this after `QuickConfigurationBegin`.\n */\n#define QuickConfigurationEnd \\\n    @end \\\n\n\n/**\n Defines a new QuickSpec. Define examples and example groups within the space\n between this and `QuickSpecEnd`.\n\n @param name The name of the spec class. Like any Objective-C class name, this\n             must be unique to the current runtime environment.\n */\n#define QuickSpecBegin(name) \\\n    @interface name : QuickSpec; @end \\\n    @implementation name \\\n    - (void)spec { \\\n\n\n/**\n Marks the end of a QuickSpec. Make sure you put this after `QuickSpecBegin`.\n */\n#define QuickSpecEnd \\\n    } \\\n    @end \\\n\ntypedef NSDictionary *(^QCKDSLSharedExampleContext)(void);\ntypedef void (^QCKDSLSharedExampleBlock)(QCKDSLSharedExampleContext);\ntypedef void (^QCKDSLEmptyBlock)(void);\ntypedef void (^QCKDSLExampleMetadataBlock)(ExampleMetadata *exampleMetadata);\n\n#define QUICK_EXPORT FOUNDATION_EXPORT\n\nQUICK_EXPORT void qck_beforeSuite(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_afterSuite(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure);\nQUICK_EXPORT void qck_describe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_context(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_beforeEach(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure);\nQUICK_EXPORT void qck_afterEach(QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_afterEachWithMetadata(QCKDSLExampleMetadataBlock closure);\nQUICK_EXPORT void qck_pending(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_xdescribe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_xcontext(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_fdescribe(NSString *description, QCKDSLEmptyBlock closure);\nQUICK_EXPORT void qck_fcontext(NSString *description, QCKDSLEmptyBlock closure);\n\n#ifndef QUICK_DISABLE_SHORT_SYNTAX\n/**\n    Defines a closure to be run prior to any examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n \n    If the test suite crashes before the first example is run, this closure\n    will not be executed.\n \n    @param closure The closure to be run prior to any examples in the test suite.\n */\nstatic inline void beforeSuite(QCKDSLEmptyBlock closure) {\n    qck_beforeSuite(closure);\n}\n\n\n/**\n    Defines a closure to be run after all of the examples in the test suite.\n    You may define an unlimited number of these closures, but there is no\n    guarantee as to the order in which they're run.\n     \n    If the test suite crashes before all examples are run, this closure\n    will not be executed.\n \n    @param closure The closure to be run after all of the examples in the test suite.\n */\nstatic inline void afterSuite(QCKDSLEmptyBlock closure) {\n    qck_afterSuite(closure);\n}\n\n/**\n    Defines a group of shared examples. These examples can be re-used in several locations\n    by using the `itBehavesLike` function.\n \n    @param name The name of the shared example group. This must be unique across all shared example\n                groups defined in a test suite.\n    @param closure A closure containing the examples. This behaves just like an example group defined\n                   using `describe` or `context`--the closure may contain any number of `beforeEach`\n                   and `afterEach` closures, as well as any number of examples (defined using `it`).\n */\nstatic inline void sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure) {\n    qck_sharedExamples(name, closure);\n}\n\n/**\n    Defines an example group. Example groups are logical groupings of examples.\n    Example groups can share setup and teardown code.\n \n    @param description An arbitrary string describing the example group.\n    @param closure A closure that can contain other examples.\n */\nstatic inline void describe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_describe(description, closure);\n}\n\n/**\n    Defines an example group. Equivalent to `describe`.\n */\nstatic inline void context(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_context(description, closure);\n}\n\n/**\n    Defines a closure to be run prior to each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of beforeEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n \n    @param closure The closure to be run prior to each example.\n */\nstatic inline void beforeEach(QCKDSLEmptyBlock closure) {\n    qck_beforeEach(closure);\n}\n\n/**\n    Identical to QCKDSL.beforeEach, except the closure is provided with\n    metadata on the example that the closure is being run prior to.\n */\nstatic inline void beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    qck_beforeEachWithMetadata(closure);\n}\n\n/**\n    Defines a closure to be run after each example in the current example\n    group. This closure is not run for pending or otherwise disabled examples.\n    An example group may contain an unlimited number of afterEach. They'll be\n    run in the order they're defined, but you shouldn't rely on that behavior.\n \n    @param closure The closure to be run after each example.\n */\nstatic inline void afterEach(QCKDSLEmptyBlock closure) {\n    qck_afterEach(closure);\n}\n\n/**\n    Identical to QCKDSL.afterEach, except the closure is provided with\n    metadata on the example that the closure is being run after.\n */\nstatic inline void afterEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    qck_afterEachWithMetadata(closure);\n}\n\n/**\n    Defines an example or example group that should not be executed. Use `pending` to temporarily disable\n    examples or groups that should not be run yet.\n \n    @param description An arbitrary string describing the example or example group.\n    @param closure A closure that will not be evaluated.\n */\nstatic inline void pending(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_pending(description, closure);\n}\n\n/**\n    Use this to quickly mark a `describe` block as pending.\n    This disables all examples within the block.\n */\nstatic inline void xdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xdescribe(description, closure);\n}\n\n/**\n    Use this to quickly mark a `context` block as pending.\n    This disables all examples within the block.\n */\nstatic inline void xcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xcontext(description, closure);\n}\n\n/**\n    Use this to quickly focus a `describe` block, focusing the examples in the block.\n    If any examples in the test suite are focused, only those examples are executed.\n    This trumps any explicitly focused or unfocused examples within the block--they are all treated as focused.\n */\nstatic inline void fdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fdescribe(description, closure);\n}\n\n/**\n    Use this to quickly focus a `context` block. Equivalent to `fdescribe`.\n */\nstatic inline void fcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fcontext(description, closure);\n}\n\n#define it qck_it\n#define xit qck_xit\n#define fit qck_fit\n#define itBehavesLike qck_itBehavesLike\n#define xitBehavesLike qck_xitBehavesLike\n#define fitBehavesLike qck_fitBehavesLike\n#endif\n\n#define qck_it qck_it_builder(@{}, @(__FILE__), __LINE__)\n#define qck_xit qck_it_builder(@{Filter.pending: @YES}, @(__FILE__), __LINE__)\n#define qck_fit qck_it_builder(@{Filter.focused: @YES}, @(__FILE__), __LINE__)\n#define qck_itBehavesLike qck_itBehavesLike_builder(@{}, @(__FILE__), __LINE__)\n#define qck_xitBehavesLike qck_itBehavesLike_builder(@{Filter.pending: @YES}, @(__FILE__), __LINE__)\n#define qck_fitBehavesLike qck_itBehavesLike_builder(@{Filter.focused: @YES}, @(__FILE__), __LINE__)\n\ntypedef void (^QCKItBlock)(NSString *description, QCKDSLEmptyBlock closure);\ntypedef void (^QCKItBehavesLikeBlock)(NSString *description, QCKDSLSharedExampleContext context);\n\nQUICK_EXPORT QCKItBlock qck_it_builder(NSDictionary *flags, NSString *file, NSUInteger line);\nQUICK_EXPORT QCKItBehavesLikeBlock qck_itBehavesLike_builder(NSDictionary *flags, NSString *file, NSUInteger line);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/DSL/QCKDSL.m",
    "content": "#import \"QCKDSL.h\"\n#import \"World.h\"\n#import \"World+DSL.h\"\n\nvoid qck_beforeSuite(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] beforeSuite:closure];\n}\n\nvoid qck_afterSuite(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] afterSuite:closure];\n}\n\nvoid qck_sharedExamples(NSString *name, QCKDSLSharedExampleBlock closure) {\n    [[World sharedWorld] sharedExamples:name closure:closure];\n}\n\nvoid qck_describe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] describe:description flags:@{} closure:closure];\n}\n\nvoid qck_context(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_describe(description, closure);\n}\n\nvoid qck_beforeEach(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] beforeEach:closure];\n}\n\nvoid qck_beforeEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    [[World sharedWorld] beforeEachWithMetadata:closure];\n}\n\nvoid qck_afterEach(QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] afterEach:closure];\n}\n\nvoid qck_afterEachWithMetadata(QCKDSLExampleMetadataBlock closure) {\n    [[World sharedWorld] afterEachWithMetadata:closure];\n}\n\nQCKItBlock qck_it_builder(NSDictionary *flags, NSString *file, NSUInteger line) {\n    return ^(NSString *description, QCKDSLEmptyBlock closure) {\n        [[World sharedWorld] itWithDescription:description\n                                         flags:flags\n                                          file:file\n                                          line:line\n                                       closure:closure];\n    };\n}\n\nQCKItBehavesLikeBlock qck_itBehavesLike_builder(NSDictionary *flags, NSString *file, NSUInteger line) {\n    return ^(NSString *name, QCKDSLSharedExampleContext context) {\n        [[World sharedWorld] itBehavesLikeSharedExampleNamed:name\n                                        sharedExampleContext:context\n                                                       flags:flags\n                                                        file:file\n                                                        line:line];\n    };\n}\n\nvoid qck_pending(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] pending:description closure:closure];\n}\n\nvoid qck_xdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] xdescribe:description flags:@{} closure:closure];\n}\n\nvoid qck_xcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_xdescribe(description, closure);\n}\n\nvoid qck_fdescribe(NSString *description, QCKDSLEmptyBlock closure) {\n    [[World sharedWorld] fdescribe:description flags:@{} closure:closure];\n}\n\nvoid qck_fcontext(NSString *description, QCKDSLEmptyBlock closure) {\n    qck_fdescribe(description, closure);\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/DSL/World+DSL.h",
    "content": "#import <Quick/Quick-Swift.h>\n\n@interface World (SWIFT_EXTENSION(Quick))\n- (void)beforeSuite:(void (^ __nonnull)(void))closure;\n- (void)afterSuite:(void (^ __nonnull)(void))closure;\n- (void)sharedExamples:(NSString * __nonnull)name closure:(void (^ __nonnull)(NSDictionary * __nonnull (^ __nonnull)(void)))closure;\n- (void)describe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)context:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)fdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)xdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure;\n- (void)beforeEach:(void (^ __nonnull)(void))closure;\n- (void)beforeEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure;\n- (void)afterEach:(void (^ __nonnull)(void))closure;\n- (void)afterEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure;\n- (void)itWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)fitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)xitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure;\n- (void)itBehavesLikeSharedExampleNamed:(NSString * __nonnull)name sharedExampleContext:(NSDictionary * __nonnull (^ __nonnull)(void))sharedExampleContext flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line;\n- (void)pending:(NSString * __nonnull)description closure:(void (^ __nonnull)(void))closure;\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/DSL/World+DSL.swift",
    "content": "import Foundation\n\n/**\n    Adds methods to World to support top-level DSL functions (Swift) and\n    macros (Objective-C). These functions map directly to the DSL that test\n    writers use in their specs.\n*/\nextension World {\n    internal func beforeSuite(closure: BeforeSuiteClosure) {\n        suiteHooks.appendBefore(closure)\n    }\n\n    internal func afterSuite(closure: AfterSuiteClosure) {\n        suiteHooks.appendAfter(closure)\n    }\n\n    internal func sharedExamples(name: String, closure: SharedExampleClosure) {\n        registerSharedExample(name, closure: closure)\n    }\n\n    internal func describe(description: String, flags: FilterFlags, closure: () -> ()) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'describe' cannot be used inside '\\(currentPhase)', 'describe' may only be used inside 'context' or 'describe'. \")\n        }\n        guard currentExampleGroup != nil else {\n            raiseError(\"Error: example group was not created by its parent QuickSpec spec. Check that describe() or context() was used in QuickSpec.spec() and not a more general context (i.e. an XCTestCase test)\")\n        }\n        let group = ExampleGroup(description: description, flags: flags)\n        currentExampleGroup.appendExampleGroup(group)\n        performWithCurrentExampleGroup(group, closure: closure)\n    }\n\n    internal func context(description: String, flags: FilterFlags, closure: () -> ()) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'context' cannot be used inside '\\(currentPhase)', 'context' may only be used inside 'context' or 'describe'. \")\n        }\n        self.describe(description, flags: flags, closure: closure)\n    }\n\n    internal func fdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n        var focusedFlags = flags\n        focusedFlags[Filter.focused] = true\n        self.describe(description, flags: focusedFlags, closure: closure)\n    }\n\n    internal func xdescribe(description: String, flags: FilterFlags, closure: () -> ()) {\n        var pendingFlags = flags\n        pendingFlags[Filter.pending] = true\n        self.describe(description, flags: pendingFlags, closure: closure)\n    }\n\n    internal func beforeEach(closure: BeforeExampleClosure) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'beforeEach' cannot be used inside '\\(currentPhase)', 'beforeEach' may only be used inside 'context' or 'describe'. \")\n        }\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n\n#if _runtime(_ObjC)\n    @objc(beforeEachWithMetadata:)\n    internal func beforeEach(closure closure: BeforeExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n#else\n    internal func beforeEach(closure closure: BeforeExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendBefore(closure)\n    }\n#endif\n\n    internal func afterEach(closure: AfterExampleClosure) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'afterEach' cannot be used inside '\\(currentPhase)', 'afterEach' may only be used inside 'context' or 'describe'. \")\n        }\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n\n#if _runtime(_ObjC)\n    @objc(afterEachWithMetadata:)\n    internal func afterEach(closure closure: AfterExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n#else\n    internal func afterEach(closure closure: AfterExampleWithMetadataClosure) {\n        currentExampleGroup.hooks.appendAfter(closure)\n    }\n#endif\n\n    internal func it(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        if beforesCurrentlyExecuting {\n            raiseError(\"'it' cannot be used inside 'beforeEach', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        if aftersCurrentlyExecuting {\n            raiseError(\"'it' cannot be used inside 'afterEach', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'it' cannot be used inside 'it', 'it' may only be used inside 'context' or 'describe'. \")\n        }\n        let callsite = Callsite(file: file, line: line)\n        let example = Example(description: description, callsite: callsite, flags: flags, closure: closure)\n        currentExampleGroup.appendExample(example)\n    }\n\n    internal func fit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        var focusedFlags = flags\n        focusedFlags[Filter.focused] = true\n        self.it(description, flags: focusedFlags, file: file, line: line, closure: closure)\n    }\n\n    internal func xit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        var pendingFlags = flags\n        pendingFlags[Filter.pending] = true\n        self.it(description, flags: pendingFlags, file: file, line: line, closure: closure)\n    }\n\n    internal func itBehavesLike(name: String, sharedExampleContext: SharedExampleContext, flags: FilterFlags, file: String, line: UInt) {\n        guard currentExampleMetadata == nil else {\n            raiseError(\"'itBehavesLike' cannot be used inside '\\(currentPhase)', 'itBehavesLike' may only be used inside 'context' or 'describe'. \")\n        }\n        let callsite = Callsite(file: file, line: line)\n        let closure = World.sharedWorld.sharedExample(name)\n\n        let group = ExampleGroup(description: name, flags: flags)\n        currentExampleGroup.appendExampleGroup(group)\n        performWithCurrentExampleGroup(group) {\n            closure(sharedExampleContext)\n        }\n\n        group.walkDownExamples { (example: Example) in\n            example.isSharedExample = true\n            example.callsite = callsite\n        }\n    }\n\n#if _runtime(_ObjC)\n    @objc(itWithDescription:flags:file:line:closure:)\n    private func objc_it(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        it(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(fitWithDescription:flags:file:line:closure:)\n    private func objc_fit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        fit(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(xitWithDescription:flags:file:line:closure:)\n    private func objc_xit(description: String, flags: FilterFlags, file: String, line: UInt, closure: () -> ()) {\n        xit(description, flags: flags, file: file, line: line, closure: closure)\n    }\n\n    @objc(itBehavesLikeSharedExampleNamed:sharedExampleContext:flags:file:line:)\n    private func objc_itBehavesLike(name: String, sharedExampleContext: SharedExampleContext, flags: FilterFlags, file: String, line: UInt) {\n        itBehavesLike(name, sharedExampleContext: sharedExampleContext, flags: flags, file: file, line: line)\n    }\n#endif\n\n    internal func pending(description: String, closure: () -> ()) {\n        print(\"Pending: \\(description)\")\n    }\n\n    private var currentPhase: String {\n        if beforesCurrentlyExecuting {\n            return \"beforeEach\"\n        } else if aftersCurrentlyExecuting {\n            return \"afterEach\"\n        }\n\n        return \"it\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/ErrorUtility.swift",
    "content": "import Foundation\n\n@noreturn internal func raiseError(message: String) {\n#if _runtime(_ObjC)\n    NSException(name: NSInternalInconsistencyException, reason: message, userInfo: nil).raise()\n#endif\n\n    // This won't be reached when ObjC is available and the exception above is raisd\n    fatalError(message)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Example.swift",
    "content": "import Foundation\n\nprivate var numberOfExamplesRun = 0\n\n/**\n    Examples, defined with the `it` function, use assertions to\n    demonstrate how code should behave. These are like \"tests\" in XCTest.\n*/\nfinal public class Example: NSObject {\n    /**\n        A boolean indicating whether the example is a shared example;\n        i.e.: whether it is an example defined with `itBehavesLike`.\n    */\n    public var isSharedExample = false\n\n    /**\n        The site at which the example is defined.\n        This must be set correctly in order for Xcode to highlight\n        the correct line in red when reporting a failure.\n    */\n    public var callsite: Callsite\n\n    weak internal var group: ExampleGroup?\n\n    private let internalDescription: String\n    private let closure: () -> ()\n    private let flags: FilterFlags\n\n    internal init(description: String, callsite: Callsite, flags: FilterFlags, closure: () -> ()) {\n        self.internalDescription = description\n        self.closure = closure\n        self.callsite = callsite\n        self.flags = flags\n    }\n    \n    public override var description: String {\n        return internalDescription\n    }\n\n    /**\n        The example name. A name is a concatenation of the name of\n        the example group the example belongs to, followed by the\n        description of the example itself.\n\n        The example name is used to generate a test method selector\n        to be displayed in Xcode's test navigator.\n    */\n    public var name: String {\n        switch group!.name {\n        case .Some(let groupName): return \"\\(groupName), \\(description)\"\n        case .None: return description\n        }\n    }\n\n    /**\n        Executes the example closure, as well as all before and after\n        closures defined in the its surrounding example groups.\n    */\n    public func run() {\n        let world = World.sharedWorld\n\n        if numberOfExamplesRun == 0 {\n            world.suiteHooks.executeBefores()\n        }\n\n        let exampleMetadata = ExampleMetadata(example: self, exampleIndex: numberOfExamplesRun)\n        world.currentExampleMetadata = exampleMetadata\n\n        world.exampleHooks.executeBefores(exampleMetadata)\n        group!.phase = .BeforesExecuting\n        for before in group!.befores {\n            before(exampleMetadata: exampleMetadata)\n        }\n        group!.phase = .BeforesFinished\n\n        closure()\n\n        group!.phase = .AftersExecuting\n        for after in group!.afters {\n            after(exampleMetadata: exampleMetadata)\n        }\n        group!.phase = .AftersFinished\n        world.exampleHooks.executeAfters(exampleMetadata)\n\n        numberOfExamplesRun += 1\n\n        if !world.isRunningAdditionalSuites && numberOfExamplesRun >= world.includedExampleCount {\n            world.suiteHooks.executeAfters()\n        }\n    }\n\n    /**\n        Evaluates the filter flags set on this example and on the example groups\n        this example belongs to. Flags set on the example are trumped by flags on\n        the example group it belongs to. Flags on inner example groups are trumped\n        by flags on outer example groups.\n    */\n    internal var filterFlags: FilterFlags {\n        var aggregateFlags = flags\n        for (key, value) in group!.filterFlags {\n            aggregateFlags[key] = value\n        }\n        return aggregateFlags\n    }\n}\n\n/**\n    Returns a boolean indicating whether two Example objects are equal.\n    If two examples are defined at the exact same callsite, they must be equal.\n*/\npublic func ==(lhs: Example, rhs: Example) -> Bool {\n    return lhs.callsite == rhs.callsite\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/ExampleGroup.swift",
    "content": "import Foundation\n\n/**\n    Example groups are logical groupings of examples, defined with\n    the `describe` and `context` functions. Example groups can share\n    setup and teardown code.\n*/\nfinal public class ExampleGroup: NSObject {\n    weak internal var parent: ExampleGroup?\n    internal let hooks = ExampleHooks()\n    \n    internal var phase: HooksPhase = .NothingExecuted\n\n    private let internalDescription: String\n    private let flags: FilterFlags\n    private let isInternalRootExampleGroup: Bool\n    private var childGroups = [ExampleGroup]()\n    private var childExamples = [Example]()\n\n    internal init(description: String, flags: FilterFlags, isInternalRootExampleGroup: Bool = false) {\n        self.internalDescription = description\n        self.flags = flags\n        self.isInternalRootExampleGroup = isInternalRootExampleGroup\n    }\n\n    public override var description: String {\n        return internalDescription\n    }\n\n    /**\n        Returns a list of examples that belong to this example group,\n        or to any of its descendant example groups.\n    */\n    public var examples: [Example] {\n        var examples = childExamples\n        for group in childGroups {\n            examples.appendContentsOf(group.examples)\n        }\n        return examples\n    }\n\n    internal var name: String? {\n        if let parent = parent {\n            switch(parent.name) {\n            case .Some(let name): return \"\\(name), \\(description)\"\n            case .None: return description\n            }\n        } else {\n            return isInternalRootExampleGroup ? nil : description\n        }\n    }\n\n    internal var filterFlags: FilterFlags {\n        var aggregateFlags = flags\n        walkUp() { (group: ExampleGroup) -> () in\n            for (key, value) in group.flags {\n                aggregateFlags[key] = value\n            }\n        }\n        return aggregateFlags\n    }\n\n    internal var befores: [BeforeExampleWithMetadataClosure] {\n        var closures = Array(hooks.befores.reverse())\n        walkUp() { (group: ExampleGroup) -> () in\n            closures.appendContentsOf(Array(group.hooks.befores.reverse()))\n        }\n        return Array(closures.reverse())\n    }\n\n    internal var afters: [AfterExampleWithMetadataClosure] {\n        var closures = hooks.afters\n        walkUp() { (group: ExampleGroup) -> () in\n            closures.appendContentsOf(group.hooks.afters)\n        }\n        return closures\n    }\n\n    internal func walkDownExamples(callback: (example: Example) -> ()) {\n        for example in childExamples {\n            callback(example: example)\n        }\n        for group in childGroups {\n            group.walkDownExamples(callback)\n        }\n    }\n\n    internal func appendExampleGroup(group: ExampleGroup) {\n        group.parent = self\n        childGroups.append(group)\n    }\n\n    internal func appendExample(example: Example) {\n        example.group = self\n        childExamples.append(example)\n    }\n\n    private func walkUp(callback: (group: ExampleGroup) -> ()) {\n        var group = self\n        while let parent = group.parent {\n            callback(group: parent)\n            group = parent\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/ExampleMetadata.swift",
    "content": "import Foundation\n\n/**\n    A class that encapsulates information about an example,\n    including the index at which the example was executed, as\n    well as the example itself.\n*/\nfinal public class ExampleMetadata: NSObject {\n    /**\n        The example for which this metadata was collected.\n    */\n    public let example: Example\n\n    /**\n        The index at which this example was executed in the\n        test suite.\n    */\n    public let exampleIndex: Int\n\n    internal init(example: Example, exampleIndex: Int) {\n        self.example = example\n        self.exampleIndex = exampleIndex\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Filter.swift",
    "content": "import Foundation\n\n/**\n    A mapping of string keys to booleans that can be used to\n    filter examples or example groups. For example, a \"focused\"\n    example would have the flags [Focused: true].\n*/\npublic typealias FilterFlags = [String: Bool]\n\n/**\n    A namespace for filter flag keys, defined primarily to make the\n    keys available in Objective-C.\n*/\nfinal public class Filter: NSObject {\n    /**\n        Example and example groups with [Focused: true] are included in test runs,\n        excluding all other examples without this flag. Use this to only run one or\n        two tests that you're currently focusing on.\n    */\n    public class var focused: String {\n        return \"focused\"\n    }\n\n    /**\n        Example and example groups with [Pending: true] are excluded from test runs.\n        Use this to temporarily suspend examples that you know do not pass yet.\n    */\n    public class var pending: String {\n        return \"pending\"\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Hooks/Closures.swift",
    "content": "// MARK: Example Hooks\n\n/**\n    A closure executed before an example is run.\n*/\npublic typealias BeforeExampleClosure = () -> ()\n\n/**\n    A closure executed before an example is run. The closure is given example metadata,\n    which contains information about the example that is about to be run.\n*/\npublic typealias BeforeExampleWithMetadataClosure = (exampleMetadata: ExampleMetadata) -> ()\n\n/**\n    A closure executed after an example is run.\n*/\npublic typealias AfterExampleClosure = BeforeExampleClosure\n\n/**\n    A closure executed after an example is run. The closure is given example metadata,\n    which contains information about the example that has just finished running.\n*/\npublic typealias AfterExampleWithMetadataClosure = BeforeExampleWithMetadataClosure\n\n// MARK: Suite Hooks\n\n/**\n    A closure executed before any examples are run.\n*/\npublic typealias BeforeSuiteClosure = () -> ()\n\n/**\n    A closure executed after all examples have finished running.\n*/\npublic typealias AfterSuiteClosure = BeforeSuiteClosure\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Hooks/ExampleHooks.swift",
    "content": "/**\n    A container for closures to be executed before and after each example.\n*/\nfinal internal class ExampleHooks {\n    internal var befores: [BeforeExampleWithMetadataClosure] = []\n    internal var afters: [AfterExampleWithMetadataClosure] = []\n    internal var phase: HooksPhase = .NothingExecuted\n\n    internal func appendBefore(closure: BeforeExampleWithMetadataClosure) {\n        befores.append(closure)\n    }\n\n    internal func appendBefore(closure: BeforeExampleClosure) {\n        befores.append { (exampleMetadata: ExampleMetadata) in closure() }\n    }\n\n    internal func appendAfter(closure: AfterExampleWithMetadataClosure) {\n        afters.append(closure)\n    }\n\n    internal func appendAfter(closure: AfterExampleClosure) {\n        afters.append { (exampleMetadata: ExampleMetadata) in closure() }\n    }\n\n    internal func executeBefores(exampleMetadata: ExampleMetadata) {\n        phase = .BeforesExecuting\n        for before in befores {\n            before(exampleMetadata: exampleMetadata)\n        }\n        \n        phase = .BeforesFinished\n    }\n\n    internal func executeAfters(exampleMetadata: ExampleMetadata) {\n        phase = .AftersExecuting\n        for after in afters {\n            after(exampleMetadata: exampleMetadata)\n        }\n\n        phase = .AftersFinished\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Hooks/HooksPhase.swift",
    "content": "/**\n A description of the execution cycle of the current example with\n respect to the hooks of that example.\n */\ninternal enum HooksPhase: Int {\n    case NothingExecuted = 0\n    case BeforesExecuting\n    case BeforesFinished\n    case AftersExecuting\n    case AftersFinished\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Hooks/SuiteHooks.swift",
    "content": "/**\n    A container for closures to be executed before and after all examples.\n*/\nfinal internal class SuiteHooks {\n    internal var befores: [BeforeSuiteClosure] = []\n    internal var afters: [AfterSuiteClosure] = []\n    internal var phase: HooksPhase = .NothingExecuted\n\n    internal func appendBefore(closure: BeforeSuiteClosure) {\n        befores.append(closure)\n    }\n\n    internal func appendAfter(closure: AfterSuiteClosure) {\n        afters.append(closure)\n    }\n\n    internal func executeBefores() {\n        phase = .BeforesExecuting\n        for before in befores {\n            before()\n        }\n        phase = .BeforesFinished\n    }\n\n    internal func executeAfters() {\n        phase = .AftersExecuting\n        for after in afters {\n            after()\n        }\n        phase = .AftersFinished\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>${CURRENT_PROJECT_VERSION}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 - present, Quick Team. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/NSBundle+CurrentTestBundle.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\nimport Foundation\n\nextension NSBundle {\n\n    /**\n     Locates the first bundle with a '.xctest' file extension.\n     */\n    internal static var currentTestBundle: NSBundle? {\n        return allBundles().lazy\n            .filter {\n                $0.bundlePath.hasSuffix(\".xctest\")\n            }\n            .first\n    }\n\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/NSString+QCKSelectorName.h",
    "content": "#import <Foundation/Foundation.h>\n\n/**\n QuickSpec converts example names into test methods.\n Those test methods need valid selector names, which means no whitespace,\n control characters, etc. This category gives NSString objects an easy way\n to replace those illegal characters with underscores.\n */\n@interface NSString (QCKSelectorName)\n\n/**\n Returns a string with underscores in place of all characters that cannot\n be included in a selector (SEL) name.\n */\n@property (nonatomic, readonly) NSString *qck_selectorName;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/NSString+QCKSelectorName.m",
    "content": "#import \"NSString+QCKSelectorName.h\"\n\n@implementation NSString (QCKSelectorName)\n\n- (NSString *)qck_selectorName {\n    static NSMutableCharacterSet *invalidCharacters = nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        invalidCharacters = [NSMutableCharacterSet new];\n\n        NSCharacterSet *whitespaceCharacterSet = [NSCharacterSet whitespaceCharacterSet];\n        NSCharacterSet *newlineCharacterSet = [NSCharacterSet newlineCharacterSet];\n        NSCharacterSet *illegalCharacterSet = [NSCharacterSet illegalCharacterSet];\n        NSCharacterSet *controlCharacterSet = [NSCharacterSet controlCharacterSet];\n        NSCharacterSet *punctuationCharacterSet = [NSCharacterSet punctuationCharacterSet];\n        NSCharacterSet *nonBaseCharacterSet = [NSCharacterSet nonBaseCharacterSet];\n        NSCharacterSet *symbolCharacterSet = [NSCharacterSet symbolCharacterSet];\n\n        [invalidCharacters formUnionWithCharacterSet:whitespaceCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:newlineCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:illegalCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:controlCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:punctuationCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:nonBaseCharacterSet];\n        [invalidCharacters formUnionWithCharacterSet:symbolCharacterSet];\n    });\n\n    NSArray *validComponents = [self componentsSeparatedByCharactersInSet:invalidCharacters];\n\n    NSString *result = [validComponents componentsJoinedByString:@\"_\"];\n    \n    return ([result length] == 0\n            ? @\"_\"\n            : result);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/Quick.h",
    "content": "#import <Foundation/Foundation.h>\n\n//! Project version number for Quick.\nFOUNDATION_EXPORT double QuickVersionNumber;\n\n//! Project version string for Quick.\nFOUNDATION_EXPORT const unsigned char QuickVersionString[];\n\n#import \"QuickSpec.h\"\n#import \"QCKDSL.h\"\n#import \"QuickConfiguration.h\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickMain.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\n/// When using Quick with swift-corelibs-xctest, automatic discovery of specs and\n/// configurations is not available. Instead, you should create a standalone\n/// executable and call this function from its main.swift file. This will execute\n/// the specs and then terminate the process with an exit code of 0 if the tests\n/// passed, or 1 if there were any failures.\n///\n/// Quick is known to work with the DEVELOPMENT-SNAPSHOT-2016-02-08-a Swift toolchain.\n@noreturn public func QCKMain(specs: [XCTestCase], configurations: [QuickConfiguration.Type] = []) {\n    // Perform all configuration (ensures that shared examples have been discovered)\n    World.sharedWorld.configure { configuration in\n        for configurationClass in configurations {\n            configurationClass.configure(configuration)\n        }\n    }\n    World.sharedWorld.finalizeConfiguration()\n\n    // Gather all examples (ensures suite hooks have been discovered)\n    for case let spec as QuickSpec in specs {\n        spec.gatherExamplesIfNeeded()\n    }\n\n    XCTMain(specs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickSelectedTestSuiteBuilder.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\n/**\n Responsible for building a \"Selected tests\" suite. This corresponds to a single\n spec, and all its examples.\n */\ninternal class QuickSelectedTestSuiteBuilder: QuickTestSuiteBuilder {\n\n    /**\n     The test spec class to run.\n     */\n    let testCaseClass: AnyClass!\n\n    /**\n     For Objective-C classes, returns the class name. For Swift classes without,\n     an explicit Objective-C name, returns a module-namespaced class name\n     (e.g., \"FooTests.FooSpec\").\n     */\n    var testSuiteClassName: String {\n        return NSStringFromClass(testCaseClass)\n    }\n\n    /**\n     Given a test case name:\n\n        FooSpec/testFoo\n\n     Optionally constructs a test suite builder for the named test case class\n     in the running test bundle.\n\n     If no test bundle can be found, or the test case class can't be found,\n     initialization fails and returns `nil`.\n     */\n    init?(forTestCaseWithName name: String) {\n        guard let testCaseClass = testCaseClassForTestCaseWithName(name) else {\n            self.testCaseClass = nil\n            return nil\n        }\n\n        self.testCaseClass = testCaseClass\n    }\n\n    /**\n     Returns a `QuickTestSuite` that runs the associated test case class.\n     */\n    func buildTestSuite() -> QuickTestSuite {\n        return QuickTestSuite(forTestCaseClass: testCaseClass)\n    }\n\n}\n\n/**\n Searches `NSBundle.allBundles()` for an xctest bundle, then looks up the named\n test case class in that bundle.\n\n Returns `nil` if a bundle or test case class cannot be found.\n */\nprivate func testCaseClassForTestCaseWithName(name: String) -> AnyClass? {\n    func extractClassName(name: String) -> String? {\n        return name.characters.split(\"/\").first.map(String.init)\n    }\n\n    guard let className = extractClassName(name) else { return nil }\n    guard let bundle = NSBundle.currentTestBundle else { return nil }\n\n    if let testCaseClass = bundle.classNamed(className) { return testCaseClass }\n\n    guard let moduleName = bundle.bundlePath.fileName else { return nil }\n\n    return NSClassFromString(\"\\(moduleName).\\(className)\")\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.h",
    "content": "#import <XCTest/XCTest.h>\n\n/**\n QuickSpec is a base class all specs written in Quick inherit from.\n They need to inherit from QuickSpec, a subclass of XCTestCase, in\n order to be discovered by the XCTest framework.\n\n XCTest automatically compiles a list of XCTestCase subclasses included\n in the test target. It iterates over each class in that list, and creates\n a new instance of that class for each test method. It then creates an\n \"invocation\" to execute that test method. The invocation is an instance of\n NSInvocation, which represents a single message send in Objective-C.\n The invocation is set on the XCTestCase instance, and the test is run.\n\n Most of the code in QuickSpec is dedicated to hooking into XCTest events.\n First, when the spec is first loaded and before it is sent any messages,\n the +[NSObject initialize] method is called. QuickSpec overrides this method\n to call +[QuickSpec spec]. This builds the example group stacks and\n registers them with Quick.World, a global register of examples.\n\n Then, XCTest queries QuickSpec for a list of test methods. Normally, XCTest\n automatically finds all methods whose selectors begin with the string \"test\".\n However, QuickSpec overrides this default behavior by implementing the\n +[XCTestCase testInvocations] method. This method iterates over each example\n registered in Quick.World, defines a new method for that example, and\n returns an invocation to call that method to XCTest. Those invocations are\n the tests that are run by XCTest. Their selector names are displayed in\n the Xcode test navigation bar.\n */\n@interface QuickSpec : XCTestCase\n\n/**\n Override this method in your spec to define a set of example groups\n and examples.\n\n @code\n override func spec() {\n     describe(\"winter\") {\n         it(\"is coming\") {\n             // ...\n         }\n     }\n }\n @endcode\n\n See DSL.swift for more information on what syntax is available.\n */\n- (void)spec;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.m",
    "content": "#import \"QuickSpec.h\"\n#import \"QuickConfiguration.h\"\n#import \"NSString+QCKSelectorName.h\"\n#import \"World.h\"\n#import <objc/runtime.h>\n\nstatic QuickSpec *currentSpec = nil;\n\nconst void * const QCKExampleKey = &QCKExampleKey;\n\n@interface QuickSpec ()\n@property (nonatomic, strong) Example *example;\n@end\n\n@implementation QuickSpec\n\n#pragma mark - XCTestCase Overrides\n\n/**\n The runtime sends initialize to each class in a program just before the class, or any class\n that inherits from it, is sent its first message from within the program. QuickSpec hooks into\n this event to compile the example groups for this spec subclass.\n\n If an exception occurs when compiling the examples, report it to the user. Chances are they\n included an expectation outside of a \"it\", \"describe\", or \"context\" block.\n */\n+ (void)initialize {\n    [QuickConfiguration initialize];\n\n    World *world = [World sharedWorld];\n    [world performWithCurrentExampleGroup:[world rootExampleGroupForSpecClass:self] closure:^{\n        QuickSpec *spec = [self new];\n\n        @try {\n            [spec spec];\n        }\n        @catch (NSException *exception) {\n            [NSException raise:NSInternalInconsistencyException\n                        format:@\"An exception occurred when building Quick's example groups.\\n\"\n             @\"Some possible reasons this might happen include:\\n\\n\"\n             @\"- An 'expect(...).to' expectation was evaluated outside of \"\n             @\"an 'it', 'context', or 'describe' block\\n\"\n             @\"- 'sharedExamples' was called twice with the same name\\n\"\n             @\"- 'itBehavesLike' was called with a name that is not registered as a shared example\\n\\n\"\n             @\"Here's the original exception: '%@', reason: '%@', userInfo: '%@'\",\n             exception.name, exception.reason, exception.userInfo];\n        }\n        [self testInvocations];\n    }];\n}\n\n/**\n Invocations for each test method in the test case. QuickSpec overrides this method to define a\n new method for each example defined in +[QuickSpec spec].\n\n @return An array of invocations that execute the newly defined example methods.\n */\n+ (NSArray *)testInvocations {\n    NSArray *examples = [[World sharedWorld] examplesForSpecClass:[self class]];\n    NSMutableArray *invocations = [NSMutableArray arrayWithCapacity:[examples count]];\n    \n    NSMutableSet<NSString*> *selectorNames = [NSMutableSet set];\n    \n    for (Example *example in examples) {\n        SEL selector = [self addInstanceMethodForExample:example classSelectorNames:selectorNames];\n        NSInvocation *invocation = [self invocationForInstanceMethodWithSelector:selector\n                                                                         example:example];\n        [invocations addObject:invocation];\n    }\n\n    return invocations;\n}\n\n/**\n XCTest sets the invocation for the current test case instance using this setter.\n QuickSpec hooks into this event to give the test case a reference to the current example.\n It will need this reference to correctly report its name to XCTest.\n */\n- (void)setInvocation:(NSInvocation *)invocation {\n    self.example = objc_getAssociatedObject(invocation, QCKExampleKey);\n    [super setInvocation:invocation];\n}\n\n#pragma mark - Public Interface\n\n- (void)spec { }\n\n#pragma mark - Internal Methods\n\n/**\n QuickSpec uses this method to dynamically define a new instance method for the\n given example. The instance method runs the example, catching any exceptions.\n The exceptions are then reported as test failures.\n\n In order to report the correct file and line number, examples must raise exceptions\n containing following keys in their userInfo:\n\n - \"SenTestFilenameKey\": A String representing the file name\n - \"SenTestLineNumberKey\": An Int representing the line number\n\n These keys used to be used by SenTestingKit, and are still used by some testing tools\n in the wild. See: https://github.com/Quick/Quick/pull/41\n\n @return The selector of the newly defined instance method.\n */\n+ (SEL)addInstanceMethodForExample:(Example *)example classSelectorNames:(NSMutableSet<NSString*> *)selectorNames {\n    IMP implementation = imp_implementationWithBlock(^(QuickSpec *self){\n        currentSpec = self;\n        [example run];\n    });\n    NSCharacterSet *characterSet = [NSCharacterSet alphanumericCharacterSet];\n    NSMutableString *sanitizedFileName = [NSMutableString string];\n    for (NSUInteger i = 0; i < example.callsite.file.length; i++) {\n        unichar ch = [example.callsite.file characterAtIndex:i];\n        if ([characterSet characterIsMember:ch]) {\n            [sanitizedFileName appendFormat:@\"%c\", ch];\n        }\n    }\n\n    const char *types = [[NSString stringWithFormat:@\"%s%s%s\", @encode(id), @encode(id), @encode(SEL)] UTF8String];\n    \n    NSString *originalName = example.name.qck_selectorName;\n    NSString *selectorName = originalName;\n    NSUInteger i = 2;\n    \n    while ([selectorNames containsObject:selectorName]) {\n        selectorName = [NSString stringWithFormat:@\"%@_%tu\", originalName, i++];\n    }\n    \n    [selectorNames addObject:selectorName];\n    \n    SEL selector = NSSelectorFromString(selectorName);\n    class_addMethod(self, selector, implementation, types);\n\n    return selector;\n}\n\n+ (NSInvocation *)invocationForInstanceMethodWithSelector:(SEL)selector\n                                                  example:(Example *)example {\n    NSMethodSignature *signature = [self instanceMethodSignatureForSelector:selector];\n    NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];\n    invocation.selector = selector;\n    objc_setAssociatedObject(invocation,\n                             QCKExampleKey,\n                             example,\n                             OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n    return invocation;\n}\n\n/**\n This method is used to record failures, whether they represent example\n expectations that were not met, or exceptions raised during test setup\n and teardown. By default, the failure will be reported as an\n XCTest failure, and the example will be highlighted in Xcode.\n */\n- (void)recordFailureWithDescription:(NSString *)description\n                              inFile:(NSString *)filePath\n                              atLine:(NSUInteger)lineNumber\n                            expected:(BOOL)expected {\n    if (self.example.isSharedExample) {\n        filePath = self.example.callsite.file;\n        lineNumber = self.example.callsite.line;\n    }\n    [currentSpec.testRun recordFailureWithDescription:description\n                                               inFile:filePath\n                                               atLine:lineNumber\n                                             expected:expected];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickSpec.swift",
    "content": "import XCTest\n\n// NOTE: This file is not intended to be included in the Xcode project or CocoaPods.\n//       It is picked up by the Swift Package Manager during its build process.\n\npublic class QuickSpec: XCTestCase, XCTestCaseProvider {\n    public func spec() {}\n\n    public required init() {}\n\n    public var allTests : [(String, () throws -> Void)] {\n        gatherExamplesIfNeeded()\n\n        let examples = World.sharedWorld.examples(self.dynamicType)\n        return examples.map({ example -> (String, () -> Void) in\n            return (example.name, { example.run() })\n        })\n    }\n\n    internal func gatherExamplesIfNeeded() {\n        let world = World.sharedWorld\n        let rootExampleGroup = world.rootExampleGroupForSpecClass(self.dynamicType)\n        if rootExampleGroup.examples.isEmpty {\n            world.currentExampleGroup =  rootExampleGroup\n            spec()\n            world.currentExampleGroup = nil\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/QuickTestSuite.swift",
    "content": "#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\nimport XCTest\n\n/**\n This protocol defines the role of an object that builds test suites.\n */\ninternal protocol QuickTestSuiteBuilder {\n\n    /**\n     Construct a `QuickTestSuite` instance with the appropriate test cases added as tests.\n\n     Subsequent calls to this method should return equivalent test suites.\n     */\n    func buildTestSuite() -> QuickTestSuite\n\n}\n\n/**\n A base class for a class cluster of Quick test suites, that should correctly\n build dynamic test suites for XCTest to execute.\n */\npublic class QuickTestSuite: XCTestSuite {\n\n    private static var builtTestSuites: Set<String> = Set()\n\n    /**\n     Construct a test suite for a specific, selected subset of test cases (rather\n     than the default, which as all test cases).\n\n     If this method is called multiple times for the same test case class, e.g..\n\n        FooSpec/testFoo\n        FooSpec/testBar\n\n     It is expected that the first call should return a valid test suite, and\n     all subsequent calls should return `nil`.\n     */\n    public static func selectedTestSuite(forTestCaseWithName name: String) -> QuickTestSuite? {\n        guard let builder = QuickSelectedTestSuiteBuilder(forTestCaseWithName: name) else { return nil }\n\n        if builtTestSuites.contains(builder.testSuiteClassName) {\n            return nil\n        } else {\n            builtTestSuites.insert(builder.testSuiteClassName)\n            return builder.buildTestSuite()\n        }\n    }\n\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/String+FileName.swift",
    "content": "import Foundation\n\nextension String {\n\n    /**\n     If the receiver represents a path, returns its file name with a file extension.\n     */\n    var fileName: String? {\n        return NSURL(string: self)?.URLByDeletingPathExtension?.lastPathComponent\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/World.h",
    "content": "#import <Quick/Quick-Swift.h>\n\n@class ExampleGroup;\n@class ExampleMetadata;\n\nSWIFT_CLASS(\"_TtC5Quick5World\")\n@interface World\n\n@property (nonatomic) ExampleGroup * __nullable currentExampleGroup;\n@property (nonatomic) ExampleMetadata * __nullable currentExampleMetadata;\n@property (nonatomic) BOOL isRunningAdditionalSuites;\n+ (World * __nonnull)sharedWorld;\n- (void)configure:(void (^ __nonnull)(Configuration * __nonnull))closure;\n- (void)finalizeConfiguration;\n- (ExampleGroup * __nonnull)rootExampleGroupForSpecClass:(Class __nonnull)cls;\n- (NSArray * __nonnull)examplesForSpecClass:(Class __nonnull)specClass;\n- (void)performWithCurrentExampleGroup:(ExampleGroup * __nonnull)group closure:(void (^ __nonnull)(void))closure;\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/World.swift",
    "content": "import Foundation\n\n/**\n    A closure that, when evaluated, returns a dictionary of key-value\n    pairs that can be accessed from within a group of shared examples.\n*/\npublic typealias SharedExampleContext = () -> (NSDictionary)\n\n/**\n    A closure that is used to define a group of shared examples. This\n    closure may contain any number of example and example groups.\n*/\npublic typealias SharedExampleClosure = (SharedExampleContext) -> ()\n\n/**\n    A collection of state Quick builds up in order to work its magic.\n    World is primarily responsible for maintaining a mapping of QuickSpec\n    classes to root example groups for those classes.\n\n    It also maintains a mapping of shared example names to shared\n    example closures.\n\n    You may configure how Quick behaves by calling the -[World configure:]\n    method from within an overridden +[QuickConfiguration configure:] method.\n*/\nfinal internal class World: NSObject {\n    /**\n        The example group that is currently being run.\n        The DSL requires that this group is correctly set in order to build a\n        correct hierarchy of example groups and their examples.\n    */\n    internal var currentExampleGroup: ExampleGroup!\n\n    /**\n        The example metadata of the test that is currently being run.\n        This is useful for using the Quick test metadata (like its name) at\n        runtime.\n    */\n\n    internal var currentExampleMetadata: ExampleMetadata?\n\n    /**\n        A flag that indicates whether additional test suites are being run\n        within this test suite. This is only true within the context of Quick\n        functional tests.\n    */\n    internal var isRunningAdditionalSuites = false\n\n    private var specs: Dictionary<String, ExampleGroup> = [:]\n    private var sharedExamples: [String: SharedExampleClosure] = [:]\n    private let configuration = Configuration()\n    private var isConfigurationFinalized = false\n\n    internal var exampleHooks: ExampleHooks {return configuration.exampleHooks }\n    internal var suiteHooks: SuiteHooks { return configuration.suiteHooks }\n\n    // MARK: Singleton Constructor\n\n    private override init() {}\n    static let sharedWorld = World()\n\n    // MARK: Public Interface\n\n    /**\n        Exposes the World's Configuration object within the scope of the closure\n        so that it may be configured. This method must not be called outside of\n        an overridden +[QuickConfiguration configure:] method.\n\n        - parameter closure:  A closure that takes a Configuration object that can\n                         be mutated to change Quick's behavior.\n    */\n    internal func configure(closure: QuickConfigurer) {\n        assert(!isConfigurationFinalized,\n               \"Quick cannot be configured outside of a +[QuickConfiguration configure:] method. You should not call -[World configure:] directly. Instead, subclass QuickConfiguration and override the +[QuickConfiguration configure:] method.\")\n        closure(configuration: configuration)\n    }\n\n    /**\n        Finalizes the World's configuration.\n        Any subsequent calls to World.configure() will raise.\n    */\n    internal func finalizeConfiguration() {\n        isConfigurationFinalized = true\n    }\n\n    /**\n        Returns an internally constructed root example group for the given\n        QuickSpec class.\n\n        A root example group with the description \"root example group\" is lazily\n        initialized for each QuickSpec class. This root example group wraps the\n        top level of a -[QuickSpec spec] method--it's thanks to this group that\n        users can define beforeEach and it closures at the top level, like so:\n\n            override func spec() {\n                // These belong to the root example group\n                beforeEach {}\n                it(\"is at the top level\") {}\n            }\n\n        - parameter cls: The QuickSpec class for which to retrieve the root example group.\n        - returns: The root example group for the class.\n    */\n    internal func rootExampleGroupForSpecClass(cls: AnyClass) -> ExampleGroup {\n        #if _runtime(_ObjC)\n            let name = NSStringFromClass(cls)\n        #else\n            let name = String(cls)\n        #endif\n\n        if let group = specs[name] {\n            return group\n        } else {\n            let group = ExampleGroup(\n                description: \"root example group\",\n                flags: [:],\n                isInternalRootExampleGroup: true\n            )\n            specs[name] = group\n            return group\n        }\n    }\n\n    /**\n        Returns all examples that should be run for a given spec class.\n        There are two filtering passes that occur when determining which examples should be run.\n        That is, these examples are the ones that are included by inclusion filters, and are\n        not excluded by exclusion filters.\n\n        - parameter specClass: The QuickSpec subclass for which examples are to be returned.\n        - returns: A list of examples to be run as test invocations.\n    */\n    internal func examples(specClass: AnyClass) -> [Example] {\n        // 1. Grab all included examples.\n        let included = includedExamples\n        // 2. Grab the intersection of (a) examples for this spec, and (b) included examples.\n        let spec = rootExampleGroupForSpecClass(specClass).examples.filter { included.contains($0) }\n        // 3. Remove all excluded examples.\n        return spec.filter { example in\n            !self.configuration.exclusionFilters.reduce(false) { $0 || $1(example: example) }\n        }\n    }\n\n#if _runtime(_ObjC)\n    @objc(examplesForSpecClass:)\n    private func objc_examples(specClass: AnyClass) -> [Example] {\n        return examples(specClass)\n    }\n#endif\n\n    // MARK: Internal\n\n    internal func registerSharedExample(name: String, closure: SharedExampleClosure) {\n        raiseIfSharedExampleAlreadyRegistered(name)\n        sharedExamples[name] = closure\n    }\n\n    internal func sharedExample(name: String) -> SharedExampleClosure {\n        raiseIfSharedExampleNotRegistered(name)\n        return sharedExamples[name]!\n    }\n\n    internal var includedExampleCount: Int {\n        return includedExamples.count\n    }\n    \n    internal var beforesCurrentlyExecuting: Bool {\n        let suiteBeforesExecuting = suiteHooks.phase == .BeforesExecuting\n        let exampleBeforesExecuting = exampleHooks.phase == .BeforesExecuting\n        var groupBeforesExecuting = false\n        if let runningExampleGroup = currentExampleMetadata?.example.group {\n            groupBeforesExecuting = runningExampleGroup.phase == .BeforesExecuting\n        }\n        \n        return suiteBeforesExecuting || exampleBeforesExecuting || groupBeforesExecuting\n    }\n    \n    internal var aftersCurrentlyExecuting: Bool {\n        let suiteAftersExecuting = suiteHooks.phase == .AftersExecuting\n        let exampleAftersExecuting = exampleHooks.phase == .AftersExecuting\n        var groupAftersExecuting = false\n        if let runningExampleGroup = currentExampleMetadata?.example.group {\n            groupAftersExecuting = runningExampleGroup.phase == .AftersExecuting\n        }\n        \n        return suiteAftersExecuting || exampleAftersExecuting || groupAftersExecuting\n    }\n\n    internal func performWithCurrentExampleGroup(group: ExampleGroup, closure: () -> Void) {\n        let previousExampleGroup = currentExampleGroup\n        currentExampleGroup = group\n\n        closure()\n\n        currentExampleGroup = previousExampleGroup\n    }\n\n    private var allExamples: [Example] {\n        var all: [Example] = []\n        for (_, group) in specs {\n            group.walkDownExamples { all.append($0) }\n        }\n        return all\n    }\n\n    private var includedExamples: [Example] {\n        let all = allExamples\n        let included = all.filter { example in\n            return self.configuration.inclusionFilters.reduce(false) { $0 || $1(example: example) }\n        }\n\n        if included.isEmpty && configuration.runAllWhenEverythingFiltered {\n            return all\n        } else {\n            return included\n        }\n    }\n\n    private func raiseIfSharedExampleAlreadyRegistered(name: String) {\n        if sharedExamples[name] != nil {\n            raiseError(\"A shared example named '\\(name)' has already been registered.\")\n        }\n    }\n\n    private func raiseIfSharedExampleNotRegistered(name: String) {\n        if sharedExamples[name] == nil {\n            raiseError(\"No shared example named '\\(name)' has been registered. Registered shared examples: '\\(Array(sharedExamples.keys))'\")\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/Quick/XCTestSuite+QuickTestSuiteBuilder.m",
    "content": "#import <XCTest/XCTest.h>\n#import <objc/runtime.h>\n#import <Quick/Quick-Swift.h>\n\n@interface XCTestSuite (QuickTestSuiteBuilder)\n@end\n\n@implementation XCTestSuite (QuickTestSuiteBuilder)\n\n/**\n In order to ensure we can correctly build dynamic test suites, we need to\n replace some of the default test suite constructors.\n */\n+ (void)load {\n    Method testCaseWithName = class_getClassMethod(self, @selector(testSuiteForTestCaseWithName:));\n    Method hooked_testCaseWithName = class_getClassMethod(self, @selector(qck_hooked_testSuiteForTestCaseWithName:));\n    method_exchangeImplementations(testCaseWithName, hooked_testCaseWithName);\n}\n\n/**\n The `+testSuiteForTestCaseWithName:` method is called when a specific test case\n class is run from the Xcode test navigator. If the built test suite is `nil`,\n Xcode will not run any tests for that test case.\n\n Given if the following test case class is run from the Xcode test navigator:\n\n    FooSpec\n        testFoo\n        testBar\n\n XCTest will invoke this once per test case, with test case names following this format:\n\n    FooSpec/testFoo\n    FooSpec/testBar\n */\n+ (nullable instancetype)qck_hooked_testSuiteForTestCaseWithName:(nonnull NSString *)name {\n    return [QuickTestSuite selectedTestSuiteForTestCaseWithName:name];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickFocusedTests/FocusedTests+ObjC.m",
    "content": "@import Quick;\n@import Nimble;\n@import XCTest;\n\n#import \"QCKSpecRunner.h\"\n\nQuickConfigurationBegin(FunctionalTests_SharedExamplesConfiguration_ObjC)\n\n+ (void)configure:(Configuration *)configuration {\n    sharedExamples(@\"two passing shared examples (Objective-C)\", ^(QCKDSLSharedExampleContext exampleContext) {\n        it(@\"has an example that passes (4)\", ^{});\n        it(@\"has another example that passes (5)\", ^{});\n    });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(FunctionalTests_FocusedSpec_Focused_ObjC)\n\nit(@\"has an unfocused example that fails, but is never run\", ^{ XCTFail(); });\nfit(@\"has a focused example that passes (1)\", ^{});\n\nfdescribe(@\"a focused example group\", ^{\n    it(@\"has an example that is not focused, but will be run, and passes (2)\", ^{});\n    fit(@\"has a focused example that passes (3)\", ^{});\n});\n\nfitBehavesLike(@\"two passing shared examples (Objective-C)\", ^NSDictionary *{ return @{}; });\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_FocusedSpec_Unfocused_ObjC)\n\nit(@\"has an unfocused example thay fails, but is never run\", ^{ XCTFail(); });\n\ndescribe(@\"an unfocused example group that is never run\", ^{\n    beforeEach(^{ [NSException raise:NSInternalInconsistencyException format:@\"\"]; });\n    it(@\"has an example that fails, but is never run\", ^{ XCTFail(); });\n});\n\nQuickSpecEnd\n\n@interface FocusedTests_ObjC: XCTestCase\n@end\n\n@implementation FocusedTests_ObjC\n\n- (void)testOnlyFocusedExamplesAreExecuted {\n    XCTestRun *result = qck_runSpecs(@[\n        [FunctionalTests_FocusedSpec_Focused_ObjC class],\n        [FunctionalTests_FocusedSpec_Unfocused_ObjC class]\n    ]);\n    XCTAssertEqual(result.executionCount, 5);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickFocusedTests/FocusedTests.swift",
    "content": "import Quick\nimport Nimble\nimport XCTest\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_FocusedSpec_SharedExamplesConfiguration: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"two passing shared examples\") {\n            it(\"has an example that passes (4)\") {}\n            it(\"has another example that passes (5)\") {}\n        }\n    }\n}\n\nclass FunctionalTests_FocusedSpec_Focused: QuickSpec {\n    override func spec() {\n        it(\"has an unfocused example that fails, but is never run\") { fail() }\n        fit(\"has a focused example that passes (1)\") {}\n\n        fdescribe(\"a focused example group\") {\n            it(\"has an example that is not focused, but will be run, and passes (2)\") {}\n            fit(\"has a focused example that passes (3)\") {}\n        }\n\n        // TODO: Port fitBehavesLike to Swift.\n        itBehavesLike(\"two passing shared examples\", flags: [Filter.focused: true])\n    }\n}\n\nclass FunctionalTests_FocusedSpec_Unfocused: QuickSpec {\n    override func spec() {\n        it(\"has an unfocused example that fails, but is never run\") { fail() }\n\n        describe(\"an unfocused example group that is never run\") {\n            beforeEach { assert(false) }\n            it(\"has an example that fails, but is never run\") { fail() }\n        }\n    }\n}\n\nclass FocusedTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testOnlyFocusedExamplesAreExecuted\", testOnlyFocusedExamplesAreExecuted),\n        ]\n    }\n\n    func testOnlyFocusedExamplesAreExecuted() {\n        let result = qck_runSpecs([\n            FunctionalTests_FocusedSpec_Focused.self,\n            FunctionalTests_FocusedSpec_Unfocused.self\n        ])\n        XCTAssertEqual(result.executionCount, 5 as UInt)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickFocusedTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickFocusedTests/main.swift",
    "content": "import Quick\n\nQCKMain([\n    FunctionalTests_FocusedSpec_Focused(),\n    FunctionalTests_FocusedSpec_Unfocused(),\n    FocusedTests(),\n],\nconfigurations: [FunctionalTests_FocusedSpec_SharedExamplesConfiguration.self]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTestHelpers/SpecRunner.swift",
    "content": "@testable import Quick\nimport Nimble\n\npublic func qck_runSpec(specClass: QuickSpec.Type) -> TestRun {\n    return qck_runSpecs([specClass])\n}\n\npublic func qck_runSpecs(specClasses: [QuickSpec.Type]) -> TestRun {\n    World.sharedWorld.isRunningAdditionalSuites = true\n\n    var executionCount: UInt = 0\n    var hadUnexpectedFailure = false\n\n    let fails = gatherFailingExpectations(silently: true) {\n        for specClass in specClasses {\n            let spec = specClass.init()\n            for (_, test) in spec.allTests {\n                do {\n                    try test()\n                } catch {\n                    hadUnexpectedFailure = true\n                }\n                executionCount += 1\n            }\n        }\n    }\n\n    return TestRun(executionCount: executionCount, hasSucceeded: fails.isEmpty && !hadUnexpectedFailure)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTestHelpers/TestRun.swift",
    "content": "\npublic struct TestRun {\n    public var executionCount: UInt\n    public var hasSucceeded: Bool\n\n    public init(executionCount: UInt, hasSucceeded: Bool) {\n        self.executionCount = executionCount\n        self.hasSucceeded = hasSucceeded\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Fixtures/FunctionalTests_SharedExamplesTests_SharedExamples.swift",
    "content": "import Foundation\nimport Quick\nimport Nimble\n\nclass FunctionalTests_SharedExamplesTests_SharedExamples: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"a group of three shared examples\") {\n            it(\"passes once\") { expect(true).to(beTruthy()) }\n            it(\"passes twice\") { expect(true).to(beTruthy()) }\n            it(\"passes three times\") { expect(true).to(beTruthy()) }\n        }\n\n        sharedExamples(\"shared examples that take a context\") { (sharedExampleContext: SharedExampleContext) in\n            it(\"is passed the correct parameters via the context\") {\n                let callsite = sharedExampleContext()[NSString(string: \"callsite\")] as! NSString\n                expect(callsite).to(equal(\"SharedExamplesSpec\"))\n            }\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\ntypedef NS_ENUM(NSUInteger, AfterEachType) {\n    OuterOne,\n    OuterTwo,\n    OuterThree,\n    InnerOne,\n    InnerTwo,\n    NoExamples,\n};\n\nstatic NSMutableArray *afterEachOrder;\n\nQuickSpecBegin(FunctionalTests_AfterEachSpec_ObjC)\n\nafterEach(^{ [afterEachOrder addObject:@(OuterOne)]; });\nafterEach(^{ [afterEachOrder addObject:@(OuterTwo)]; });\nafterEach(^{ [afterEachOrder addObject:@(OuterThree)]; });\n\nit(@\"executes the outer afterEach closures once, but not before this closure [1]\", ^{\n    expect(afterEachOrder).to(equal(@[]));\n});\n\nit(@\"executes the outer afterEach closures a second time, but not before this closure [2]\", ^{\n    expect(afterEachOrder).to(equal(@[@(OuterOne), @(OuterTwo), @(OuterThree)]));\n});\n\ncontext(@\"when there are nested afterEach\", ^{\n    afterEach(^{ [afterEachOrder addObject:@(InnerOne)]; });\n    afterEach(^{ [afterEachOrder addObject:@(InnerTwo)]; });\n\n    it(@\"executes the outer and inner afterEach closures, but not before this closure [3]\", ^{\n        // The afterEach for the previous two examples should have been run.\n        // The list should contain the afterEach for those example, executed from top to bottom.\n        expect(afterEachOrder).to(equal(@[\n            @(OuterOne), @(OuterTwo), @(OuterThree),\n            @(OuterOne), @(OuterTwo), @(OuterThree),\n        ]));\n    });\n});\n\ncontext(@\"when there are nested afterEach without examples\", ^{\n    afterEach(^{ [afterEachOrder addObject:@(NoExamples)]; });\n});\n\nQuickSpecEnd\n\n@interface AfterEachTests_ObjC : XCTestCase; @end\n\n@implementation AfterEachTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    afterEachOrder = [NSMutableArray array];\n}\n\n- (void)tearDown {\n    afterEachOrder = [NSMutableArray array];\n    [super tearDown];\n}\n\n- (void)testAfterEachIsExecutedInTheCorrectOrder {\n    qck_runSpec([FunctionalTests_AfterEachSpec_ObjC class]);\n    NSArray *expectedOrder = @[\n        // [1] The outer afterEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(OuterThree),\n        // [2] The outer afterEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(OuterThree),\n        // [3] The outer afterEach closures are executed from top to bottom,\n        //     then the outer afterEach closures are executed from top to bottom.\n        @(InnerOne), @(InnerTwo), @(OuterOne), @(OuterTwo), @(OuterThree),\n    ];\n\n    XCTAssertEqualObjects(afterEachOrder, expectedOrder);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nprivate enum AfterEachType {\n    case OuterOne\n    case OuterTwo\n    case OuterThree\n    case InnerOne\n    case InnerTwo\n    case NoExamples\n}\n\nprivate var afterEachOrder = [AfterEachType]()\n\nclass FunctionalTests_AfterEachSpec: QuickSpec {\n    override func spec() {\n        describe(\"afterEach ordering\") {\n            afterEach { afterEachOrder.append(AfterEachType.OuterOne) }\n            afterEach { afterEachOrder.append(AfterEachType.OuterTwo) }\n            afterEach { afterEachOrder.append(AfterEachType.OuterThree) }\n            \n            it(\"executes the outer afterEach closures once, but not before this closure [1]\") {\n                // No examples have been run, so no afterEach will have been run either.\n                // The list should be empty.\n                expect(afterEachOrder).to(beEmpty())\n            }\n            \n            it(\"executes the outer afterEach closures a second time, but not before this closure [2]\") {\n                // The afterEach for the previous example should have been run.\n                // The list should contain the afterEach for that example, executed from top to bottom.\n                expect(afterEachOrder).to(equal([AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree]))\n            }\n            \n            context(\"when there are nested afterEach\") {\n                afterEach { afterEachOrder.append(AfterEachType.InnerOne) }\n                afterEach { afterEachOrder.append(AfterEachType.InnerTwo) }\n                \n                it(\"executes the outer and inner afterEach closures, but not before this closure [3]\") {\n                    // The afterEach for the previous two examples should have been run.\n                    // The list should contain the afterEach for those example, executed from top to bottom.\n                    expect(afterEachOrder).to(equal([\n                        AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n                        AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n                        ]))\n                }\n            }\n            \n            context(\"when there are nested afterEach without examples\") {\n                afterEach { afterEachOrder.append(AfterEachType.NoExamples) }\n            }\n        }\n#if _runtime(_ObjC)\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including afterEach in it block\") {\n                expect {\n                    afterEach { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'afterEach' cannot be used inside 'it', 'afterEach' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n#endif\n    }\n}\n\nclass AfterEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAfterEachIsExecutedInTheCorrectOrder\", testAfterEachIsExecutedInTheCorrectOrder),\n        ]\n    }\n\n    func testAfterEachIsExecutedInTheCorrectOrder() {\n        afterEachOrder = []\n\n        qck_runSpec(FunctionalTests_AfterEachSpec.self)\n        let expectedOrder = [\n            // [1] The outer afterEach closures are executed from top to bottom.\n            AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n            // [2] The outer afterEach closures are executed from top to bottom.\n            AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n            // [3] The inner afterEach closures are executed from top to bottom,\n            //     then the outer afterEach closures are executed from top to bottom.\n            AfterEachType.InnerOne, AfterEachType.InnerTwo,\n                AfterEachType.OuterOne, AfterEachType.OuterTwo, AfterEachType.OuterThree,\n        ]\n        XCTAssertEqual(afterEachOrder, expectedOrder)\n\n        afterEachOrder = []\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterSuiteTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL afterSuiteWasExecuted = NO;\n\nQuickSpecBegin(FunctionalTests_AfterSuite_AfterSuiteSpec_ObjC)\n\nafterSuite(^{\n    afterSuiteWasExecuted = YES;\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_AfterSuite_Spec_ObjC)\n\nit(@\"is executed before afterSuite\", ^{\n    expect(@(afterSuiteWasExecuted)).to(beFalsy());\n});\n\nQuickSpecEnd\n\n@interface AfterSuiteTests_ObjC : XCTestCase; @end\n\n@implementation AfterSuiteTests_ObjC\n\n- (void)testAfterSuiteIsNotExecutedBeforeAnyExamples {\n    // Execute the spec with an assertion after the one with an afterSuite.\n    NSArray *specs = @[\n        [FunctionalTests_AfterSuite_AfterSuiteSpec_ObjC class],\n        [FunctionalTests_AfterSuite_Spec_ObjC class]\n    ];\n    XCTestRun *result = qck_runSpecs(specs);\n\n    // Although this ensures that afterSuite is not called before any\n    // examples, it doesn't test that it's ever called in the first place.\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/AfterSuiteTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar afterSuiteWasExecuted = false\n\nclass FunctionalTests_AfterSuite_AfterSuiteSpec: QuickSpec {\n    override func spec() {\n        afterSuite {\n            afterSuiteWasExecuted = true\n        }\n    }\n}\n\nclass FunctionalTests_AfterSuite_Spec: QuickSpec {\n    override func spec() {\n        it(\"is executed before afterSuite\") {\n            expect(afterSuiteWasExecuted).to(beFalsy())\n        }\n    }\n}\n\nclass AfterSuiteTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAfterSuiteIsNotExecutedBeforeAnyExamples\", testAfterSuiteIsNotExecutedBeforeAnyExamples),\n        ]\n    }\n\n    func testAfterSuiteIsNotExecutedBeforeAnyExamples() {\n        // Execute the spec with an assertion after the one with an afterSuite.\n        let result = qck_runSpecs([\n            FunctionalTests_AfterSuite_AfterSuiteSpec.self,\n            FunctionalTests_AfterSuite_Spec.self\n            ])\n\n        // Although this ensures that afterSuite is not called before any\n        // examples, it doesn't test that it's ever called in the first place.\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n\n#import \"QCKSpecRunner.h\"\n\ntypedef NS_ENUM(NSUInteger, BeforeEachType) {\n    OuterOne,\n    OuterTwo,\n    InnerOne,\n    InnerTwo,\n    InnerThree,\n    NoExamples,\n};\n\nstatic NSMutableArray *beforeEachOrder;\n\nQuickSpecBegin(FunctionalTests_BeforeEachSpec_ObjC)\n\nbeforeEach(^{ [beforeEachOrder addObject:@(OuterOne)]; });\nbeforeEach(^{ [beforeEachOrder addObject:@(OuterTwo)]; });\n\nit(@\"executes the outer beforeEach closures once [1]\", ^{});\nit(@\"executes the outer beforeEach closures a second time [2]\", ^{});\n\ncontext(@\"when there are nested beforeEach\", ^{\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerOne)];   });\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerTwo)];   });\n    beforeEach(^{ [beforeEachOrder addObject:@(InnerThree)]; });\n\n    it(@\"executes the outer and inner beforeEach closures [3]\", ^{});\n});\n\ncontext(@\"when there are nested beforeEach without examples\", ^{\n    beforeEach(^{ [beforeEachOrder addObject:@(NoExamples)]; });\n});\n\nQuickSpecEnd\n\n@interface BeforeEachTests_ObjC : XCTestCase; @end\n\n@implementation BeforeEachTests_ObjC\n\n- (void)setUp {\n    beforeEachOrder = [NSMutableArray array];\n    [super setUp];\n}\n\n- (void)tearDown {\n    beforeEachOrder = [NSMutableArray array];\n    [super tearDown];\n}\n\n- (void)testBeforeEachIsExecutedInTheCorrectOrder {\n    qck_runSpec([FunctionalTests_BeforeEachSpec_ObjC class]);\n    NSArray *expectedOrder = @[\n        // [1] The outer beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo),\n        // [2] The outer beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo),\n        // [3] The outer beforeEach closures are executed from top to bottom,\n        //     then the inner beforeEach closures are executed from top to bottom.\n        @(OuterOne), @(OuterTwo), @(InnerOne), @(InnerTwo), @(InnerThree),\n    ];\n\n    XCTAssertEqualObjects(beforeEachOrder, expectedOrder);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nprivate enum BeforeEachType {\n    case OuterOne\n    case OuterTwo\n    case InnerOne\n    case InnerTwo\n    case InnerThree\n    case NoExamples\n}\n\nprivate var beforeEachOrder = [BeforeEachType]()\n\nclass FunctionalTests_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        \n        describe(\"beforeEach ordering\") {\n            beforeEach { beforeEachOrder.append(BeforeEachType.OuterOne) }\n            beforeEach { beforeEachOrder.append(BeforeEachType.OuterTwo) }\n            \n            it(\"executes the outer beforeEach closures once [1]\") {}\n            it(\"executes the outer beforeEach closures a second time [2]\") {}\n            \n            context(\"when there are nested beforeEach\") {\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerOne) }\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerTwo) }\n                beforeEach { beforeEachOrder.append(BeforeEachType.InnerThree) }\n                \n                it(\"executes the outer and inner beforeEach closures [3]\") {}\n            }\n            \n            context(\"when there are nested beforeEach without examples\") {\n                beforeEach { beforeEachOrder.append(BeforeEachType.NoExamples) }\n            }\n        }\n#if _runtime(_ObjC)\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including beforeEach in it block\") {\n                expect {\n                    beforeEach { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'beforeEach' cannot be used inside 'it', 'beforeEach' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n#endif\n    }\n}\n\nclass BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeEachIsExecutedInTheCorrectOrder\", testBeforeEachIsExecutedInTheCorrectOrder),\n        ]\n    }\n\n    func testBeforeEachIsExecutedInTheCorrectOrder() {\n        beforeEachOrder = []\n\n        qck_runSpec(FunctionalTests_BeforeEachSpec.self)\n        let expectedOrder = [\n            // [1] The outer beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n            // [2] The outer beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n            // [3] The outer beforeEach closures are executed from top to bottom,\n            //     then the inner beforeEach closures are executed from top to bottom.\n            BeforeEachType.OuterOne, BeforeEachType.OuterTwo,\n                BeforeEachType.InnerOne, BeforeEachType.InnerTwo, BeforeEachType.InnerThree,\n        ]\n        XCTAssertEqual(beforeEachOrder, expectedOrder)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeSuiteTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL beforeSuiteWasExecuted = NO;\n\nQuickSpecBegin(FunctionalTests_BeforeSuite_BeforeSuiteSpec_ObjC)\n\nbeforeSuite(^{\n    beforeSuiteWasExecuted = YES;\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_BeforeSuite_Spec_ObjC)\n\nit(@\"is executed after beforeSuite\", ^{\n    expect(@(beforeSuiteWasExecuted)).to(beTruthy());\n});\n\nQuickSpecEnd\n\n@interface BeforeSuiteTests_ObjC : XCTestCase; @end\n\n@implementation BeforeSuiteTests_ObjC\n\n- (void)testBeforeSuiteIsExecutedBeforeAnyExamples {\n    // Execute the spec with an assertion before the one with a beforeSuite\n    NSArray *specs = @[\n        [FunctionalTests_BeforeSuite_Spec_ObjC class],\n        [FunctionalTests_BeforeSuite_BeforeSuiteSpec_ObjC class]\n    ];\n    XCTestRun *result = qck_runSpecs(specs);\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/BeforeSuiteTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar beforeSuiteWasExecuted = false\n\nclass FunctionalTests_BeforeSuite_BeforeSuiteSpec: QuickSpec {\n    override func spec() {\n        beforeSuite {\n            beforeSuiteWasExecuted = true\n        }\n    }\n}\n\nclass FunctionalTests_BeforeSuite_Spec: QuickSpec {\n    override func spec() {\n        it(\"is executed after beforeSuite\") {\n            expect(beforeSuiteWasExecuted).to(beTruthy())\n        }\n    }\n}\n\nclass BeforeSuiteTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeSuiteIsExecutedBeforeAnyExamples\", testBeforeSuiteIsExecutedBeforeAnyExamples),\n        ]\n    }\n\n    func testBeforeSuiteIsExecutedBeforeAnyExamples() {\n        // Execute the spec with an assertion before the one with a beforeSuite\n        let result = qck_runSpecs([\n            FunctionalTests_BeforeSuite_Spec.self,\n            FunctionalTests_BeforeSuite_BeforeSuiteSpec.self\n            ])\n\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/AfterEach/Configuration+AfterEach.swift",
    "content": "import Quick\n\npublic var FunctionalTests_Configuration_AfterEachWasExecuted = false\n\nclass FunctionalTests_Configuration_AfterEach: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        configuration.afterEach {\n            FunctionalTests_Configuration_AfterEachWasExecuted = true\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/AfterEach/Configuration+AfterEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass Configuration_AfterEachSpec: QuickSpec {\n    override func spec() {\n        beforeEach {\n            FunctionalTests_Configuration_AfterEachWasExecuted = false\n        }\n        it(\"is executed before the configuration afterEach\") {\n            expect(FunctionalTests_Configuration_AfterEachWasExecuted).to(beFalsy())\n        }\n    }\n}\n\nclass Configuration_AfterEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted\", testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted),\n        ]\n    }\n\n    func testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted() {\n        FunctionalTests_Configuration_AfterEachWasExecuted = false\n\n        qck_runSpec(Configuration_BeforeEachSpec.self)\n        XCTAssert(FunctionalTests_Configuration_AfterEachWasExecuted)\n\n        FunctionalTests_Configuration_AfterEachWasExecuted = false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/BeforeEach/Configuration+BeforeEach.swift",
    "content": "import Quick\n\npublic var FunctionalTests_Configuration_BeforeEachWasExecuted = false\n\nclass FunctionalTests_Configuration_BeforeEach: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        configuration.beforeEach {\n            FunctionalTests_Configuration_BeforeEachWasExecuted = true\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/Configuration/BeforeEach/Configuration+BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass Configuration_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        it(\"is executed after the configuration beforeEach\") {\n            expect(FunctionalTests_Configuration_BeforeEachWasExecuted).to(beTruthy())\n        }\n    }\n}\n\nclass Configuration_BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted\", testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted),\n        ]\n    }\n\n    func testExampleIsRunAfterTheConfigurationBeforeEachIsExecuted() {\n        FunctionalTests_Configuration_BeforeEachWasExecuted = false\n\n        qck_runSpec(Configuration_BeforeEachSpec.self)\n        XCTAssert(FunctionalTests_Configuration_BeforeEachWasExecuted)\n\n        FunctionalTests_Configuration_BeforeEachWasExecuted = false\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ContextTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\n#if _runtime(_ObjC)\nclass QuickContextTests: QuickSpec {\n    override func spec() {\n        describe(\"Context\") {\n            it(\"should throw an exception if used in an it block\") {\n                expect {\n                    context(\"A nested context that should throw\") { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'context' cannot be used inside 'it', 'context' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n    }\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/CrossReferencingSpecs.swift",
    "content": "import Quick\nimport Nimble\n\n// This is a functional test ensuring that no crash occurs when a spec class\n// references another spec class during its spec setup.\n\nclass FunctionalTests_CrossReferencingSpecA: QuickSpec {\n    override func spec() {\n        let _ = FunctionalTests_CrossReferencingSpecB()\n        it(\"does not crash\") {}\n    }\n}\n\nclass FunctionalTests_CrossReferencingSpecB: QuickSpec {\n    override func spec() {\n        let _ = FunctionalTests_CrossReferencingSpecA()\n        it(\"does not crash\") {}\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/DescribeTests.swift",
    "content": "import XCTest\nimport Nimble\nimport Quick\n\n#if _runtime(_ObjC)\n\nclass DescribeTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testDescribeThrowsIfUsedOutsideOfQuickSpec\", testDescribeThrowsIfUsedOutsideOfQuickSpec),\n        ]\n    }\n\n    func testDescribeThrowsIfUsedOutsideOfQuickSpec() {\n        expect { describe(\"this should throw an exception\", {}) }.to(raiseException())\n    }\n}\n\nclass QuickDescribeTests: QuickSpec {\n    override func spec() {\n        describe(\"Describe\") {\n            it(\"should throw an exception if used in an it block\") {\n                expect {\n                    describe(\"A nested describe that should throw\") { }\n                }.to(raiseException { (exception: NSException) in\n                    expect(exception.name).to(equal(NSInternalInconsistencyException))\n                    expect(exception.reason).to(equal(\"'describe' cannot be used inside 'it', 'describe' may only be used inside 'context' or 'describe'. \"))\n                })\n            }\n        }\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/FailureTests+ObjC.m",
    "content": "@import XCTest;\n\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL isRunningFunctionalTests = NO;\n\n#pragma mark - Spec\n\nQuickSpecBegin(FunctionalTests_FailureSpec_ObjC)\n\ndescribe(@\"a group of failing examples\", ^{\n    it(@\"passes\", ^{\n        expect(@YES).to(beTruthy());\n    });\n\n    it(@\"fails (but only when running the functional tests)\", ^{\n        expect(@(isRunningFunctionalTests)).to(beFalsy());\n    });\n\n    it(@\"fails again (but only when running the functional tests)\", ^{\n        expect(@(isRunningFunctionalTests)).to(beFalsy());\n    });\n});\n\nQuickSpecEnd\n\n#pragma mark - Tests\n\n@interface FailureTests_ObjC : XCTestCase; @end\n\n@implementation FailureTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    isRunningFunctionalTests = YES;\n}\n\n- (void)tearDown {\n    isRunningFunctionalTests = NO;\n    [super tearDown];\n}\n\n- (void)testFailureSpecHasSucceededIsFalse {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertFalse(result.hasSucceeded);\n}\n\n- (void)testFailureSpecExecutedAllExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testFailureSpecFailureCountIsEqualToTheNumberOfFailingExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureSpec_ObjC class]);\n    XCTAssertEqual(result.failureCount, 2);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/FailureUsingXCTAssertTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n\n#import \"QCKSpecRunner.h\"\n\nstatic BOOL isRunningFunctionalTests = NO;\n\nQuickSpecBegin(FunctionalTests_FailureUsingXCTAssertSpec_ObjC)\n\nit(@\"fails using an XCTAssert (but only when running the functional tests)\", ^{\n    XCTAssertFalse(isRunningFunctionalTests);\n});\n\nit(@\"fails again using an XCTAssert (but only when running the functional tests)\", ^{\n    XCTAssertFalse(isRunningFunctionalTests);\n});\n\nit(@\"succeeds using an XCTAssert\", ^{\n    XCTAssertTrue(YES);\n});\n\nQuickSpecEnd\n\n#pragma mark - Tests\n\n@interface FailureUsingXCTAssertTests_ObjC : XCTestCase; @end\n\n@implementation FailureUsingXCTAssertTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    isRunningFunctionalTests = YES;\n}\n\n- (void)tearDown {\n    isRunningFunctionalTests = NO;\n    [super tearDown];\n}\n\n- (void)testFailureUsingXCTAssertSpecHasSucceededIsFalse {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertFalse(result.hasSucceeded);\n}\n\n- (void)testFailureUsingXCTAssertSpecExecutedAllExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testFailureUsingXCTAssertSpecFailureCountIsEqualToTheNumberOfFailingExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_FailureUsingXCTAssertSpec_ObjC class]);\n    XCTAssertEqual(result.failureCount, 2);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ItTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n#import \"QuickSpec+QuickSpec_MethodList.h\"\n\nQuickSpecBegin(FunctionalTests_ItSpec_ObjC)\n\n__block ExampleMetadata *exampleMetadata = nil;\nbeforeEachWithMetadata(^(ExampleMetadata *metadata) {\n    exampleMetadata = metadata;\n});\n\nit(@\" \", ^{\n    expect(exampleMetadata.example.name).to(equal(@\" \"));\n});\n\nit(@\"has a description with セレクター名に使えない文字が入っている 👊💥\", ^{\n    NSString *name = @\"has a description with セレクター名に使えない文字が入っている 👊💥\";\n    expect(exampleMetadata.example.name).to(equal(name));\n});\n\nit(@\"is a test with a unique name\", ^{\n    NSSet<NSString*> *allSelectors = [FunctionalTests_ItSpec_ObjC allSelectors];\n    \n    expect(allSelectors).to(contain(@\"is_a_test_with_a_unique_name\"));\n    expect(allSelectors).toNot(contain(@\"is_a_test_with_a_unique_name_2\"));\n});\n\nQuickSpecEnd\n\n@interface ItTests_ObjC : XCTestCase; @end\n\n@implementation ItTests_ObjC\n\n- (void)testAllExamplesAreExecuted {\n    XCTestRun *result = qck_runSpec([FunctionalTests_ItSpec_ObjC class]);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/ItTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_ItSpec: QuickSpec {\n    override func spec() {\n        var exampleMetadata: ExampleMetadata?\n        beforeEach { metadata in exampleMetadata = metadata }\n\n        it(\"\") {\n            expect(exampleMetadata!.example.name).to(equal(\"\"))\n        }\n\n        it(\"has a description with セレクター名に使えない文字が入っている 👊💥\") {\n            let name = \"has a description with セレクター名に使えない文字が入っている 👊💥\"\n            expect(exampleMetadata!.example.name).to(equal(name))\n        }\n\n#if _runtime(_ObjC)\n\n        describe(\"when an example has a unique name\"){\n            it(\"has a unique name\") {}\n            \n            it(\"doesn't add multiple selectors for it\") {\n                let allSelectors = [String](\n                    FunctionalTests_ItSpec.allSelectors()\n                        .filter { $0.hasPrefix(\"when_an_example_has_a_unique_name__\") }\n                    )\n                    .sort(<)\n                \n                expect(allSelectors) == [\n                    \"when_an_example_has_a_unique_name__doesn_t_add_multiple_selectors_for_it\",\n                    \"when_an_example_has_a_unique_name__has_a_unique_name\"\n                ]\n            }\n        }\n    \n        describe(\"when two examples have the exact name\") {\n            it(\"has exactly the same name\") {}\n            it(\"has exactly the same name\") {}\n            \n            it(\"makes a unique name for each of the above\") {\n                let allSelectors = [String](\n                    FunctionalTests_ItSpec.allSelectors()\n                        .filter { $0.hasPrefix(\"when_two_examples_have_the_exact_name__\") }\n                    )\n                    .sort(<)\n                \n                expect(allSelectors) == [\n                    \"when_two_examples_have_the_exact_name__has_exactly_the_same_name\",\n                    \"when_two_examples_have_the_exact_name__has_exactly_the_same_name_2\",\n                    \"when_two_examples_have_the_exact_name__makes_a_unique_name_for_each_of_the_above\"\n                ]\n            }\n            \n        }\n\n        describe(\"error handling when misusing ordering\") {\n            it(\"an it\") {\n                expect {\n                    it(\"will throw an error when it is nested in another it\") { }\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'it' cannot be used inside 'it', 'it' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n\n            describe(\"behavior with an 'it' inside a 'beforeEach'\") {\n                var exception: NSException?\n\n                beforeEach {\n                    let capture = NMBExceptionCapture(handler: ({ e in\n                        exception = e\n                    }), finally: nil)\n\n                    capture.tryBlock {\n                        it(\"a rogue 'it' inside a 'beforeEach'\") { }\n                        return\n                    }\n                }\n\n                it(\"should have thrown an exception with the correct error message\") {\n                    expect(exception).toNot(beNil())\n                    expect(exception!.reason).to(equal(\"'it' cannot be used inside 'beforeEach', 'it' may only be used inside 'context' or 'describe'. \"))\n                }\n            }\n\n            describe(\"behavior with an 'it' inside an 'afterEach'\") {\n                var exception: NSException?\n\n                afterEach {\n                    let capture = NMBExceptionCapture(handler: ({ e in\n                        exception = e\n                        expect(exception).toNot(beNil())\n                        expect(exception!.reason).to(equal(\"'it' cannot be used inside 'afterEach', 'it' may only be used inside 'context' or 'describe'. \"))\n                    }), finally: nil)\n\n                    capture.tryBlock {\n                        it(\"a rogue 'it' inside an 'afterEach'\") { }\n                        return\n                    }\n                }\n\n                it(\"should throw an exception with the correct message after this 'it' block executes\") {  }\n            }\n        }\n#endif\n    }\n}\n\nclass ItTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAllExamplesAreExecuted\", testAllExamplesAreExecuted),\n        ]\n    }\n\n#if _runtime(_ObjC)\n    func testAllExamplesAreExecuted() {\n        let result = qck_runSpec(FunctionalTests_ItSpec.self)\n        XCTAssertEqual(result.executionCount, 10 as UInt)\n    }\n#else\n    func testAllExamplesAreExecuted() {\n        let result = qck_runSpec(FunctionalTests_ItSpec.self)\n        XCTAssertEqual(result.executionCount, 2 as UInt)\n    }\n#endif\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/PendingTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic NSUInteger oneExampleBeforeEachExecutedCount = 0;\nstatic NSUInteger onlyPendingExamplesBeforeEachExecutedCount = 0;\n\nQuickSpecBegin(FunctionalTests_PendingSpec_ObjC)\n\npending(@\"an example that will not run\", ^{\n    expect(@YES).to(beFalsy());\n});\n\ndescribe(@\"a describe block containing only one enabled example\", ^{\n    beforeEach(^{ oneExampleBeforeEachExecutedCount += 1; });\n    it(@\"an example that will run\", ^{});\n    pending(@\"an example that will not run\", ^{});\n});\n\ndescribe(@\"a describe block containing only pending examples\", ^{\n    beforeEach(^{ onlyPendingExamplesBeforeEachExecutedCount += 1; });\n    pending(@\"an example that will not run\", ^{});\n});\n\nQuickSpecEnd\n\n@interface PendingTests_ObjC : XCTestCase; @end\n\n@implementation PendingTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    oneExampleBeforeEachExecutedCount = 0;\n    onlyPendingExamplesBeforeEachExecutedCount = 0;\n}\n\n- (void)tearDown {\n    oneExampleBeforeEachExecutedCount = 0;\n    onlyPendingExamplesBeforeEachExecutedCount = 0;\n    [super tearDown];\n}\n\n- (void)testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail {\n    XCTestRun *result = qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n}\n\n- (void)testBeforeEachOnlyRunForEnabledExamples {\n    qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssertEqual(oneExampleBeforeEachExecutedCount, 1);\n}\n\n- (void)testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples {\n    qck_runSpec([FunctionalTests_PendingSpec_ObjC class]);\n    XCTAssertEqual(onlyPendingExamplesBeforeEachExecutedCount, 0);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/PendingTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar oneExampleBeforeEachExecutedCount = 0\nvar onlyPendingExamplesBeforeEachExecutedCount = 0\n\nclass FunctionalTests_PendingSpec: QuickSpec {\n    override func spec() {\n        xit(\"an example that will not run\") {\n            expect(true).to(beFalsy())\n        }\n\n        describe(\"a describe block containing only one enabled example\") {\n            beforeEach { oneExampleBeforeEachExecutedCount += 1 }\n            it(\"an example that will run\") {}\n            pending(\"an example that will not run\") {}\n        }\n\n        describe(\"a describe block containing only pending examples\") {\n            beforeEach { onlyPendingExamplesBeforeEachExecutedCount += 1 }\n            pending(\"an example that will not run\") {}\n        }\n    }\n}\n\nclass PendingTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail\", testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail),\n            (\"testBeforeEachOnlyRunForEnabledExamples\", testBeforeEachOnlyRunForEnabledExamples),\n            (\"testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples\", testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples),\n        ]\n    }\n\n    func testAnOtherwiseFailingExampleWhenMarkedPendingDoesNotCauseTheSuiteToFail() {\n        let result = qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssert(result.hasSucceeded)\n    }\n\n    func testBeforeEachOnlyRunForEnabledExamples() {\n        oneExampleBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssertEqual(oneExampleBeforeEachExecutedCount, 1)\n    }\n\n    func testBeforeEachDoesNotRunForContextsWithOnlyPendingExamples() {\n        onlyPendingExamplesBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_PendingSpec.self)\n        XCTAssertEqual(onlyPendingExamplesBeforeEachExecutedCount, 0)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamples+BeforeEachTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nstatic NSUInteger specBeforeEachExecutedCount = 0;\nstatic NSUInteger sharedExamplesBeforeEachExecutedCount = 0;\n\nQuickConfigurationBegin(FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples_ObjC)\n\n+ (void)configure:(Configuration *)configuration {\n    sharedExamples(@\"a group of three shared examples with a beforeEach in Obj-C\",\n                   ^(QCKDSLSharedExampleContext context) {\n        beforeEach(^{ sharedExamplesBeforeEachExecutedCount += 1; });\n        it(@\"passes once\", ^{});\n        it(@\"passes twice\", ^{});\n        it(@\"passes three times\", ^{});\n    });\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_BeforeEachSpec_ObjC)\n\nbeforeEach(^{ specBeforeEachExecutedCount += 1; });\nit(@\"executes the spec beforeEach once\", ^{});\nitBehavesLike(@\"a group of three shared examples with a beforeEach in Obj-C\",\n              ^NSDictionary*{ return @{}; });\n\nQuickSpecEnd\n\n@interface SharedExamples_BeforeEachTests_ObjC : XCTestCase; @end\n\n@implementation SharedExamples_BeforeEachTests_ObjC\n\n- (void)setUp {\n    [super setUp];\n    specBeforeEachExecutedCount = 0;\n    sharedExamplesBeforeEachExecutedCount = 0;\n}\n\n- (void)tearDown {\n    specBeforeEachExecutedCount = 0;\n    sharedExamplesBeforeEachExecutedCount = 0;\n    [super tearDown];\n}\n\n- (void)testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample {\n    qck_runSpec([FunctionalTests_SharedExamples_BeforeEachSpec_ObjC class]);\n    XCTAssertEqual(specBeforeEachExecutedCount, 4);\n}\n\n- (void)testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample {\n    qck_runSpec([FunctionalTests_SharedExamples_BeforeEachSpec_ObjC class]);\n    XCTAssertEqual(sharedExamplesBeforeEachExecutedCount, 3);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamples+BeforeEachTests.swift",
    "content": "import XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nvar specBeforeEachExecutedCount = 0\nvar sharedExamplesBeforeEachExecutedCount = 0\n\nclass FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples: QuickConfiguration {\n    override class func configure(configuration: Configuration) {\n        sharedExamples(\"a group of three shared examples with a beforeEach\") {\n            beforeEach { sharedExamplesBeforeEachExecutedCount += 1 }\n            it(\"passes once\") {}\n            it(\"passes twice\") {}\n            it(\"passes three times\") {}\n        }\n    }\n}\n\nclass FunctionalTests_SharedExamples_BeforeEachSpec: QuickSpec {\n    override func spec() {\n        beforeEach { specBeforeEachExecutedCount += 1 }\n        it(\"executes the spec beforeEach once\") {}\n        itBehavesLike(\"a group of three shared examples with a beforeEach\")\n    }\n}\n\nclass SharedExamples_BeforeEachTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample\", testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample),\n            (\"testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample\", testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample),\n        ]\n    }\n\n    func testBeforeEachOutsideOfSharedExamplesExecutedOnceBeforeEachExample() {\n        specBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_SharedExamples_BeforeEachSpec.self)\n        XCTAssertEqual(specBeforeEachExecutedCount, 4)\n    }\n\n    func testBeforeEachInSharedExamplesExecutedOnceBeforeEachSharedExample() {\n        sharedExamplesBeforeEachExecutedCount = 0\n\n        qck_runSpec(FunctionalTests_SharedExamples_BeforeEachSpec.self)\n        XCTAssertEqual(sharedExamplesBeforeEachExecutedCount, 3)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamplesTests+ObjC.m",
    "content": "@import XCTest;\n@import Quick;\n@import Nimble;\n\n#import \"QCKSpecRunner.h\"\n\nQuickSpecBegin(FunctionalTests_SharedExamples_Spec_ObjC)\n\nitBehavesLike(@\"a group of three shared examples\", ^NSDictionary*{ return @{}; });\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_ContextSpec_ObjC)\n\nitBehavesLike(@\"shared examples that take a context\", ^NSDictionary *{\n    return @{ @\"callsite\": @\"SharedExamplesSpec\" };\n});\n\nQuickSpecEnd\n\nQuickSpecBegin(FunctionalTests_SharedExamples_SameContextSpec_ObjC)\n\n__block NSInteger counter = 0;\n\nafterEach(^{\n    counter++;\n});\n\nsharedExamples(@\"gets called with a different context from within the same spec file\", ^(QCKDSLSharedExampleContext exampleContext) {\n    \n    it(@\"tracks correctly\", ^{\n        NSString *payload = exampleContext()[@\"payload\"];\n        BOOL expected = [payload isEqualToString:[NSString stringWithFormat:@\"%ld\", (long)counter]];\n        expect(@(expected)).to(beTrue());\n    });\n    \n});\n\nitBehavesLike(@\"gets called with a different context from within the same spec file\", ^{\n    return @{ @\"payload\" : @\"0\" };\n});\n\nitBehavesLike(@\"gets called with a different context from within the same spec file\", ^{\n    return @{ @\"payload\" : @\"1\" };\n});\n\nQuickSpecEnd\n\n\n@interface SharedExamplesTests_ObjC : XCTestCase; @end\n\n@implementation SharedExamplesTests_ObjC\n\n- (void)testAGroupOfThreeSharedExamplesExecutesThreeExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_SharedExamples_Spec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n    XCTAssertEqual(result.executionCount, 3);\n}\n\n- (void)testSharedExamplesWithContextPassContextToExamples {\n    XCTestRun *result = qck_runSpec([FunctionalTests_SharedExamples_ContextSpec_ObjC class]);\n    XCTAssert(result.hasSucceeded);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/FunctionalTests/SharedExamplesTests.swift",
    "content": "import Foundation\nimport XCTest\nimport Quick\nimport Nimble\n#if SWIFT_PACKAGE\nimport QuickTestHelpers\n#endif\n\nclass FunctionalTests_SharedExamples_Spec: QuickSpec {\n    override func spec() {\n        itBehavesLike(\"a group of three shared examples\")\n    }\n}\n\nclass FunctionalTests_SharedExamples_ContextSpec: QuickSpec {\n    override func spec() {\n        itBehavesLike(\"shared examples that take a context\") { [NSString(string: \"callsite\"): NSString(string: \"SharedExamplesSpec\")] }\n    }\n}\n\n#if _runtime(_ObjC)\nclass FunctionalTests_SharedExamples_ErrorSpec: QuickSpec {\n    override func spec() {\n        describe(\"error handling when misusing ordering\") {\n            it(\"should throw an exception when including itBehavesLike in it block\") {\n                expect {\n                    itBehavesLike(\"a group of three shared examples\")\n                    }.to(raiseException { (exception: NSException) in\n                        expect(exception.name).to(equal(NSInternalInconsistencyException))\n                        expect(exception.reason).to(equal(\"'itBehavesLike' cannot be used inside 'it', 'itBehavesLike' may only be used inside 'context' or 'describe'. \"))\n                        })\n            }\n        }\n    }\n}\n#endif\n\n// Shared examples are defined in QuickTests/Fixtures\nclass SharedExamplesTests: XCTestCase, XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] {\n        return [\n            (\"testAGroupOfThreeSharedExamplesExecutesThreeExamples\", testAGroupOfThreeSharedExamplesExecutesThreeExamples),\n            (\"testSharedExamplesWithContextPassContextToExamples\", testSharedExamplesWithContextPassContextToExamples),\n        ]\n    }\n\n    func testAGroupOfThreeSharedExamplesExecutesThreeExamples() {\n        let result = qck_runSpec(FunctionalTests_SharedExamples_Spec.self)\n        XCTAssert(result.hasSucceeded)\n        XCTAssertEqual(result.executionCount, 3 as UInt)\n    }\n\n    func testSharedExamplesWithContextPassContextToExamples() {\n        let result = qck_runSpec(FunctionalTests_SharedExamples_ContextSpec.self)\n        XCTAssert(result.hasSucceeded)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QCKSpecRunner.h",
    "content": "@import XCTest;\n\n/**\n Runs an XCTestSuite instance containing only the given XCTestCase subclass.\n Use this to run QuickSpec subclasses from within a set of unit tests.\n\n Due to implicit dependencies in _XCTFailureHandler, this function raises an\n exception when used in Swift to run a failing test case.\n\n @param specClass The class of the spec to be run.\n @return An XCTestRun instance that contains information such as the number of failures, etc.\n */\nextern XCTestRun *qck_runSpec(Class specClass);\n\n/**\n Runs an XCTestSuite instance containing the given XCTestCase subclasses, in the order provided.\n See the documentation for `qck_runSpec` for more details.\n\n @param specClasses An array of QuickSpec classes, in the order they should be run.\n @return An XCTestRun instance that contains information such as the number of failures, etc.\n */\nextern XCTestRun *qck_runSpecs(NSArray *specClasses);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QCKSpecRunner.m",
    "content": "@import Quick;\n\n#import \"QCKSpecRunner.h\"\n#import \"XCTestObservationCenter+QCKSuspendObservation.h\"\n#import \"World.h\"\n\n@interface XCTest (Redeclaration)\n- (XCTestRun *)run;\n@end\n\nXCTestRun *qck_runSuite(XCTestSuite *suite) {\n    [World sharedWorld].isRunningAdditionalSuites = YES;\n\n    __block XCTestRun *result = nil;\n    [[XCTestObservationCenter sharedTestObservationCenter] qck_suspendObservationForBlock:^{\n        if ([suite respondsToSelector:@selector(runTest)]) {\n            [suite runTest];\n            result = suite.testRun;\n        } else {\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-declarations\"\n            result = [suite run];\n#pragma clang diagnostic pop\n        }\n    }];\n    return result;\n}\n\nXCTestRun *qck_runSpec(Class specClass) {\n    return qck_runSuite([XCTestSuite testSuiteForTestCaseClass:specClass]);\n}\n\nXCTestRun *qck_runSpecs(NSArray *specClasses) {\n    XCTestSuite *suite = [XCTestSuite testSuiteWithName:@\"MySpecs\"];\n    for (Class specClass in specClasses) {\n        [suite addTest:[XCTestSuite testSuiteForTestCaseClass:specClass]];\n    }\n\n    return qck_runSuite(suite);\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.h",
    "content": "#import <Quick/Quick.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface QuickSpec (QuickSpec_MethodList)\n\n+ (NSSet<NSString*> *)allSelectors;\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.m",
    "content": "#import \"QuickSpec+QuickSpec_MethodList.h\"\n#import <objc/runtime.h>\n\n\n@implementation QuickSpec (QuickSpec_MethodList)\n\n/**\n *  This method will instantiate an instance of the class on which it is called,\n *  returning a list of selector names for it.\n *\n *  @warning Only intended to be used in test assertions!\n *\n *  @return a set of NSStrings representing the list of selectors it contains\n */\n+ (NSSet<NSString*> *)allSelectors {\n    QuickSpec *specInstance = [[[self class] alloc] init];\n    NSMutableSet<NSString*> *allSelectors = [NSMutableSet set];\n    \n    unsigned int methodCount = 0;\n    Method *mlist = class_copyMethodList(object_getClass(specInstance), &methodCount);\n\n    for(unsigned int i = 0; i < methodCount; i++) {\n        SEL selector = method_getName(mlist[i]);\n        [allSelectors addObject:NSStringFromSelector(selector)];\n    }\n    \n    free(mlist);\n    return [allSelectors copy];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/QuickTestsBridgingHeader.h",
    "content": "#import \"QCKSpecRunner.h\"\n#import \"QuickSpec+QuickSpec_MethodList.h\""
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestCaseProvider.swift",
    "content": "import Foundation\nimport XCTest\n\n// XCTestCaseProvider is defined in swift-corelibs-xctest, but is not available\n// in the XCTest that ships with Xcode. By defining this protocol on Apple platforms,\n// we ensure that the tests fail in Xcode if they haven't been configured properly to\n// be run with the open-source tools.\n\n#if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)\n\npublic protocol XCTestCaseProvider {\n    var allTests: [(String, () throws -> Void)] { get }\n}\n\nextension XCTestCase {\n    override public func tearDown() {\n        if let provider = self as? XCTestCaseProvider {\n            provider.assertContainsTest(invocation!.selector.description)\n        }\n\n        super.tearDown()\n    }\n}\n\nextension XCTestCaseProvider {\n    private func assertContainsTest(name: String) {\n        let contains = self.allTests.contains({ test in\n            return test.0 == name\n        })\n\n        XCTAssert(contains, \"Test '\\(name)' is missing from the allTests array\")\n    }\n}\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestObservationCenter+QCKSuspendObservation.h",
    "content": "#import <XCTest/XCTest.h>\n\n/**\n Add the ability to temporarily disable internal XCTest execution observation in\n order to run isolated XCTestSuite instances while the QuickTests test suite is running.\n */\n@interface XCTestObservationCenter (QCKSuspendObservation)\n\n/**\n Suspends test suite observation for XCTest-provided observers for the duration that\n the block is executing. Any test suites that are executed within the block do not \n generate any log output. Failures are still reported.\n\n Use this method to run XCTestSuite objects while another XCTestSuite is running.\n Without this method, tests fail with the message: \"Timed out waiting for IDE\n barrier message to complete\" or \"Unexpected TestSuiteDidStart\".\n */\n- (void)qck_suspendObservationForBlock:(void (^)(void))block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Helpers/XCTestObservationCenter+QCKSuspendObservation.m",
    "content": "@import XCTest;\n#import <objc/runtime.h>\n\n@interface XCTestObservationCenter (Redeclaration)\n- (id)observers;\n- (void)removeTestObserver:(id<XCTestObservation>)testObserver;\n@end\n\n@implementation XCTestObservationCenter (QCKSuspendObservation)\n\n/// This allows us to only suspend observation for observers by provided by Apple\n/// as a part of the XCTest framework. In particular it is important that we not\n/// suspend the observer added by Nimble, otherwise it is unable to properly\n/// report assertion failures.\nstatic BOOL (^isFromApple)(id) = ^BOOL(id observer){\n    return [[NSBundle bundleForClass:[observer class]].bundleIdentifier containsString:@\"com.apple.dt.XCTest\"];\n};\n\n- (void)qck_suspendObservationForBlock:(void (^)(void))block {\n    id originalObservers = [[self observers] copy];\n    NSMutableArray *suspendedObservers = [NSMutableArray new];\n\n    for (id observer in originalObservers) {\n        if (isFromApple(observer)) {\n            [suspendedObservers addObject:observer];\n\n            if ([self respondsToSelector:@selector(removeTestObserver:)]) {\n                [self removeTestObserver:observer];\n            }\n            else if ([[self observers] respondsToSelector:@selector(removeObject:)]) {\n                [[self observers] removeObject:observer];\n            }\n            else {\n                NSAssert(NO, @\"unexpected type: unable to remove observers: %@\", originalObservers);\n            }\n        }\n    }\n\n    @try {\n        block();\n    }\n    @finally {\n        for (id observer in suspendedObservers) {\n            if ([[self observers] respondsToSelector:@selector(addObject:)]) {\n                [[self observers] addObject:observer];\n            }\n            else if ([self respondsToSelector:@selector(addTestObserver:)]) {\n                [self addTestObserver:observer];\n            }\n        }\n    }\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/QuickConfigurationTests.m",
    "content": "#import <XCTest/XCTest.h>\n#import <Quick/Quick.h>\n\n@interface QuickConfigurationTests : XCTestCase; @end\n\n@implementation QuickConfigurationTests\n\n- (void)testInitThrows {\n    XCTAssertThrowsSpecificNamed([QuickConfiguration new], NSException, NSInternalInconsistencyException);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/Sources/QuickTests/main.swift",
    "content": "import Quick\n\nQCKMain([\n    FunctionalTests_AfterEachSpec(),\n    AfterEachTests(),\n    FunctionalTests_AfterSuite_AfterSuiteSpec(),\n    FunctionalTests_AfterSuite_Spec(),\n    AfterSuiteTests(),\n    FunctionalTests_BeforeEachSpec(),\n    BeforeEachTests(),\n    FunctionalTests_BeforeSuite_BeforeSuiteSpec(),\n    FunctionalTests_BeforeSuite_Spec(),\n    BeforeSuiteTests(),\n    // DescribeTests(),\n    FunctionalTests_ItSpec(),\n    ItTests(),\n    FunctionalTests_PendingSpec(),\n    PendingTests(),\n    FunctionalTests_SharedExamples_BeforeEachSpec(),\n    SharedExamples_BeforeEachTests(),\n    FunctionalTests_SharedExamples_Spec(),\n    FunctionalTests_SharedExamples_ContextSpec(),\n    SharedExamplesTests(),\n    Configuration_AfterEachSpec(),\n    Configuration_AfterEachTests(),\n    Configuration_BeforeEachSpec(),\n    Configuration_BeforeEachTests(),\n    FunctionalTests_CrossReferencingSpecA(),\n    FunctionalTests_CrossReferencingSpecB(),\n],\nconfigurations: [\n    FunctionalTests_SharedExamples_BeforeEachTests_SharedExamples.self,\n    FunctionalTests_SharedExamplesTests_SharedExamples.self,\n    FunctionalTests_Configuration_AfterEach.self,\n    FunctionalTests_Configuration_BeforeEach.self,\n]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/circle.yml",
    "content": "machine:\n  xcode:\n    version: \"7.3\"\n\ncheckout:\n  post:\n    - git submodule update --init --recursive\n\ndependencies:\n  pre:\n    - brew update\n    - brew outdated xctool || brew upgrade xctool\n\ntest:\n  override:\n    - rake test:ios\n    - rake test:osx\n    - rake test:xctool:ios\n    - rake test:xctool:osx\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/script/release",
    "content": "#!/usr/bin/env sh\nREMOTE_BRANCH=master\nPOD_NAME=Quick\nPODSPEC=Quick.podspec\n\nPOD=${COCOAPODS:-pod}\n\nfunction help {\n    echo \"Usage: release VERSION RELEASE_NOTES [-f]\"\n    echo\n    echo \"VERSION should be the version to release, should not include the 'v' prefix\"\n    echo \"RELEASE_NOTES should be a file that lists all the release notes for this version\"\n    echo \"              if file does not exist, creates a git-style commit with a diff as a comment\"\n    echo\n    echo \"FLAGS\"\n    echo \"  -f  Forces override of tag\"\n    echo\n    echo \"  Example: ./release 1.0.0-rc.2 ./release-notes.txt\"\n    echo\n    echo \"HINT: use 'git diff <PREVIOUS_TAG>...HEAD' to build the release notes\"\n    echo\n    exit 2\n}\n\nfunction die {\n    echo \"[ERROR] $@\"\n    echo\n    exit 1\n}\n\nif [ $# -lt 2 ]; then\n    help\nfi\n\nVERSION=$1\nRELEASE_NOTES=$2\nFORCE_TAG=$3\n\nVERSION_TAG=\"v$VERSION\"\n\necho \"-> Verifying Local Directory for Release\"\n\nif [ -z \"`which $POD`\" ]; then\n    die \"Cocoapods is required to produce a release. Aborting.\"\nfi\necho \" > Cocoapods is installed\"\n\necho \" > Is this a reasonable tag?\"\n\necho $VERSION_TAG | grep -q \"^vv\"\nif [ $? -eq 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. You should remove the 'v' prefix.\"\nfi\n\necho $VERSION_TAG | grep -q -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\"\nif [ $? -ne 0 ]; then\n    die \"This tag ($VERSION) is an incorrect format. It should be in 'v{MAJOR}.{MINOR}.{PATCH}(-{PRERELEASE_NAME}.{PRERELEASE_VERSION})' form.\"\nfi\n\necho \" > Is this version ($VERSION) unique?\"\ngit describe --exact-match \"$VERSION_TAG\" > /dev/null 2>&1\nif [ $? -eq 0 ]; then\n    if [ -z \"$FORCE_TAG\" ]; then\n        die \"This tag ($VERSION) already exists. Aborting. Append '-f' to override\"\n    else\n        echo \" > NO, but force was specified.\"\n    fi\nelse\n    echo \" > Yes, tag is unique\"\nfi\n\nif [ ! -f \"$RELEASE_NOTES\" ]; then\n    echo \" > Failed to find $RELEASE_NOTES. Prompting editor\"\n    RELEASE_NOTES=.release-changes\n    LATEST_TAG=`git for-each-ref refs/tags --sort=-refname --format=\"%(refname:short)\" | grep -E \"^v\\d+\\.\\d+\\.\\d+(-\\w+(\\.\\d)?)?\\$\" | ruby -e 'puts STDIN.read.split(\"\\n\").sort { |a,b| Gem::Version.new(a.gsub(/^v/, \"\")) <=> Gem::Version.new(b.gsub(/^v/, \"\")) }.last'`\n    echo \" > Latest tag ${LATEST_TAG}\"\n    echo \"${POD_NAME} v$VERSION\" > $RELEASE_NOTES\n    echo \"================\" >> $RELEASE_NOTES\n    echo >> $RELEASE_NOTES\n    echo \"# Changelog from ${LATEST_TAG}..HEAD\" >> $RELEASE_NOTES\n    git log ${LATEST_TAG}..HEAD | sed -e 's/^/# /' >> $RELEASE_NOTES\n    $EDITOR $RELEASE_NOTES\n    diff -q $RELEASE_NOTES ${RELEASE_NOTES}.backup > /dev/null 2>&1\n    STATUS=$?\n    rm ${RELEASE_NOTES}.backup\n    if [ $STATUS -eq 0 ]; then\n        rm $RELEASE_NOTES\n        die \"No changes in release notes file. Aborting.\"\n    fi\nfi\necho \" > Release notes: $RELEASE_NOTES\"\n\nif [ ! -f \"$PODSPEC\" ]; then\n    die \"Cannot find podspec: $PODSPEC. Aborting.\"\nfi\necho \" > Podspec exists\"\n\ngit config --get user.signingkey > /dev/null || {\n    echo \"[ERROR] No PGP found to sign tag. Aborting.\"\n    echo\n    echo \"  Creating a release requires signing the tag for security purposes. This allows users to verify the git cloned tree is from a trusted source.\"\n    echo \"  From a security perspective, it is not considered safe to trust the commits (including Author & Signed-off fields). It is easy for any\"\n    echo \"  intermediate between you and the end-users to modify the git repository.\"\n    echo\n    echo \"  While not all users may choose to verify the PGP key for tagged releases. It is a good measure to ensure 'this is an official release'\"\n    echo \"  from the official maintainers.\"\n    echo\n    echo \"  If you're creating your PGP key for the first time, use RSA with at least 4096 bits.\"\n    echo\n    echo \"Related resources:\"\n    echo \" - Configuring your system for PGP: https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work\"\n    echo \" - Why: http://programmers.stackexchange.com/questions/212192/what-are-the-advantages-and-disadvantages-of-cryptographically-signing-commits-a\"\n    echo\n    exit 2\n}\necho \" > Found PGP key for git\"\n\n# Verify cocoapods trunk ownership\npod trunk me | grep -q \"$POD_NAME\" || die \"You do not have access to pod repository $POD_NAME. Aborting.\"\necho \" > Verified ownership to $POD_NAME pod\"\n\n\necho \"--- Releasing version $VERSION (tag: $VERSION_TAG)...\"\n\nfunction restore_podspec {\n    if [ -f \"${PODSPEC}.backup\" ]; then\n        mv -f ${PODSPEC}{.backup,}\n    fi\n}\n\necho \"-> Ensuring no differences to origin/$REMOTE_BRANCH\"\ngit fetch origin || die \"Failed to fetch origin\"\ngit diff --quiet HEAD \"origin/$REMOTE_BRANCH\" || die \"HEAD is not aligned to origin/$REMOTE_BRANCH. Cannot update version safely\"\n\necho \"-> Setting podspec version\"\ncat \"$PODSPEC\" | grep 's.version' | grep -q \"\\\"$VERSION\\\"\"\nSET_PODSPEC_VERSION=$?\nif [ $SET_PODSPEC_VERSION -eq 0 ]; then\n    echo \" > Podspec already set to $VERSION. Skipping.\"\nelse\n    sed -i.backup \"s/s.version *= *\\\".*\\\"/s.version      = \\\"$VERSION\\\"/g\" \"$PODSPEC\" || {\n        restore_podspec\n        die \"Failed to update version in podspec\"\n    }\n\n    git add ${PODSPEC} || { restore_podspec; die \"Failed to add ${PODSPEC} to INDEX\"; }\n    git commit -m \"Bumping version to $VERSION\" || { restore_podspec; die \"Failed to push updated version: $VERSION\"; }\nfi\n\nif [ -z \"$FORCE_TAG\" ]; then\n    echo \"-> Tagging version\"\n    git tag -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin\"\n    git push origin \"$VERSION_TAG\" || die \"Failed to push tag '$VERSION_TAG' to origin\"\nelse\n    echo \"-> Tagging version (force)\"\n    git tag -f -s \"$VERSION_TAG\" -F \"$RELEASE_NOTES\" || die \"Failed to tag version\"\n    echo \"-> Pushing tag to origin (force)\"\n    git push origin \"$VERSION_TAG\" -f || die \"Failed to push tag '$VERSION_TAG' to origin\"\nfi\n\nif [ $SET_PODSPEC_VERSION -ne 0 ]; then\n    rm $RELEASE_NOTES\n    git push origin \"$REMOTE_BRANCH\" || die \"Failed to push to origin\"\n    echo \" > Pushed version to origin\"\nfi\n\necho\necho \"Pushing to pod trunk...\"\n\n$POD trunk push \"$PODSPEC\"\n\necho\necho \"================ Finalizing the Release ================\"\necho\necho \" - Opening GitHub to mark this as a release...\"\necho \"   - Paste the contents of $RELEASE_NOTES into the release notes. Tweak for Github styling.\"\necho \" - Announce!\"\n\nopen \"https://github.com/Quick/Quick/releases/new?tag=$VERSION_TAG\"\n\nrm ${PODSPEC}.backup\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/script/travis-install-linux",
    "content": "#!/usr/bin/env bash\nset -e\n\n# See: https://github.com/kylef/swiftenv/wiki/Travis-CI\ncurl -sL https://gist.github.com/kylef/5c0475ff02b7c7671d2a/raw/621ef9b29bbb852fdfd2e10ed147b321d792c1e4/swiftenv-install.sh | bash\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/script/travis-install-osx",
    "content": "#!/usr/bin/env sh\nset -e\n\ngit submodule update --init --recursive\n\nif [[ \"$XCTOOL\" -eq 1 ]]; then\n  brew update\n  brew outdated xctool || brew upgrade xctool\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/script/travis-script-linux",
    "content": "#!/usr/bin/env sh\n\n. ~/.swiftenv/init\nrake test:swiftpm\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Quick/script/travis-script-osx",
    "content": "#!/usr/bin/env sh\n\nif [ \"$PODSPEC\" ]; then\n  TASK=\"podspec:lint\"\nelse\n  TASK=\"test\"\n\n  if [ \"$XCTOOL\" ]; then TASK=\"$TASK:xctool\"; fi\n  TASK=\"$TASK:$PLATFORM\"\nfi\n\necho \"Executing rake task: $TASK\"\nrake \"$TASK\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/.gitignore",
    "content": ".DS_Store\nxcuserdata\n*.xcuserdatad\n*.xccheckout\n*.mode*\n*.pbxuser\n\nCarthage/Build\n.build\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-05-31-a\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/.travis.yml",
    "content": "matrix:\n  include:\n    - script:\n        - xcodebuild test -scheme Result-Mac\n        - xcodebuild test -scheme Result-iOS -sdk iphonesimulator\n        - xcodebuild test -scheme Result-tvOS -sdk appletvsimulator\n        - xcodebuild build -scheme Result-watchOS -sdk watchsimulator\n        - pod lib lint\n      env: JOB=Xcode7.3\n      os: osx\n      osx_image: xcode7.3\n      language: objective-c\n    - script:\n        - xcodebuild test -scheme Result-Mac\n        - xcodebuild build -scheme Result-iOS -sdk iphonesimulator -destination \"name=iPhone 6s\"\n        - xcodebuild test -scheme Result-tvOS -sdk appletvsimulator -destination \"name=Apple TV 1080p\"\n        - xcodebuild build -scheme Result-watchOS -sdk watchsimulator -destination \"name=Apple Watch - 38mm\"\n      env: JOB=Xcode8\n      os: osx\n      osx_image: xcode8\n      language: objective-c\n    - script:\n        - swift build\n        - swift test\n      env: JOB=SPM\n      os: osx\n      osx_image: xcode7.3\n      language: objective-c\n      install:\n        - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n    - script:\n        - swift build\n        - swift test\n      env: JOB=Linux\n      sudo: required\n      dist: trusty\n      language: generic\n      install:\n        - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\nnotifications:\n  email: false\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/CONTRIBUTING.md",
    "content": "We love that you're interested in contributing to this project!\n\nTo make the process as painless as possible, we have just a couple of guidelines\nthat should make life easier for everyone involved.\n\n## Prefer Pull Requests\n\nIf you know exactly how to implement the feature being suggested or fix the bug\nbeing reported, please open a pull request instead of an issue. Pull requests are easier than\npatches or inline code blocks for discussing and merging the changes.\n\nIf you can't make the change yourself, please open an issue after making sure\nthat one isn't already logged.\n\n## Contributing Code\n\nFork this repository, make it awesomer (preferably in a branch named for the\ntopic), send a pull request!\n\nAll code contributions should match our [coding\nconventions](https://github.com/github/swift-style-guide).\n\nThanks for contributing! :boom::camel:\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2014 Rob Rix\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Result\",\n    targets: [\n        Target(\n            name: \"Result\"\n        )\n    ]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/README.md",
    "content": "# Result\n\n[![Build Status](https://travis-ci.org/antitypical/Result.svg?branch=master)](https://travis-ci.org/antitypical/Result)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![CocoaPods](https://img.shields.io/cocoapods/v/Result.svg)](https://cocoapods.org/)\n[![Reference Status](https://www.versioneye.com/objective-c/result/reference_badge.svg?style=flat)](https://www.versioneye.com/objective-c/result/references)\n\nThis is a Swift µframework providing `Result<Value, Error>`.\n\n`Result<Value, Error>` values are either successful (wrapping `Value`) or failed (wrapping `Error`). This is similar to Swift’s native `Optional` type: `Success` is like `Some`, and `Failure` is like `None` except with an associated `ErrorType` value. The addition of an associated `ErrorType` allows errors to be passed along for logging or displaying to the user.\n\nUsing this µframework instead of rolling your own `Result` type allows you to easily interface with other frameworks that also use `Result`.\n\n## Use\n\nUse `Result` whenever an operation has the possibility of failure. Consider the following example of a function that tries to extract a `String` for a given key from a JSON `Dictionary`.\n\n```swift\ntypealias JSONObject = [String:AnyObject]\n\nenum JSONError : ErrorType {\n    case NoSuchKey(String)\n    case TypeMismatch\n}\n\nfunc stringForKey(json: JSONObject, key: String) -> Result<String, JSONError> {\n    guard let value = json[key] else {\n        return .Failure(.NoSuchKey(key))\n    }\n    \n    if let value = value as? String {\n        return .Success(value)\n    }\n    else {\n        return .Failure(.TypeMismatch)\n    }\n}\n```\n\nThis function provides a more robust wrapper around the default subscripting provided by `Dictionary`. Rather than return `AnyObject?`, it returns a `Result` that either contains the `String` value for the given key, or an `ErrorType` detailing what went wrong.\n\nOne simple way to handle a `Result` is to deconstruct it using a `switch` statement.\n\n```swift\nswitch stringForKey(json, key: \"email\") {\n\ncase let .Success(email):\n    print(\"The email is \\(email)\")\n    \ncase let .Failure(JSONError.NoSuchKey(key)):\n    print(\"\\(key) is not a valid key\")\n    \ncase .Failure(JSONError.TypeMismatch):\n    print(\"Didn't have the right type\")\n}\n```\n\nUsing a `switch` statement allows powerful pattern matching, and ensures all possible results are covered. Swift 2.0 offers new ways to deconstruct enums like the `if-case` statement, but be wary as such methods do not ensure errors are handled.\n\nOther methods available for processing `Result` are detailed in the [API documentation](http://cocoadocs.org/docsets/Result/).\n\n## Result vs. Throws\n\nSwift 2.0 introduces error handling via throwing and catching `ErrorType`. `Result` accomplishes the same goal by encapsulating the result instead of hijacking control flow. The `Result` abstraction enables powerful functionality such as `map` and `flatMap`, making `Result` more composable than `throw`.\n\nSince dealing with APIs that throw is common, you can convert such functions into a `Result` by using the `materialize` method. Conversely, a `Result` can be used to throw an error by calling `dematerialize`.\n\n## Higher Order Functions\n\n`map` and `flatMap` operate the same as `Optional.map` and `Optional.flatMap` except they apply to `Result`.\n\n`map` transforms a `Result` into a `Result` of a new type. It does this by taking a function that transforms the `Value` type into a new value. This transformation is only applied in the case of a `Success`. In the case of a `Failure`, the associated error is re-wrapped in the new `Result`.\n\n```swift\n// transforms a Result<Int, JSONError> to a Result<String, JSONError>\nlet idResult = intForKey(json, key:\"id\").map { id in String(id) }\n```\n\nHere, the final result is either the id as a `String`, or carries over the `.Failure` from the previous result.\n\n`flatMap` is similar to `map` in that in transforms the `Result` into another `Result`. However, the function passed into `flatMap` must return a `Result`.\n\nAn in depth discussion of `map` and `flatMap` is beyond the scope of this documentation. If you would like a deeper understanding, read about functors and monads. This article is a good place to [start](http://www.javiersoto.me/post/106875422394).\n\n## Integration\n\n1. Add this repository as a submodule and/or [add it to your Cartfile](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfile) if you’re using [carthage](https://github.com/Carthage/Carthage/) to manage your dependencies.\n2. Drag `Result.xcodeproj` into your project or workspace.\n3. Link your target against `Result.framework`.\n4. Application targets should ensure that the framework gets copied into their application bundle. (Framework targets should instead require the application linking them to include Result.)\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.1.3</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2015 Rob Rix. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result/Result.h",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n/// Project version number for Result.\nextern double ResultVersionNumber;\n\n/// Project version string for Result.\nextern const unsigned char ResultVersionString[];\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result/Result.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n/// An enum representing either a failure with an explanatory error, or a success with a result value.\npublic enum Result<T, Error: ResultErrorType>: ResultType, CustomStringConvertible, CustomDebugStringConvertible {\n\tcase Success(T)\n\tcase Failure(Error)\n\n\t// MARK: Constructors\n\n\t/// Constructs a success wrapping a `value`.\n\tpublic init(value: T) {\n\t\tself = .Success(value)\n\t}\n\n\t/// Constructs a failure wrapping an `error`.\n\tpublic init(error: Error) {\n\t\tself = .Failure(error)\n\t}\n\n\t/// Constructs a result from an Optional, failing with `Error` if `nil`.\n#if swift(>=3)\n\tpublic init(_ value: T?, failWith: @autoclosure () -> Error) {\n\t\tself = value.map(Result.Success) ?? .Failure(failWith())\n\t}\n#else\n\tpublic init(_ value: T?, @autoclosure failWith: () -> Error) {\n\t\tself = value.map(Result.Success) ?? .Failure(failWith())\n\t}\n#endif\n\n\t/// Constructs a result from a function that uses `throw`, failing with `Error` if throws.\n#if swift(>=3)\n\tpublic init(_ f: @autoclosure () throws -> T) {\n\t\tself.init(attempt: f)\n\t}\n#else\n\tpublic init(@autoclosure _ f: () throws -> T) {\n\t\tself.init(attempt: f)\n\t}\n#endif\n\n\t/// Constructs a result from a function that uses `throw`, failing with `Error` if throws.\n#if swift(>=3)\n\tpublic init(attempt f: @noescape () throws -> T) {\n\t\tdo {\n\t\t\tself = .Success(try f())\n\t\t} catch {\n\t\t\tself = .Failure(error as! Error)\n\t\t}\n\t}\n#else\n\tpublic init(@noescape attempt f: () throws -> T) {\n\t\tdo {\n\t\t\tself = .Success(try f())\n\t\t} catch {\n\t\t\tself = .Failure(error as! Error)\n\t\t}\n\t}\n#endif\n\n\t// MARK: Deconstruction\n\n\t/// Returns the value from `Success` Results or `throw`s the error.\n\tpublic func dematerialize() throws -> T {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn value\n\t\tcase let .Failure(error):\n\t\t\tthrow error\n\t\t}\n\t}\n\n\t/// Case analysis for Result.\n\t///\n\t/// Returns the value produced by applying `ifFailure` to `Failure` Results, or `ifSuccess` to `Success` Results.\n#if swift(>=3)\n\tpublic func analysis<Result>(ifSuccess: @noescape (T) -> Result, ifFailure: @noescape (Error) -> Result) -> Result {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn ifSuccess(value)\n\t\tcase let .Failure(value):\n\t\t\treturn ifFailure(value)\n\t\t}\n\t}\n#else\n\tpublic func analysis<Result>(@noescape ifSuccess ifSuccess: T -> Result, @noescape ifFailure: Error -> Result) -> Result {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn ifSuccess(value)\n\t\tcase let .Failure(value):\n\t\t\treturn ifFailure(value)\n\t\t}\n\t}\n#endif\n\n\t// MARK: Errors\n\n\t/// The domain for errors constructed by Result.\n\tpublic static var errorDomain: String { return \"com.antitypical.Result\" }\n\n\t/// The userInfo key for source functions in errors constructed by Result.\n\tpublic static var functionKey: String { return \"\\(errorDomain).function\" }\n\n\t/// The userInfo key for source file paths in errors constructed by Result.\n\tpublic static var fileKey: String { return \"\\(errorDomain).file\" }\n\n\t/// The userInfo key for source file line numbers in errors constructed by Result.\n\tpublic static var lineKey: String { return \"\\(errorDomain).line\" }\n\n\t#if os(Linux)\n\tprivate typealias UserInfoType = Any\n\t#else\n\tprivate typealias UserInfoType = AnyObject\n\t#endif\n\n\t/// Constructs an error.\n#if swift(>=3)\n\tpublic static func error(_ message: String? = nil, function: String = #function, file: String = #file, line: Int = #line) -> NSError {\n\t\tvar userInfo: [String: UserInfoType] = [\n\t\t                                       \tfunctionKey: function,\n\t\t                                       \tfileKey: file,\n\t\t                                       \tlineKey: line,\n\t\t                                       \t]\n\t\t\n\t\tif let message = message {\n\t\t\tuserInfo[NSLocalizedDescriptionKey] = message\n\t\t}\n\t\t\n\t\treturn NSError(domain: errorDomain, code: 0, userInfo: userInfo)\n\t}\n#else\n\tpublic static func error(message: String? = nil, function: String = #function, file: String = #file, line: Int = #line) -> NSError {\n\t\tvar userInfo: [String: UserInfoType] = [\n\t\t\tfunctionKey: function,\n\t\t\tfileKey: file,\n\t\t\tlineKey: line,\n\t\t]\n\n\t\tif let message = message {\n\t\t\tuserInfo[NSLocalizedDescriptionKey] = message\n\t\t}\n\n\t\treturn NSError(domain: errorDomain, code: 0, userInfo: userInfo)\n\t}\n#endif\n\n\n\t// MARK: CustomStringConvertible\n\n\tpublic var description: String {\n\t\treturn analysis(\n\t\t\tifSuccess: { \".Success(\\($0))\" },\n\t\t\tifFailure: { \".Failure(\\($0))\" })\n\t}\n\n\n\t// MARK: CustomDebugStringConvertible\n\n\tpublic var debugDescription: String {\n\t\treturn description\n\t}\n}\n\n// MARK: - Derive result from failable closure\n\n#if swift(>=3)\npublic func materialize<T>(_ f: @noescape () throws -> T) -> Result<T, NSError> {\n\treturn materialize(try f())\n}\n\npublic func materialize<T>(_ f: @autoclosure () throws -> T) -> Result<T, NSError> {\n\tdo {\n\t\treturn .Success(try f())\n\t} catch let error as NSError {\n\t\treturn .Failure(error)\n\t}\n}\n#else\npublic func materialize<T>(@noescape f: () throws -> T) -> Result<T, NSError> {\n\treturn materialize(try f())\n}\n\t\npublic func materialize<T>(@autoclosure f: () throws -> T) -> Result<T, NSError> {\n\tdo {\n\t\treturn .Success(try f())\n\t} catch let error as NSError {\n\t\treturn .Failure(error)\n\t}\n}\n#endif\n\n// MARK: - Cocoa API conveniences\n\n#if !os(Linux)\n\n/// Constructs a Result with the result of calling `try` with an error pointer.\n///\n/// This is convenient for wrapping Cocoa API which returns an object or `nil` + an error, by reference. e.g.:\n///\n///     Result.try { NSData(contentsOfURL: URL, options: .DataReadingMapped, error: $0) }\n#if swift(>=3)\npublic func `try`<T>(_ function: String = #function, file: String = #file, line: Int = #line, `try`: (NSErrorPointer) -> T?) -> Result<T, NSError> {\n\tvar error: NSError?\n\treturn `try`(&error).map(Result.Success) ?? .Failure(error ?? Result<T, NSError>.error(function: function, file: file, line: line))\n}\n#else\npublic func `try`<T>(function: String = #function, file: String = #file, line: Int = #line, `try`: NSErrorPointer -> T?) -> Result<T, NSError> {\n\tvar error: NSError?\n\treturn `try`(&error).map(Result.Success) ?? .Failure(error ?? Result<T, NSError>.error(function: function, file: file, line: line))\n}\n#endif\n\n/// Constructs a Result with the result of calling `try` with an error pointer.\n///\n/// This is convenient for wrapping Cocoa API which returns a `Bool` + an error, by reference. e.g.:\n///\n///     Result.try { NSFileManager.defaultManager().removeItemAtURL(URL, error: $0) }\n#if swift(>=3)\npublic func `try`(_ function: String = #function, file: String = #file, line: Int = #line, `try`: (NSErrorPointer) -> Bool) -> Result<(), NSError> {\n\tvar error: NSError?\n\treturn `try`(&error) ?\n\t\t.Success(())\n\t\t:\t.Failure(error ?? Result<(), NSError>.error(function: function, file: file, line: line))\n}\n#else\npublic func `try`(function: String = #function, file: String = #file, line: Int = #line, `try`: NSErrorPointer -> Bool) -> Result<(), NSError> {\n\tvar error: NSError?\n\treturn `try`(&error) ?\n\t\t.Success(())\n\t:\t.Failure(error ?? Result<(), NSError>.error(function: function, file: file, line: line))\n}\n#endif\n\n#endif\n\n// MARK: - ErrorTypeConvertible conformance\n\t\nextension NSError: ErrorTypeConvertible {\n#if swift(>=3)\n\tpublic static func errorFromErrorType(_ error: ResultErrorType) -> Self {\n\t\tfunc cast<T: NSError>(_ error: ResultErrorType) -> T {\n\t\t\treturn error as! T\n\t\t}\n\n\t\treturn cast(error)\n\t}\n#else\n\tpublic static func errorFromErrorType(error: ResultErrorType) -> Self {\n\t\tfunc cast<T: NSError>(error: ResultErrorType) -> T {\n\t\t\treturn error as! T\n\t\t}\n\n\t\treturn cast(error)\n\t}\n#endif\n}\n\n// MARK: -\n\n/// An “error” that is impossible to construct.\n///\n/// This can be used to describe `Result`s where failures will never\n/// be generated. For example, `Result<Int, NoError>` describes a result that\n/// contains an `Int`eger and is guaranteed never to be a `Failure`.\npublic enum NoError: ResultErrorType { }\n\nimport Foundation\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result/ResultType.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n#if swift(>=3.0)\n\tpublic typealias ResultErrorType = ErrorProtocol\n#else\n\tpublic typealias ResultErrorType = ErrorType\n#endif\n\n/// A type that can represent either failure with an error or success with a result value.\npublic protocol ResultType {\n\tassociatedtype Value\n\tassociatedtype Error: ResultErrorType\n\t\n\t/// Constructs a successful result wrapping a `value`.\n\tinit(value: Value)\n\n\t/// Constructs a failed result wrapping an `error`.\n\tinit(error: Error)\n\t\n\t/// Case analysis for ResultType.\n\t///\n\t/// Returns the value produced by appliying `ifFailure` to the error if self represents a failure, or `ifSuccess` to the result value if self represents a success.\n#if swift(>=3)\n\tfunc analysis<U>(ifSuccess: @noescape (Value) -> U, ifFailure: @noescape (Error) -> U) -> U\n#else\n\tfunc analysis<U>(@noescape ifSuccess ifSuccess: Value -> U, @noescape ifFailure: Error -> U) -> U\n#endif\n\n\t/// Returns the value if self represents a success, `nil` otherwise.\n\t///\n\t/// A default implementation is provided by a protocol extension. Conforming types may specialize it.\n\tvar value: Value? { get }\n\n\t/// Returns the error if self represents a failure, `nil` otherwise.\n\t///\n\t/// A default implementation is provided by a protocol extension. Conforming types may specialize it.\n\tvar error: Error? { get }\n}\n\npublic extension ResultType {\n\t\n\t/// Returns the value if self represents a success, `nil` otherwise.\n\tpublic var value: Value? {\n\t\treturn analysis(ifSuccess: { $0 }, ifFailure: { _ in nil })\n\t}\n\t\n\t/// Returns the error if self represents a failure, `nil` otherwise.\n\tpublic var error: Error? {\n\t\treturn analysis(ifSuccess: { _ in nil }, ifFailure: { $0 })\n\t}\n\n\t/// Returns a new Result by mapping `Success`es’ values using `transform`, or re-wrapping `Failure`s’ errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func map<U>(_ transform: @noescape (Value) -> U) -> Result<U, Error> {\n\t\treturn flatMap { .Success(transform($0)) }\n\t}\n#else\n\t@warn_unused_result\n\tpublic func map<U>(@noescape transform: Value -> U) -> Result<U, Error> {\n\t\treturn flatMap { .Success(transform($0)) }\n\t}\n#endif\n\n\t/// Returns the result of applying `transform` to `Success`es’ values, or re-wrapping `Failure`’s errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func flatMap<U>(_ transform: @noescape (Value) -> Result<U, Error>) -> Result<U, Error> {\n\t\treturn analysis(\n\t\t\tifSuccess: transform,\n\t\t\tifFailure: Result<U, Error>.Failure)\n\t}\n#else\n\t@warn_unused_result\n\tpublic func flatMap<U>(@noescape transform: Value -> Result<U, Error>) -> Result<U, Error> {\n\t\treturn analysis(\n\t\t\tifSuccess: transform,\n\t\t\tifFailure: Result<U, Error>.Failure)\n\t}\n#endif\n\t\n\t/// Returns a new Result by mapping `Failure`'s values using `transform`, or re-wrapping `Success`es’ values.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func mapError<Error2>(_ transform: @noescape (Error) -> Error2) -> Result<Value, Error2> {\n\t\treturn flatMapError { .Failure(transform($0)) }\n\t}\n#else\n\t@warn_unused_result\n\tpublic func mapError<Error2>(@noescape transform: Error -> Error2) -> Result<Value, Error2> {\n\t\treturn flatMapError { .Failure(transform($0)) }\n\t}\n#endif\n\n\t/// Returns the result of applying `transform` to `Failure`’s errors, or re-wrapping `Success`es’ values.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func flatMapError<Error2>(_ transform: @noescape (Error) -> Result<Value, Error2>) -> Result<Value, Error2> {\n\t\treturn analysis(\n\t\t\tifSuccess: Result<Value, Error2>.Success,\n\t\t\tifFailure: transform)\n\t}\n#else\n\t@warn_unused_result\n\tpublic func flatMapError<Error2>(@noescape transform: Error -> Result<Value, Error2>) -> Result<Value, Error2> {\n\t\treturn analysis(\n\t\t\tifSuccess: Result<Value, Error2>.Success,\n\t\t\tifFailure: transform)\n\t}\n#endif\n}\n\npublic extension ResultType {\n\n\t// MARK: Higher-order functions\n\n\t/// Returns `self.value` if this result is a .Success, or the given value otherwise. Equivalent with `??`\n#if swift(>=3)\n\tpublic func recover(_ value: @autoclosure () -> Value) -> Value {\n\t\treturn self.value ?? value()\n\t}\n#else\n\tpublic func recover(@autoclosure value: () -> Value) -> Value {\n\t\treturn self.value ?? value()\n\t}\n#endif\n\n\t/// Returns this result if it is a .Success, or the given result otherwise. Equivalent with `??`\n#if swift(>=3)\n\tpublic func recoverWith(_ result: @autoclosure () -> Self) -> Self {\n\t\treturn analysis(\n\t\t\tifSuccess: { _ in self },\n\t\t\tifFailure: { _ in result() })\n\t}\n#else\n\tpublic func recoverWith(@autoclosure result: () -> Self) -> Self {\n\t\treturn analysis(\n\t\t\tifSuccess: { _ in self },\n\t\t\tifFailure: { _ in result() })\n\t}\n#endif\n}\n\n/// Protocol used to constrain `tryMap` to `Result`s with compatible `Error`s.\npublic protocol ErrorTypeConvertible: ResultErrorType {\n#if swift(>=3)\n\tstatic func errorFromErrorType(_ error: ResultErrorType) -> Self\n#else\n\tstatic func errorFromErrorType(error: ResultErrorType) -> Self\n#endif\n}\n\npublic extension ResultType where Error: ErrorTypeConvertible {\n\n\t/// Returns the result of applying `transform` to `Success`es’ values, or wrapping thrown errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func tryMap<U>(_ transform: @noescape (Value) throws -> U) -> Result<U, Error> {\n\t\treturn flatMap { value in\n\t\t\tdo {\n\t\t\t\treturn .Success(try transform(value))\n\t\t\t}\n\t\t\tcatch {\n\t\t\t\tlet convertedError = Error.errorFromErrorType(error)\n\t\t\t\t// Revisit this in a future version of Swift. https://twitter.com/jckarter/status/672931114944696321\n\t\t\t\treturn .Failure(convertedError)\n\t\t\t}\n\t\t}\n\t}\n#else\n\t@warn_unused_result\n\tpublic func tryMap<U>(@noescape transform: Value throws -> U) -> Result<U, Error> {\n\t\treturn flatMap { value in\n\t\t\tdo {\n\t\t\t\treturn .Success(try transform(value))\n\t\t\t}\n\t\t\tcatch {\n\t\t\t\tlet convertedError = Error.errorFromErrorType(error)\n\t\t\t\t// Revisit this in a future version of Swift. https://twitter.com/jckarter/status/672931114944696321\n\t\t\t\treturn .Failure(convertedError)\n\t\t\t}\n\t\t}\n\t}\n#endif\n}\n\n// MARK: - Operators\n\ninfix operator &&& {\n\t/// Same associativity as &&.\n\tassociativity left\n\n\t/// Same precedence as &&.\n\tprecedence 120\n}\n\n/// Returns a Result with a tuple of `left` and `right` values if both are `Success`es, or re-wrapping the error of the earlier `Failure`.\n#if swift(>=3)\npublic func &&& <L: ResultType, R: ResultType where L.Error == R.Error> (left: L, right: @autoclosure () -> R) -> Result<(L.Value, R.Value), L.Error> {\n\treturn left.flatMap { left in right().map { right in (left, right) } }\n}\n#else\npublic func &&& <L: ResultType, R: ResultType where L.Error == R.Error> (left: L, @autoclosure right: () -> R) -> Result<(L.Value, R.Value), L.Error> {\n\treturn left.flatMap { left in right().map { right in (left, right) } }\n}\n#endif\n\ninfix operator >>- {\n\t// Left-associativity so that chaining works like you’d expect, and for consistency with Haskell, Runes, swiftz, etc.\n\tassociativity left\n\n\t// Higher precedence than function application, but lower than function composition.\n\tprecedence 100\n}\n\n/// Returns the result of applying `transform` to `Success`es’ values, or re-wrapping `Failure`’s errors.\n///\n/// This is a synonym for `flatMap`.\n#if swift(>=3)\npublic func >>- <T: ResultType, U> (result: T, transform: @noescape (T.Value) -> Result<U, T.Error>) -> Result<U, T.Error> {\n\treturn result.flatMap(transform)\n}\n#else\npublic func >>- <T: ResultType, U> (result: T, @noescape transform: T.Value -> Result<U, T.Error>) -> Result<U, T.Error> {\n\treturn result.flatMap(transform)\n}\n#endif\n\n/// Returns `true` if `left` and `right` are both `Success`es and their values are equal, or if `left` and `right` are both `Failure`s and their errors are equal.\npublic func == <T: ResultType where T.Value: Equatable, T.Error: Equatable> (left: T, right: T) -> Bool {\n\tif let left = left.value, right = right.value {\n\t\treturn left == right\n\t} else if let left = left.error, right = right.error {\n\t\treturn left == right\n\t}\n\treturn false\n}\n\n/// Returns `true` if `left` and `right` represent different cases, or if they represent the same case but different values.\npublic func != <T: ResultType where T.Value: Equatable, T.Error: Equatable> (left: T, right: T) -> Bool {\n\treturn !(left == right)\n}\n\n/// Returns the value of `left` if it is a `Success`, or `right` otherwise. Short-circuits.\n#if swift(>=3)\npublic func ?? <T: ResultType> (left: T, right: @autoclosure () -> T.Value) -> T.Value {\n\treturn left.recover(right())\n}\n#else\npublic func ?? <T: ResultType> (left: T, @autoclosure right: () -> T.Value) -> T.Value {\n\treturn left.recover(right())\n}\n#endif\n\n/// Returns `left` if it is a `Success`es, or `right` otherwise. Short-circuits.\n#if swift(>=3)\npublic func ?? <T: ResultType> (left: T, right: @autoclosure () -> T) -> T {\n\treturn left.recoverWith(right())\n}\n#else\npublic func ?? <T: ResultType> (left: T, @autoclosure right: () -> T) -> T {\n\treturn left.recoverWith(right())\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = 'Result'\n  s.version      = '2.1.3'\n  s.summary      = 'Swift type modelling the success/failure of arbitrary operations'\n\n  s.homepage     = 'https://github.com/antitypical/Result'\n  s.license      = { :type => 'MIT', :file => 'LICENSE' }\n  s.author       = { 'Rob Rix' => 'rob.rix@github.com' }\n  s.source       = { :git => 'https://github.com/antitypical/Result.git', :tag => s.version }\n  s.source_files  = 'Result/*.swift'\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'SWIFT_VERSION' => '2.3' }\n  s.ios.deployment_target = '8.0'\n  s.osx.deployment_target = '10.9'\n  s.watchos.deployment_target = '2.0'\n  s.tvos.deployment_target = '9.0'\nend\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t45AE89E61B3A6564007B99D7 /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\t57FCDE3E1BA280DC00130C48 /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\t57FCDE3F1BA280DC00130C48 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\t57FCDE421BA280DC00130C48 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57FCDE4D1BA280E000130C48 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\t57FCDE561BA2814300130C48 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 57FCDE471BA280DC00130C48 /* Result.framework */; };\n\t\tD035799B1B2B788F005D26AE /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD035799E1B2B788F005D26AE /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03579A91B2B78A1005D26AE /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD03579B41B2B78C4005D26AE /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03579A31B2B788F005D26AE /* Result.framework */; };\n\t\tD454805D1A9572F5009D7229 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD45480681A9572F5009D7229 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D45480571A9572F5009D7229 /* Result.framework */; };\n\t\tD454806F1A9572F5009D7229 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD45480881A957362009D7229 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D454807D1A957361009D7229 /* Result.framework */; };\n\t\tD45480971A957465009D7229 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD45480981A957465009D7229 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD45480991A9574B8009D7229 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD454809A1A9574BB009D7229 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tE93621461B35596200948F2A /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\tE93621471B35596200948F2A /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t57FCDE571BA2814A00130C48 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 57FCDE3C1BA280DC00130C48;\n\t\t\tremoteInfo = \"Result-tvOS\";\n\t\t};\n\t\tD03579B21B2B78BB005D26AE /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D03579991B2B788F005D26AE;\n\t\t\tremoteInfo = \"Result-watchOS\";\n\t\t};\n\t\tD45480691A9572F5009D7229 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D45480561A9572F5009D7229;\n\t\t\tremoteInfo = Result;\n\t\t};\n\t\tD45480891A957362009D7229 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D454807C1A957361009D7229;\n\t\t\tremoteInfo = \"Result-iOS\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t57FCDE471BA280DC00130C48 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD03579A31B2B788F005D26AE /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-watchOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480571A9572F5009D7229 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD454805B1A9572F5009D7229 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD454805C1A9572F5009D7229 /* Result.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Result.h; sourceTree = \"<group>\"; };\n\t\tD45480671A9572F5009D7229 /* Result-MacTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-MacTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD454806D1A9572F5009D7229 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD454806E1A9572F5009D7229 /* ResultTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResultTests.swift; sourceTree = \"<group>\"; };\n\t\tD454807D1A957361009D7229 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480871A957362009D7229 /* Result-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480961A957465009D7229 /* Result.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = \"<group>\"; };\n\t\tE93621451B35596200948F2A /* ResultType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ResultType.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t57FCDE401BA280DC00130C48 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE4E1BA280E000130C48 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE561BA2814300130C48 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799C1B2B788F005D26AE /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579AA1B2B78A1005D26AE /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD03579B41B2B78C4005D26AE /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480531A9572F5009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480641A9572F5009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480681A9572F5009D7229 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480791A957361009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480841A957362009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480881A957362009D7229 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tD454804D1A9572F5009D7229 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD45480591A9572F5009D7229 /* Result */,\n\t\t\t\tD454806B1A9572F5009D7229 /* ResultTests */,\n\t\t\t\tD45480581A9572F5009D7229 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t\tusesTabs = 1;\n\t\t};\n\t\tD45480581A9572F5009D7229 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD45480571A9572F5009D7229 /* Result.framework */,\n\t\t\t\tD45480671A9572F5009D7229 /* Result-MacTests.xctest */,\n\t\t\t\tD454807D1A957361009D7229 /* Result.framework */,\n\t\t\t\tD45480871A957362009D7229 /* Result-iOSTests.xctest */,\n\t\t\t\tD03579A31B2B788F005D26AE /* Result.framework */,\n\t\t\t\tD03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */,\n\t\t\t\t57FCDE471BA280DC00130C48 /* Result.framework */,\n\t\t\t\t57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD45480591A9572F5009D7229 /* Result */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454805C1A9572F5009D7229 /* Result.h */,\n\t\t\t\tD45480961A957465009D7229 /* Result.swift */,\n\t\t\t\tE93621451B35596200948F2A /* ResultType.swift */,\n\t\t\t\tD454805A1A9572F5009D7229 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = Result;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454805A1A9572F5009D7229 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454805B1A9572F5009D7229 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454806B1A9572F5009D7229 /* ResultTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454806E1A9572F5009D7229 /* ResultTests.swift */,\n\t\t\t\tD454806C1A9572F5009D7229 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = ResultTests;\n\t\t\tpath = Tests/Result;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454806C1A9572F5009D7229 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454806D1A9572F5009D7229 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t57FCDE411BA280DC00130C48 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE421BA280DC00130C48 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799D1B2B788F005D26AE /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD035799E1B2B788F005D26AE /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480541A9572F5009D7229 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454805D1A9572F5009D7229 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD454807A1A957361009D7229 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454809A1A9574BB009D7229 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t57FCDE3C1BA280DC00130C48 /* Result-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 57FCDE441BA280DC00130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t57FCDE3D1BA280DC00130C48 /* Sources */,\n\t\t\t\t57FCDE401BA280DC00130C48 /* Frameworks */,\n\t\t\t\t57FCDE411BA280DC00130C48 /* Headers */,\n\t\t\t\t57FCDE431BA280DC00130C48 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-tvOS\";\n\t\t\tproductName = \"Result-iOS\";\n\t\t\tproductReference = 57FCDE471BA280DC00130C48 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t57FCDE491BA280E000130C48 /* Result-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 57FCDE511BA280E000130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t57FCDE4C1BA280E000130C48 /* Sources */,\n\t\t\t\t57FCDE4E1BA280E000130C48 /* Frameworks */,\n\t\t\t\t57FCDE501BA280E000130C48 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t57FCDE581BA2814A00130C48 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-tvOSTests\";\n\t\t\tproductName = \"Result-iOSTests\";\n\t\t\tproductReference = 57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD03579991B2B788F005D26AE /* Result-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D03579A01B2B788F005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD035799A1B2B788F005D26AE /* Sources */,\n\t\t\t\tD035799C1B2B788F005D26AE /* Frameworks */,\n\t\t\t\tD035799D1B2B788F005D26AE /* Headers */,\n\t\t\t\tD035799F1B2B788F005D26AE /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-watchOS\";\n\t\t\tproductName = Result;\n\t\t\tproductReference = D03579A31B2B788F005D26AE /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD03579A51B2B78A1005D26AE /* Result-watchOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D03579AD1B2B78A1005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD03579A81B2B78A1005D26AE /* Sources */,\n\t\t\t\tD03579AA1B2B78A1005D26AE /* Frameworks */,\n\t\t\t\tD03579AC1B2B78A1005D26AE /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD03579B31B2B78BB005D26AE /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-watchOSTests\";\n\t\t\tproductName = ResultTests;\n\t\t\tproductReference = D03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD45480561A9572F5009D7229 /* Result-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480721A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480521A9572F5009D7229 /* Sources */,\n\t\t\t\tD45480531A9572F5009D7229 /* Frameworks */,\n\t\t\t\tD45480541A9572F5009D7229 /* Headers */,\n\t\t\t\tD45480551A9572F5009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-Mac\";\n\t\t\tproductName = Result;\n\t\t\tproductReference = D45480571A9572F5009D7229 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD45480661A9572F5009D7229 /* Result-MacTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480751A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-MacTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480631A9572F5009D7229 /* Sources */,\n\t\t\t\tD45480641A9572F5009D7229 /* Frameworks */,\n\t\t\t\tD45480651A9572F5009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD454806A1A9572F5009D7229 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-MacTests\";\n\t\t\tproductName = ResultTests;\n\t\t\tproductReference = D45480671A9572F5009D7229 /* Result-MacTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD454807C1A957361009D7229 /* Result-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480941A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480781A957361009D7229 /* Sources */,\n\t\t\t\tD45480791A957361009D7229 /* Frameworks */,\n\t\t\t\tD454807A1A957361009D7229 /* Headers */,\n\t\t\t\tD454807B1A957361009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-iOS\";\n\t\t\tproductName = \"Result-iOS\";\n\t\t\tproductReference = D454807D1A957361009D7229 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD45480861A957362009D7229 /* Result-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480951A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480831A957362009D7229 /* Sources */,\n\t\t\t\tD45480841A957362009D7229 /* Frameworks */,\n\t\t\t\tD45480851A957362009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD454808A1A957362009D7229 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-iOSTests\";\n\t\t\tproductName = \"Result-iOSTests\";\n\t\t\tproductReference = D45480871A957362009D7229 /* Result-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tD454804E1A9572F5009D7229 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = \"Rob Rix\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t57FCDE3C1BA280DC00130C48 = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t57FCDE491BA280E000130C48 = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD03579991B2B788F005D26AE = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD03579A51B2B78A1005D26AE = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480561A9572F5009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480661A9572F5009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD454807C1A957361009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480861A957362009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = D45480511A9572F5009D7229 /* Build configuration list for PBXProject \"Result\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = D454804D1A9572F5009D7229;\n\t\t\tproductRefGroup = D45480581A9572F5009D7229 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tD45480561A9572F5009D7229 /* Result-Mac */,\n\t\t\t\tD45480661A9572F5009D7229 /* Result-MacTests */,\n\t\t\t\tD454807C1A957361009D7229 /* Result-iOS */,\n\t\t\t\tD45480861A957362009D7229 /* Result-iOSTests */,\n\t\t\t\t57FCDE3C1BA280DC00130C48 /* Result-tvOS */,\n\t\t\t\t57FCDE491BA280E000130C48 /* Result-tvOSTests */,\n\t\t\t\tD03579991B2B788F005D26AE /* Result-watchOS */,\n\t\t\t\tD03579A51B2B78A1005D26AE /* Result-watchOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t57FCDE431BA280DC00130C48 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE501BA280E000130C48 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799F1B2B788F005D26AE /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579AC1B2B78A1005D26AE /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480551A9572F5009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480651A9572F5009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD454807B1A957361009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480851A957362009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t57FCDE3D1BA280DC00130C48 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE3E1BA280DC00130C48 /* ResultType.swift in Sources */,\n\t\t\t\t57FCDE3F1BA280DC00130C48 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE4C1BA280E000130C48 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE4D1BA280E000130C48 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799A1B2B788F005D26AE /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t45AE89E61B3A6564007B99D7 /* ResultType.swift in Sources */,\n\t\t\t\tD035799B1B2B788F005D26AE /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579A81B2B78A1005D26AE /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD03579A91B2B78A1005D26AE /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480521A9572F5009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tE93621461B35596200948F2A /* ResultType.swift in Sources */,\n\t\t\t\tD45480971A957465009D7229 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480631A9572F5009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454806F1A9572F5009D7229 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480781A957361009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tE93621471B35596200948F2A /* ResultType.swift in Sources */,\n\t\t\t\tD45480981A957465009D7229 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480831A957362009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480991A9574B8009D7229 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t57FCDE581BA2814A00130C48 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 57FCDE3C1BA280DC00130C48 /* Result-tvOS */;\n\t\t\ttargetProxy = 57FCDE571BA2814A00130C48 /* PBXContainerItemProxy */;\n\t\t};\n\t\tD03579B31B2B78BB005D26AE /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D03579991B2B788F005D26AE /* Result-watchOS */;\n\t\t\ttargetProxy = D03579B21B2B78BB005D26AE /* PBXContainerItemProxy */;\n\t\t};\n\t\tD454806A1A9572F5009D7229 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D45480561A9572F5009D7229 /* Result-Mac */;\n\t\t\ttargetProxy = D45480691A9572F5009D7229 /* PBXContainerItemProxy */;\n\t\t};\n\t\tD454808A1A957362009D7229 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D454807C1A957361009D7229 /* Result-iOS */;\n\t\t\ttargetProxy = D45480891A957362009D7229 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t57FCDE451BA280DC00130C48 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t57FCDE461BA280DC00130C48 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t57FCDE521BA280E000130C48 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t57FCDE531BA280E000130C48 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD03579A11B2B788F005D26AE /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD03579A21B2B788F005D26AE /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD03579AE1B2B78A1005D26AE /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = watchos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD03579AF1B2B78A1005D26AE /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = watchos;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480701A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.antitypical.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480711A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.antitypical.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480731A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480741A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480761A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480771A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480901A957362009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480911A957362009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480921A957362009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480931A957362009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t57FCDE441BA280DC00130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t57FCDE451BA280DC00130C48 /* Debug */,\n\t\t\t\t57FCDE461BA280DC00130C48 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t57FCDE511BA280E000130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t57FCDE521BA280E000130C48 /* Debug */,\n\t\t\t\t57FCDE531BA280E000130C48 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD03579A01B2B788F005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD03579A11B2B788F005D26AE /* Debug */,\n\t\t\t\tD03579A21B2B788F005D26AE /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD03579AD1B2B78A1005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD03579AE1B2B78A1005D26AE /* Debug */,\n\t\t\t\tD03579AF1B2B78A1005D26AE /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480511A9572F5009D7229 /* Build configuration list for PBXProject \"Result\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480701A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480711A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480721A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480731A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480741A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480751A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-MacTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480761A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480771A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480941A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480901A957362009D7229 /* Debug */,\n\t\t\t\tD45480911A957362009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480951A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480921A957362009D7229 /* Debug */,\n\t\t\t\tD45480931A957362009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = D454804E1A9572F5009D7229 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-Mac\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480661A9572F5009D7229\"\n               BuildableName = \"Result-MacTests.xctest\"\n               BlueprintName = \"Result-MacTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480661A9572F5009D7229\"\n               BuildableName = \"Result-MacTests.xctest\"\n               BlueprintName = \"Result-MacTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D454807C1A957361009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-iOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480861A957362009D7229\"\n               BuildableName = \"Result-iOSTests.xctest\"\n               BlueprintName = \"Result-iOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480861A957362009D7229\"\n               BuildableName = \"Result-iOSTests.xctest\"\n               BlueprintName = \"Result-iOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-tvOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57FCDE491BA280E000130C48\"\n               BuildableName = \"Result-tvOSTests.xctest\"\n               BlueprintName = \"Result-tvOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-watchOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D03579A51B2B78A1005D26AE\"\n               BuildableName = \"Result-watchOSTests.xctest\"\n               BlueprintName = \"Result-watchOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Tests/LinuxMain.swift",
    "content": "import XCTest\n\n@testable import ResultTestSuite\n\nXCTMain([\n  testCase(ResultTests.allTests),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Tests/Result/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.1.3</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/Result/Tests/Result/ResultTests.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\nfinal class ResultTests: XCTestCase {\n\tfunc testMapTransformsSuccesses() {\n\t\tXCTAssertEqual(success.map { $0.characters.count } ?? 0, 7)\n\t}\n\n\tfunc testMapRewrapsFailures() {\n\t\tXCTAssertEqual(failure.map { $0.characters.count } ?? 0, 0)\n\t}\n\n\tfunc testInitOptionalSuccess() {\n\t\tXCTAssert(Result(\"success\" as String?, failWith: error) == success)\n\t}\n\n\tfunc testInitOptionalFailure() {\n\t\tXCTAssert(Result(nil, failWith: error) == failure)\n\t}\n\n\n\t// MARK: Errors\n\n\tfunc testErrorsIncludeTheSourceFile() {\n\t\tlet file = #file\n\t\tXCTAssert(Result<(), NSError>.error().file == file)\n\t}\n\n\tfunc testErrorsIncludeTheSourceLine() {\n\t\tlet (line, error) = (#line, Result<(), NSError>.error())\n\t\tXCTAssertEqual(error.line ?? -1, line)\n\t}\n\n\tfunc testErrorsIncludeTheCallingFunction() {\n\t\tlet function = #function\n\t\tXCTAssert(Result<(), NSError>.error().function == function)\n\t}\n\n\t// MARK: Try - Catch\n\t\n\tfunc testTryCatchProducesSuccesses() {\n\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result == success)\n\t}\n\t\n\tfunc testTryCatchProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(nil))\n\t\t\tXCTAssert(result.error == error)\n\t\t#endif\n\t}\n\n\tfunc testTryCatchWithFunctionProducesSuccesses() {\n\t\tlet function = { try tryIsSuccess(\"success\") }\n\n\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryCatchWithFunctionCatchProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet function = { try tryIsSuccess(nil) }\n\n\t\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\t\tXCTAssert(result.error == error)\n\t\t#endif\n\t}\n\n\tfunc testMaterializeProducesSuccesses() {\n\t\tlet result1 = materialize(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result1 == success)\n\n\t\tlet result2: Result<String, NSError> = materialize { try tryIsSuccess(\"success\") }\n\t\tXCTAssert(result2 == success)\n\t}\n\n\tfunc testMaterializeProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet result1 = materialize(try tryIsSuccess(nil))\n\t\t\tXCTAssert(result1.error == error)\n\n\t\t\tlet result2: Result<String, NSError> = materialize { try tryIsSuccess(nil) }\n\t\t\tXCTAssert(result2.error == error)\n\t\t#endif\n\t}\n\n\t// MARK: Recover\n\n\tfunc testRecoverProducesLeftForLeftSuccess() {\n\t\tlet left = Result<String, NSError>.Success(\"left\")\n\t\tXCTAssertEqual(left.recover(\"right\"), \"left\")\n\t}\n\n\tfunc testRecoverProducesRightForLeftFailure() {\n\t\tstruct Error: ResultErrorType {}\n\n\t\tlet left = Result<String, Error>.Failure(Error())\n\t\tXCTAssertEqual(left.recover(\"right\"), \"right\")\n\t}\n\n\t// MARK: Recover With\n\n\tfunc testRecoverWithProducesLeftForLeftSuccess() {\n\t\tlet left = Result<String, NSError>.Success(\"left\")\n\t\tlet right = Result<String, NSError>.Success(\"right\")\n\n\t\tXCTAssertEqual(left.recoverWith(right).value, \"left\")\n\t}\n\n\tfunc testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess() {\n\t\tstruct Error: ResultErrorType {}\n\n\t\tlet left = Result<String, Error>.Failure(Error())\n\t\tlet right = Result<String, Error>.Success(\"right\")\n\n\t\tXCTAssertEqual(left.recoverWith(right).value, \"right\")\n\t}\n\n\tfunc testRecoverWithProducesRightFailureForLeftFailureAndRightFailure() {\n\t\tenum Error: ResultErrorType { case Left, Right }\n\n\t\tlet left = Result<String, Error>.Failure(.Left)\n\t\tlet right = Result<String, Error>.Failure(.Right)\n\n\t\tXCTAssertEqual(left.recoverWith(right).error, .Right)\n\t}\n\n\t// MARK: Cocoa API idioms\n\n\t#if !os(Linux)\n\n\tfunc testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(true, succeed: false, error: $0) }\n\t\tXCTAssertFalse(result ?? false)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesFailuresForOptionalWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(1, succeed: false, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 0)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForBooleanAPI() {\n\t\tlet result = `try` { attempt(true, succeed: true, error: $0) }\n\t\tXCTAssertTrue(result ?? false)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForOptionalAPI() {\n\t\tlet result = `try` { attempt(1, succeed: true, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 1)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryMapProducesSuccess() {\n\t\tlet result = success.tryMap(tryIsSuccess)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryMapProducesFailure() {\n\t\tlet result = Result<String, NSError>.Success(\"fail\").tryMap(tryIsSuccess)\n\t\tXCTAssert(result == failure)\n\t}\n\n\t#endif\n\n\t// MARK: Operators\n\n\tfunc testConjunctionOperator() {\n\t\tlet resultSuccess = success &&& success\n\t\tif let (x, y) = resultSuccess.value {\n\t\t\tXCTAssertTrue(x == \"success\" && y == \"success\")\n\t\t} else {\n\t\t\tXCTFail()\n\t\t}\n\n\t\tlet resultFailureBoth = failure &&& failure2\n\t\tXCTAssert(resultFailureBoth.error == error)\n\n\t\tlet resultFailureLeft = failure &&& success\n\t\tXCTAssert(resultFailureLeft.error == error)\n\n\t\tlet resultFailureRight = success &&& failure2\n\t\tXCTAssert(resultFailureRight.error == error2)\n\t}\n}\n\n\n// MARK: - Fixtures\n\nlet success = Result<String, NSError>.Success(\"success\")\nlet error = NSError(domain: \"com.antitypical.Result\", code: 1, userInfo: nil)\nlet error2 = NSError(domain: \"com.antitypical.Result\", code: 2, userInfo: nil)\nlet failure = Result<String, NSError>.Failure(error)\nlet failure2 = Result<String, NSError>.Failure(error2)\n\n\n// MARK: - Helpers\n\n#if !os(Linux)\n\n\n#if swift(>=3.0)\nfunc attempt<T>(_ value: T, succeed: Bool, error: NSErrorPointer) -> T? {\n\tif succeed {\n\t\treturn value\n\t} else {\n\t\terror?.pointee = Result<(), NSError>.error()\n\t\treturn nil\n\t}\n}\n#else\nfunc attempt<T>(value: T, succeed: Bool, error: NSErrorPointer) -> T? {\n\tif succeed {\n\t\treturn value\n\t} else {\n\t\terror.memory = Result<(), NSError>.error()\n\t\treturn nil\n\t}\n}\n#endif\n\n#endif\n\n#if swift(>=3)\nfunc tryIsSuccess(_ text: String?) throws -> String {\n\tguard let text = text where text == \"success\" else {\n\t\tthrow error\n\t}\n\n\treturn text\n}\n#else\nfunc tryIsSuccess(text: String?) throws -> String {\n\tguard let text = text where text == \"success\" else {\n\t\tthrow error\n\t}\n\t\n\treturn text\n}\n#endif\n\nextension NSError {\n\tvar function: String? {\n\t\treturn userInfo[Result<(), NSError>.functionKey] as? String\n\t}\n\t\n\tvar file: String? {\n\t\treturn userInfo[Result<(), NSError>.fileKey] as? String\n\t}\n\n\tvar line: Int? {\n\t\treturn userInfo[Result<(), NSError>.lineKey] as? Int\n\t}\n}\n\n#if os(Linux)\n\nextension ResultTests {\n\tstatic var allTests: [(String, (ResultTests) -> () throws -> Void)] {\n\t\treturn [\n\t\t\t(\"testMapTransformsSuccesses\", testMapTransformsSuccesses),\n\t\t\t(\"testMapRewrapsFailures\", testMapRewrapsFailures),\n\t\t\t(\"testInitOptionalSuccess\", testInitOptionalSuccess),\n\t\t\t(\"testInitOptionalFailure\", testInitOptionalFailure),\n\t\t\t(\"testErrorsIncludeTheSourceFile\", testErrorsIncludeTheSourceFile),\n\t\t\t(\"testErrorsIncludeTheSourceLine\", testErrorsIncludeTheSourceLine),\n\t\t\t(\"testErrorsIncludeTheCallingFunction\", testErrorsIncludeTheCallingFunction),\n\t\t\t(\"testTryCatchProducesSuccesses\", testTryCatchProducesSuccesses),\n\t\t\t(\"testTryCatchProducesFailures\", testTryCatchProducesFailures),\n\t\t\t(\"testTryCatchWithFunctionProducesSuccesses\", testTryCatchWithFunctionProducesSuccesses),\n\t\t\t(\"testTryCatchWithFunctionCatchProducesFailures\", testTryCatchWithFunctionCatchProducesFailures),\n\t\t\t(\"testMaterializeProducesSuccesses\", testMaterializeProducesSuccesses),\n\t\t\t(\"testMaterializeProducesFailures\", testMaterializeProducesFailures),\n\t\t\t(\"testRecoverProducesLeftForLeftSuccess\", testRecoverProducesLeftForLeftSuccess),\n\t\t\t(\"testRecoverProducesRightForLeftFailure\", testRecoverProducesRightForLeftFailure),\n\t\t\t(\"testRecoverWithProducesLeftForLeftSuccess\", testRecoverWithProducesLeftForLeftSuccess),\n\t\t\t(\"testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess\", testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess),\n\t\t\t(\"testRecoverWithProducesRightFailureForLeftFailureAndRightFailure\", testRecoverWithProducesRightFailureForLeftFailureAndRightFailure),\n//\t\t\t(\"testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference\", testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference),\n//\t\t\t(\"testTryProducesFailuresForOptionalWithErrorReturnedByReference\", testTryProducesFailuresForOptionalWithErrorReturnedByReference),\n//\t\t\t(\"testTryProducesSuccessesForBooleanAPI\", testTryProducesSuccessesForBooleanAPI),\n//\t\t\t(\"testTryProducesSuccessesForOptionalAPI\", testTryProducesSuccessesForOptionalAPI),\n//\t\t\t(\"testTryMapProducesSuccess\", testTryMapProducesSuccess),\n//\t\t\t(\"testTryMapProducesFailure\", testTryMapProducesFailure),\n\t\t\t(\"testConjunctionOperator\", testConjunctionOperator),\n\t\t]\n\t}\n}\n#endif\n\nimport Foundation\nimport Result\nimport XCTest\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/.gitignore",
    "content": "Carthage/Build\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Common.xcconfig",
    "content": "// \n// This file defines common settings that should be enabled for every new\n// project. Typically, you want to use Debug, Release, or a similar variant\n// instead.\n//\n\n// Disable legacy-compatible header searching\nALWAYS_SEARCH_USER_PATHS = NO\n\n// Architectures to build\nARCHS = $(ARCHS_STANDARD)\n\n// Whether to warn when a floating-point value is used as a loop counter\nCLANG_ANALYZER_SECURITY_FLOATLOOPCOUNTER = YES\n\n// Whether to warn about use of rand() and random() being used instead of arc4random()\nCLANG_ANALYZER_SECURITY_INSECUREAPI_RAND = YES\n\n// Whether to warn about strcpy() and strcat()\nCLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES\n\n// Whether to enable module imports\nCLANG_ENABLE_MODULES = YES\n\n// Enable ARC\nCLANG_ENABLE_OBJC_ARC = YES\n\n// Warn about implicit conversions to boolean values that are suspicious.\n// For example, writing 'if (foo)' with 'foo' being the name a function will trigger a warning.\nCLANG_WARN_BOOL_CONVERSION = YES\n\n// Warn about implicit conversions of constant values that cause the constant value to change,\n// either through a loss of precision, or entirely in its meaning.\nCLANG_WARN_CONSTANT_CONVERSION = YES\n\n// Whether to warn when overriding deprecated methods\nCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES\n\n// Warn about direct accesses to the Objective-C 'isa' pointer instead of using a runtime API.\nCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR\n\n// Warn about declaring the same method more than once within the same @interface.\nCLANG_WARN__DUPLICATE_METHOD_MATCH = YES\n\n// Warn about loop bodies that are suspiciously empty.\nCLANG_WARN_EMPTY_BODY = YES\n\n// Warn about implicit conversions between different kinds of enum values.\n// For example, this can catch issues when using the wrong enum flag as an argument to a function or method.\nCLANG_WARN_ENUM_CONVERSION = YES\n\n// Whether to warn on implicit conversions between signed/unsigned types\nCLANG_WARN_IMPLICIT_SIGN_CONVERSION = NO\n\n// Warn about implicit conversions between pointers and integers.\n// For example, this can catch issues when one incorrectly intermixes using NSNumbers and raw integers.\nCLANG_WARN_INT_CONVERSION = YES\n\n// Don't warn about repeatedly using a weak reference without assigning the weak reference to a strong reference. Too many false positives.\nCLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = NO\n\n// Warn about classes that unintentionally do not subclass a root class (such as NSObject).\nCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR\n\n// Whether to warn on suspicious implicit conversions\nCLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES\n\n// Warn about potentially unreachable code\nCLANG_WARN_UNREACHABLE_CODE = YES\n\n// The format of debugging symbols\nDEBUG_INFORMATION_FORMAT = dwarf-with-dsym\n\n// Whether to compile assertions in\nENABLE_NS_ASSERTIONS = YES\n\n// Whether to require objc_msgSend to be cast before invocation\nENABLE_STRICT_OBJC_MSGSEND = YES\n\n// Which C variant to use\nGCC_C_LANGUAGE_STANDARD = gnu99\n\n// Whether to enable exceptions for Objective-C\nGCC_ENABLE_OBJC_EXCEPTIONS = YES\n\n// Whether to generate debugging symbols\nGCC_GENERATE_DEBUGGING_SYMBOLS = YES\n\n// Whether to precompile the prefix header (if one is specified)\nGCC_PRECOMPILE_PREFIX_HEADER = YES\n\n// Whether to enable strict aliasing, meaning that two pointers of different\n// types (other than void * or any id type) cannot point to the same memory\n// location\nGCC_STRICT_ALIASING = YES\n\n// Whether symbols not explicitly exported are hidden by default (this primarily\n// only affects C++ code)\nGCC_SYMBOLS_PRIVATE_EXTERN = NO\n\n// Whether static variables are thread-safe by default\nGCC_THREADSAFE_STATICS = NO\n\n// Which compiler to use\nGCC_VERSION = com.apple.compilers.llvm.clang.1_0\n\n// Whether warnings are treated as errors\nGCC_TREAT_WARNINGS_AS_ERRORS = YES\n\n// Whether to warn about 64-bit values being implicitly shortened to 32 bits\nGCC_WARN_64_TO_32_BIT_CONVERSION = YES\n\n// Whether to warn about fields missing from structure initializers (only if\n// designated initializers aren't used)\nGCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES\n\n// Whether to warn about missing function prototypes\nGCC_WARN_ABOUT_MISSING_PROTOTYPES = NO\n\n// Whether to warn about implicit conversions in the signedness of the type\n// a pointer is pointing to (e.g., 'int *' getting converted to 'unsigned int *')\nGCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES\n\n// Whether to warn when the value returned from a function/method/block does not\n// match its return type\nGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR\n\n// Whether to warn on a class not implementing all the required methods of\n// a protocol it declares conformance to\nGCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = YES\n\n// Whether to warn when switching on an enum value, and all possibilities are\n// not accounted for\nGCC_WARN_CHECK_SWITCH_STATEMENTS = YES\n\n// Whether to warn about the use of four-character constants\nGCC_WARN_FOUR_CHARACTER_CONSTANTS = YES\n\n// Whether to warn about an aggregate data type's initializer not being fully\n// bracketed (e.g., array initializer syntax)\nGCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES\n\n// Whether to warn about missing braces or parentheses that make the meaning of\n// the code ambiguous\nGCC_WARN_MISSING_PARENTHESES = YES\n\n// Whether to warn about unsafe comparisons between values of different\n// signedness\nGCC_WARN_SIGN_COMPARE = YES\n\n// Whether to warn about the arguments to printf-style functions not matching\n// the format specifiers\nGCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES\n\n// Warn if a \"@selector(...)\" expression referring to an undeclared selector is found\nGCC_WARN_UNDECLARED_SELECTOR = YES\n\n// Warn if a variable might be clobbered by a setjmp call or if an automatic variable is used without prior initialization.\nGCC_WARN_UNINITIALIZED_AUTOS = YES\n\n// Whether to warn about static functions that are unused\nGCC_WARN_UNUSED_FUNCTION = YES\n\n// Whether to warn about labels that are unused\nGCC_WARN_UNUSED_LABEL = YES\n\n// Whether to warn about variables that are never used\nGCC_WARN_UNUSED_VARIABLE = YES\n\n// Whether to run the static analyzer with every build\nRUN_CLANG_STATIC_ANALYZER = YES\n\n// Don't treat unknown warnings as errors, and disable GCC compatibility warnings and unused static const variable warnings\nWARNING_CFLAGS = -Wno-error=unknown-warning-option -Wno-gcc-compat -Wno-unused-const-variable -Wno-nullability-completeness\n\n// This setting is on for new projects as of Xcode ~6.3, though it is still not\n// the default. It warns if the same variable is declared in two binaries that\n// are linked together.\nGCC_NO_COMMON_BLOCKS = YES\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Configurations/Debug.xcconfig",
    "content": "// \n// This file defines the base configuration for a Debug build of any project.\n// This should be set at the project level for the Debug configuration.\n//\n\n#include \"../Common.xcconfig\"\n\n// Whether to strip debugging symbols when copying resources (like included\n// binaries)\nCOPY_PHASE_STRIP = NO\n\n// The optimization level (0, 1, 2, 3, s) for the produced binary\nGCC_OPTIMIZATION_LEVEL = 0\n\n// Preproccessor definitions to apply to each file compiled\nGCC_PREPROCESSOR_DEFINITIONS = DEBUG=1\n\n// Whether to enable link-time optimizations (such as inlining across translation\n// units)\nLLVM_LTO = NO\n\n// Whether to only build the active architecture\nONLY_ACTIVE_ARCH = YES\n\n// Other compiler flags\n// \n// These settings catch some errors in integer arithmetic\nOTHER_CFLAGS = -ftrapv\n\n// Other flags to pass to the Swift compiler\n//\n// This enables conditional compilation with #if DEBUG\nOTHER_SWIFT_FLAGS = -D DEBUG\n\n// Whether to strip debugging symbols when copying the built product to its\n// final installation location\nSTRIP_INSTALLED_PRODUCT = NO\n\n// The optimization level (-Onone, -O, -Ofast) for the produced Swift binary\nSWIFT_OPTIMIZATION_LEVEL = -Onone\n\n// Disable Developer ID timestamping\nOTHER_CODE_SIGN_FLAGS = --timestamp=none\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Configurations/Profile.xcconfig",
    "content": "// \n// This file defines the base configuration for an optional profiling-specific\n// build of any project. To use these settings, create a Profile configuration\n// in your project, and use this file at the project level for the new\n// configuration.\n//\n\n// based on the Release configuration, with some stuff related to debugging\n// symbols re-enabled\n#include \"Release.xcconfig\"\n\n// Whether to strip debugging symbols when copying resources (like included\n// binaries)\nCOPY_PHASE_STRIP = NO\n\n// Whether to only build the active architecture\nONLY_ACTIVE_ARCH = YES\n\n// Whether to strip debugging symbols when copying the built product to its\n// final installation location\nSTRIP_INSTALLED_PRODUCT = NO\n\n// Whether to perform App Store validation checks\nVALIDATE_PRODUCT = NO\n\n// Disable Developer ID timestamping\nOTHER_CODE_SIGN_FLAGS = --timestamp=none\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Configurations/Release.xcconfig",
    "content": "// \n// This file defines the base configuration for a Release build of any project.\n// This should be set at the project level for the Release configuration.\n//\n\n#include \"../Common.xcconfig\"\n\n// Whether to strip debugging symbols when copying resources (like included\n// binaries)\nCOPY_PHASE_STRIP = YES\n\n// The optimization level (0, 1, 2, 3, s) for the produced binary\nGCC_OPTIMIZATION_LEVEL = s\n\n// Preproccessor definitions to apply to each file compiled\nGCC_PREPROCESSOR_DEFINITIONS = NDEBUG=1\n\n// Whether to enable link-time optimizations (such as inlining across translation\n// units)\nLLVM_LTO = NO\n\n// Whether to only build the active architecture\nONLY_ACTIVE_ARCH = NO\n\n// Whether to strip debugging symbols when copying the built product to its\n// final installation location\nSTRIP_INSTALLED_PRODUCT = YES\n\n// The optimization level (-Onone, -O, -Owholemodule) for the produced Swift binary\nSWIFT_OPTIMIZATION_LEVEL = -Owholemodule\n\n// Whether to perform App Store validation checks\nVALIDATE_PRODUCT = YES\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Configurations/Test.xcconfig",
    "content": "// \n// This file defines the base configuration for a Test build of any project.\n// This should be set at the project level for the Test configuration.\n//\n\n#include \"Debug.xcconfig\"\n\n// Sandboxed apps can't be unit tested since they can't load some random \n// external bundle. So we disable sandboxing for testing.\nCODE_SIGN_ENTITLEMENTS = \n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Targets/Application.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for an application. Typically, you want to use a platform-specific variant\n// instead.\n//\n\n// Whether to strip out code that isn't called from anywhere\nDEAD_CODE_STRIPPING = NO\n\n// Sets the @rpath for the application such that it can include frameworks in\n// the application bundle (inside the \"Frameworks\" folder)\nLD_RUNPATH_SEARCH_PATHS = @executable_path/../Frameworks @loader_path/../Frameworks @executable_path/Frameworks\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Targets/Framework.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a framework. Typically, you want to use a platform-specific variant\n// instead.\n//\n\n// Disable code signing for successful device builds with Xcode 8. Frameworks do\n// need to be signed, but they don't need to be signed at compile time because\n// they'll be re-signed when you include them in your app.\nCODE_SIGNING_REQUIRED = NO\nCODE_SIGN_IDENTITY = \n\n// Whether to strip out code that isn't called from anywhere\nDEAD_CODE_STRIPPING = NO\n\n// Whether this framework should define an LLVM module\nDEFINES_MODULE = YES\n\n// Whether function calls should be position-dependent (should always be\n// disabled for library code)\nGCC_DYNAMIC_NO_PIC = NO\n\n// Default frameworks to the name of the project, instead of any\n// platform-specific target\nPRODUCT_NAME = $(PROJECT_NAME)\n\n// Enables the framework to be included from any location as long as the\n// loader’s runpath search paths includes it. For example from an application\n// bundle (inside the \"Frameworks\" folder) or shared folder\nINSTALL_PATH = @rpath\nLD_DYLIB_INSTALL_NAME = @rpath/$(PRODUCT_NAME).$(WRAPPER_EXTENSION)/$(PRODUCT_NAME)\nSKIP_INSTALL = YES\n\n// Disallows use of APIs that are not available\n// to app extensions and linking to frameworks\n// that have not been built with this setting enabled.\nAPPLICATION_EXTENSION_API_ONLY = YES\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Base/Targets/StaticLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a static library. Typically, you want to use a platform-specific variant\n// instead.\n//\n\n// Whether to strip out code that isn't called from anywhere\nDEAD_CODE_STRIPPING = NO\n\n// Whether to strip debugging symbols when copying resources (like included\n// binaries).\n//\n// Overrides Release.xcconfig when used at the target level.\nCOPY_PHASE_STRIP = NO\n\n// Whether function calls should be position-dependent (should always be\n// disabled for library code)\nGCC_DYNAMIC_NO_PIC = NO\n\n// Copy headers to \"include/LibraryName\" in the build folder by default. This\n// lets consumers use #import <LibraryName/LibraryName.h> syntax even for static\n// libraries\nPUBLIC_HEADERS_FOLDER_PATH = include/$PRODUCT_NAME\n\n// Don't include in an xcarchive\nSKIP_INSTALL = YES\n\n// Disallows use of APIs that are not available\n// to app extensions and linking to frameworks\n// that have not been built with this setting enabled.\nAPPLICATION_EXTENSION_API_ONLY = YES\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Mac OS X/Mac-Application.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for an application on Mac OS X. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base application settings\n#include \"../Base/Targets/Application.xcconfig\"\n\n// Apply common settings specific to Mac OS X\n#include \"Mac-Base.xcconfig\"\n\n// Whether function calls should be position-dependent (should always be\n// disabled for library code)\nGCC_DYNAMIC_NO_PIC = YES\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Mac OS X/Mac-Base.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for Mac OS X. This file is not standalone -- it is meant to be included into\n// a configuration file for a specific type of target.\n//\n\n// Whether to combine multiple image resolutions into a multirepresentational\n// TIFF\nCOMBINE_HIDPI_IMAGES = YES\n\n// Where to find embedded frameworks\nLD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\n\n// The base SDK to use (if no version is specified, the latest version is\n// assumed)\nSDKROOT = macosx\n\n// Supported build architectures\nVALID_ARCHS = x86_64\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Mac OS X/Mac-DynamicLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a dynamic library on Mac OS X. This should be set at the target level\n// for each project configuration.\n//\n\n// Import common settings specific to Mac OS X\n#include \"Mac-Base.xcconfig\"\n\n// Whether to strip out code that isn't called from anywhere\nDEAD_CODE_STRIPPING = NO\n\n// Whether function calls should be position-dependent (should always be\n// disabled for library code)\nGCC_DYNAMIC_NO_PIC = NO\n\n// Don't include in an xcarchive\nSKIP_INSTALL = YES\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Mac OS X/Mac-Framework.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a framework on OS X. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base framework settings\n#include \"../Base/Targets/Framework.xcconfig\"\n\n// Import common settings specific to Mac OS X\n#include \"Mac-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/Mac OS X/Mac-StaticLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a static library on Mac OS X. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base static library settings\n#include \"../Base/Targets/StaticLibrary.xcconfig\"\n\n// Apply common settings specific to Mac OS X\n#include \"Mac-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/README.md",
    "content": "This project intends to aggregate common or universal Xcode configuration settings, keeping them in hierarchial Xcode configuration files for easy modification and reuse.\n\n## License\n\nThis is free and unencumbered software released into the public domain.\n\nAnyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.\n\nIn jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nFor more information, please refer to [unlicense.org](http://unlicense.org).\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/iOS/iOS-Application.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for an application on iOS. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base application settings\n#include \"../Base/Targets/Application.xcconfig\"\n\n// Apply common settings specific to iOS\n#include \"iOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/iOS/iOS-Base.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for iOS. This file is not standalone -- it is meant to be included into\n// a configuration file for a specific type of target.\n//\n\n// Xcode needs this to find archived headers if SKIP_INSTALL is set\nHEADER_SEARCH_PATHS = $(OBJROOT)/UninstalledProducts/include\n\n// Where to find embedded frameworks\nLD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks\n\n// The base SDK to use (if no version is specified, the latest version is\n// assumed)\nSDKROOT = iphoneos\n\n// Supported device families (1 is iPhone, 2 is iPad)\nTARGETED_DEVICE_FAMILY = 1,2\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/iOS/iOS-Framework.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a framework on iOS. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base framework settings\n#include \"../Base/Targets/Framework.xcconfig\"\n\n// Import common settings specific to iOS\n#include \"iOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/iOS/iOS-StaticLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a static library on iOS. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base static library settings\n#include \"../Base/Targets/StaticLibrary.xcconfig\"\n\n// Apply common settings specific to iOS\n#include \"iOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/tvOS/tvOS-Application.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for an application on tvOS. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base application settings\n#include \"../Base/Targets/Application.xcconfig\"\n\n// Apply common settings specific to tvOS\n#include \"tvOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/tvOS/tvOS-Base.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for tvOS. This file is not standalone -- it is meant to be included into\n// a configuration file for a specific type of target.\n//\n\n// Where to find embedded frameworks\nLD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks\n\n// The base SDK to use (if no version is specified, the latest version is\n// assumed)\nSDKROOT = appletvos\n\n// Supported device families\nTARGETED_DEVICE_FAMILY = 3\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/tvOS/tvOS-Framework.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a framework on tvOS. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base framework settings\n#include \"../Base/Targets/Framework.xcconfig\"\n\n// Import common settings specific to iOS\n#include \"tvOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/tvOS/tvOS-StaticLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a static library on tvOS. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base static library settings\n#include \"../Base/Targets/StaticLibrary.xcconfig\"\n\n// Apply common settings specific to tvOS\n#include \"tvOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/watchOS/watchOS-Application.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for an application on watchOS. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base application settings\n#include \"../Base/Targets/Application.xcconfig\"\n\n// Apply common settings specific to watchOS\n#include \"watchOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/watchOS/watchOS-Base.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for watchOS. This file is not standalone -- it is meant to be included into\n// a configuration file for a specific type of target.\n//\n\n// Where to find embedded frameworks\nLD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks\n\n// The base SDK to use (if no version is specified, the latest version is\n// assumed)\nSDKROOT = watchos\n\n// Supported device families\nTARGETED_DEVICE_FAMILY = 4\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/watchOS/watchOS-Framework.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a framework on watchOS. This should be set at the target level for each\n// project configuration.\n//\n\n// Import base framework settings\n#include \"../Base/Targets/Framework.xcconfig\"\n\n// Import common settings specific to iOS\n#include \"watchOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Carthage/Checkouts/xcconfigs/watchOS/watchOS-StaticLibrary.xcconfig",
    "content": "//\n// This file defines additional configuration options that are appropriate only\n// for a static library on watchOS. This should be set at the target level for\n// each project configuration.\n//\n\n// Import base static library settings\n#include \"../Base/Targets/StaticLibrary.xcconfig\"\n\n// Apply common settings specific to watchOS\n#include \"watchOS-Base.xcconfig\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/BasicOperators.md",
    "content": "# Basic Operators\n\nThis document explains some of the most common operators used in ReactiveCocoa,\nand includes examples demonstrating their use.\n\nNote that “operators”, in this context, refers to functions that transform\n[signals][] and [signal producers][], _not_ custom Swift operators. In other\nwords, these are composable primitives provided by ReactiveCocoa for working\nwith event streams.\n\nThis document will use the term “event stream” when dealing with concepts that\napply to both `Signal` and `SignalProducer`. When the distinction matters, the\ntypes will be referred to by name.\n\n**[Performing side effects with event streams](#performing-side-effects-with-event-streams)**\n\n  1. [Observation](#observation)\n  1. [Injecting effects](#injecting-effects)\n\n**[Operator composition](#operator-composition)**\n\n  1. [Lifting](#lifting)\n\n**[Transforming event streams](#transforming-event-streams)**\n\n  1. [Mapping](#mapping)\n  1. [Filtering](#filtering)\n  1. [Aggregating](#aggregating)\n\n**[Combining event streams](#combining-event-streams)**\n\n  1. [Combining latest values](#combining-latest-values)\n  1. [Zipping](#zipping)\n\n**[Flattening producers](#flattening-producers)**\n\n  1. [Merging](#merging)\n  1. [Concatenating](#concatenating)\n  1. [Switching to the latest](#switching-to-the-latest)\n\n**[Handling failures](#handling-failures)**\n\n  1. [Catching failures](#catching-failures)\n  1. [Retrying](#retrying)\n  1. [Mapping errors](#mapping-errors)\n  1. [Promote](#promote)\n\n## Performing side effects with event streams\n\n### Observation\n\n`Signal`s can be observed with the `observe` function. It takes an `Observer` as argument to which any future events are sent. \n\n```Swift\nsignal.observe(Signal.Observer { event in\n    switch event {\n    case let .Next(next):\n        print(\"Next: \\(next)\")\n    case let .Failed(error):\n        print(\"Failed: \\(error)\")\n    case .Completed:\n        print(\"Completed\")\n    case .Interrupted:\n        print(\"Interrupted\")\n    }\n})\n```\n\nAlternatively, callbacks for the `Next`, `Failed`, `Completed` and `Interrupted` events can be provided which will be called when a corresponding event occurs.\n\n```Swift\nsignal.observeNext { next in \n  print(\"Next: \\(next)\") \n}\nsignal.observeFailed { error in\n  print(\"Failed: \\(error)\")\n}\nsignal.observeCompleted { \n  print(\"Completed\") \n}\nsignal.observeInterrupted { \n  print(\"Interrupted\")\n}\n```\n\nNote that it is not necessary to observe all four types of event - all of them are optional, you only need to provide callbacks for the events you care about.\n\n### Injecting effects\n\nSide effects can be injected on a `SignalProducer` with the `on` operator without actually subscribing to it. \n\n```Swift\nlet producer = signalProducer\n    .on(started: {\n        print(\"Started\")\n    }, event: { event in\n        print(\"Event: \\(event)\")\n    }, failed: { error in\n        print(\"Failed: \\(error)\")\n    }, completed: {\n        print(\"Completed\")\n    }, interrupted: {\n        print(\"Interrupted\")\n    }, terminated: {\n        print(\"Terminated\")\n    }, disposed: {\n        print(\"Disposed\")\n    }, next: { value in\n        print(\"Next: \\(value)\")\n    })\n```\n\nSimilar to `observe`, all the parameters are optional and you only need to provide callbacks for the events you care about.\n\nNote that nothing will be printed until `producer` is started (possibly somewhere else).\n\n## Operator composition\n\n### Lifting\n\n`Signal` operators can be _lifted_ to operate upon `SignalProducer`s using the\n`lift` method.\n\nThis will create a new `SignalProducer` which will apply the given operator to\n_every_ `Signal` created, just as if the operator had been applied to each\nproduced `Signal` individually.\n\n## Transforming event streams\n\nThese operators transform an event stream into a new stream.\n\n### Mapping\n\nThe `map` operator is used to transform the values in an event stream, creating\na new stream with the results.\n\n```Swift\nlet (signal, observer) = Signal<String, NoError>.pipe()\n\nsignal\n    .map { string in string.uppercaseString }\n    .observeNext { next in print(next) }\n\nobserver.sendNext(\"a\")     // Prints A\nobserver.sendNext(\"b\")     // Prints B\nobserver.sendNext(\"c\")     // Prints C\n```\n\n[Interactive visualisation of the `map` operator.](http://neilpa.me/rac-marbles/#map)\n\n### Filtering\n\nThe `filter` operator is used to only include values in an event stream that\nsatisfy a predicate.\n\n```Swift\nlet (signal, observer) = Signal<Int, NoError>.pipe()\n\nsignal\n    .filter { number in number % 2 == 0 }\n    .observeNext { next in print(next) }\n\nobserver.sendNext(1)     // Not printed\nobserver.sendNext(2)     // Prints 2\nobserver.sendNext(3)     // Not printed\nobserver.sendNext(4)     // prints 4\n```\n\n[Interactive visualisation of the `filter` operator.](http://neilpa.me/rac-marbles/#filter)\n\n### Aggregating\n\nThe `reduce` operator is used to aggregate a event stream’s values into a single\ncombined value. Note that the final value is only sent after the input stream\ncompletes.\n\n```Swift\nlet (signal, observer) = Signal<Int, NoError>.pipe()\n\nsignal\n    .reduce(1) { $0 * $1 }\n    .observeNext { next in print(next) }\n\nobserver.sendNext(1)     // nothing printed\nobserver.sendNext(2)     // nothing printed\nobserver.sendNext(3)     // nothing printed\nobserver.sendCompleted()   // prints 6\n```\n\nThe `collect` operator is used to aggregate a event stream’s values into\na single array value. Note that the final value is only sent after the input\nstream completes.\n\n```Swift\nlet (signal, observer) = Signal<Int, NoError>.pipe()\n\nsignal\n    .collect()\n    .observeNext { next in print(next) }\n\nobserver.sendNext(1)     // nothing printed\nobserver.sendNext(2)     // nothing printed\nobserver.sendNext(3)     // nothing printed\nobserver.sendCompleted()   // prints [1, 2, 3]\n```\n\n[Interactive visualisation of the `reduce` operator.](http://neilpa.me/rac-marbles/#reduce)\n\n## Combining event streams\n\nThese operators combine values from multiple event streams into a new, unified\nstream.\n\n### Combining latest values\n\nThe `combineLatest` function combines the latest values of two (or more) event\nstreams.\n\nThe resulting stream will only send its first value after each input has sent at\nleast one value. After that, new values on any of the inputs will result in\na new value on the output.\n\n```Swift\nlet (numbersSignal, numbersObserver) = Signal<Int, NoError>.pipe()\nlet (lettersSignal, lettersObserver) = Signal<String, NoError>.pipe()\n\nlet signal = combineLatest(numbersSignal, lettersSignal)\nsignal.observeNext { next in print(\"Next: \\(next)\") }\nsignal.observeCompleted { print(\"Completed\") }\n\nnumbersObserver.sendNext(0)      // nothing printed\nnumbersObserver.sendNext(1)      // nothing printed\nlettersObserver.sendNext(\"A\")    // prints (1, A)\nnumbersObserver.sendNext(2)      // prints (2, A)\nnumbersObserver.sendCompleted()  // nothing printed\nlettersObserver.sendNext(\"B\")    // prints (2, B)\nlettersObserver.sendNext(\"C\")    // prints (2, C)\nlettersObserver.sendCompleted()  // prints \"Completed\"\n```\n\nThe `combineLatestWith` operator works in the same way, but as an operator.\n\n[Interactive visualisation of the `combineLatest` operator.](http://neilpa.me/rac-marbles/#combineLatest)\n\n### Zipping\n\nThe `zip` function joins values of two (or more) event streams pair-wise. The\nelements of any Nth tuple correspond to the Nth elements of the input streams.\n\nThat means the Nth value of the output stream cannot be sent until each input\nhas sent at least N values.\n\n```Swift\nlet (numbersSignal, numbersObserver) = Signal<Int, NoError>.pipe()\nlet (lettersSignal, lettersObserver) = Signal<String, NoError>.pipe()\n\nlet signal = zip(numbersSignal, lettersSignal)\nsignal.observeNext { next in print(\"Next: \\(next)\") }\nsignal.observeCompleted { print(\"Completed\") }\n\nnumbersObserver.sendNext(0)      // nothing printed\nnumbersObserver.sendNext(1)      // nothing printed\nlettersObserver.sendNext(\"A\")    // prints (0, A)\nnumbersObserver.sendNext(2)      // nothing printed\nnumbersObserver.sendCompleted()  // nothing printed\nlettersObserver.sendNext(\"B\")    // prints (1, B)\nlettersObserver.sendNext(\"C\")    // prints (2, C) & \"Completed\"\n\n```\n\nThe `zipWith` operator works in the same way, but as an operator.\n\n[Interactive visualisation of the `zip` operator.](http://neilpa.me/rac-marbles/#zip)\n\n## Flattening producers\n\nThe `flatten` operator transforms a stream-of-streams into a single stream - where values are forwarded from the inner stream in accordance with the provided `FlattenStrategy`. The flattened result becomes that of the outer stream type - i.e. a `SignalProducer`-of-`SignalProducer`s or `SignalProducer`-of-`Signal`s gets flattened to a `SignalProducer`, and likewise a `Signal`-of-`SignalProducer`s or `Signal`-of-`Signal`s gets flattened to a `Signal`.   \n\nTo understand why there are different strategies and how they compare to each other, take a look at this example and imagine the column offsets as time:\n\n```Swift\nlet values = [\n// imagine column offset as time\n[ 1,    2,      3 ],\n   [ 4,      5,     6 ],\n         [ 7,     8 ],\n]\n\nlet merge =\n[ 1, 4, 2, 7,5, 3,8,6 ]\n\nlet concat = \n[ 1,    2,      3,4,      5,     6,7,     8]\n\nlet latest =\n[ 1, 4,    7,     8 ]\n```\n\nNote, how the values interleave and which values are even included in the resulting array.\n\n\n### Merging\n\nThe `.Merge` strategy immediately forwards every value of the inner `SignalProducer`s to the outer `SignalProducer`. Any failure sent on the outer producer or any inner producer is immediately sent on the flattened producer and terminates it.\n\n```Swift\nlet (producerA, lettersObserver) = SignalProducer<String, NoError>.buffer(5)\nlet (producerB, numbersObserver) = SignalProducer<String, NoError>.buffer(5)\nlet (signal, observer) = SignalProducer<SignalProducer<String, NoError>, NoError>.buffer(5)\n\nsignal.flatten(.Merge).startWithNext { next in print(next) }\n\nobserver.sendNext(producerA)\nobserver.sendNext(producerB)\nobserver.sendCompleted()\n\nlettersObserver.sendNext(\"a\")    // prints \"a\"\nnumbersObserver.sendNext(\"1\")    // prints \"1\"\nlettersObserver.sendNext(\"b\")    // prints \"b\"\nnumbersObserver.sendNext(\"2\")    // prints \"2\"\nlettersObserver.sendNext(\"c\")    // prints \"c\"\nnumbersObserver.sendNext(\"3\")    // prints \"3\"\n```\n\n[Interactive visualisation of the `flatten(.Merge)` operator.](http://neilpa.me/rac-marbles/#merge)\n\n### Concatenating\n\nThe `.Concat` strategy is used to serialize work of the inner `SignalProducer`s. The outer producer is started immediately. Each subsequent producer is not started until the preceeding one has completed. Failures are immediately forwarded to the flattened producer.\n\n```Swift\nlet (producerA, lettersObserver) = SignalProducer<String, NoError>.buffer(5)\nlet (producerB, numbersObserver) = SignalProducer<String, NoError>.buffer(5)\nlet (signal, observer) = SignalProducer<SignalProducer<String, NoError>, NoError>.buffer(5)\n\nsignal.flatten(.Concat).startWithNext { next in print(next) }\n\nobserver.sendNext(producerA)\nobserver.sendNext(producerB)\nobserver.sendCompleted()\n\nnumbersObserver.sendNext(\"1\")    // nothing printed\nlettersObserver.sendNext(\"a\")    // prints \"a\"\nlettersObserver.sendNext(\"b\")    // prints \"b\"\nnumbersObserver.sendNext(\"2\")    // nothing printed\nlettersObserver.sendNext(\"c\")    // prints \"c\"\nlettersObserver.sendCompleted()    // prints \"1\", \"2\"\nnumbersObserver.sendNext(\"3\")    // prints \"3\"\nnumbersObserver.sendCompleted()\n```\n\n[Interactive visualisation of the `flatten(.Concat)` operator.](http://neilpa.me/rac-marbles/#concat)\n\n### Switching to the latest\n\nThe `.Latest` strategy forwards only values from the latest input `SignalProducer`.\n\n```Swift\nlet (producerA, observerA) = SignalProducer<String, NoError>.buffer(5)\nlet (producerB, observerB) = SignalProducer<String, NoError>.buffer(5)\nlet (producerC, observerC) = SignalProducer<String, NoError>.buffer(5)\nlet (signal, observer) = SignalProducer<SignalProducer<String, NoError>, NoError>.buffer(5)\n\nsignal.flatten(.Latest).startWithNext { next in print(next) }\n\nobserver.sendNext(producerA)   // nothing printed\nobserverC.sendNext(\"X\")        // nothing printed\nobserverA.sendNext(\"a\")        // prints \"a\"\nobserverB.sendNext(\"1\")        // nothing printed\nobserver.sendNext(producerB)   // prints \"1\"\nobserverA.sendNext(\"b\")        // nothing printed\nobserverB.sendNext(\"2\")        // prints \"2\"\nobserverC.sendNext(\"Y\")        // nothing printed\nobserverA.sendNext(\"c\")        // nothing printed\nobserver.sendNext(producerC)   // prints \"X\", \"Y\"\nobserverB.sendNext(\"3\")        // nothing printed\nobserverC.sendNext(\"Z\")        // prints \"Z\"\n```\n\n## Handling failures\n\nThese operators are used to handle failures that might occur on an event stream.\n\n### Catching failures\n\nThe `flatMapError` operator catches any failure that may occur on the input `SignalProducer`, then starts a new `SignalProducer` in its place.\n\n```Swift\nlet (producer, observer) = SignalProducer<String, NSError>.buffer(5)\nlet error = NSError(domain: \"domain\", code: 0, userInfo: nil)\n\nproducer\n    .flatMapError { _ in SignalProducer<String, NoError>(value: \"Default\") }\n    .startWithNext { next in print(next) }\n\n\nobserver.sendNext(\"First\")     // prints \"First\"\nobserver.sendNext(\"Second\")    // prints \"Second\"\nobserver.sendFailed(error)     // prints \"Default\"\n```\n\n### Retrying\n\nThe `retry` operator will restart the original `SignalProducer` on failure up to `count` times.\n\n```Swift\nvar tries = 0\nlet limit = 2\nlet error = NSError(domain: \"domain\", code: 0, userInfo: nil)\nlet producer = SignalProducer<String, NSError> { (observer, _) in\n    if tries++ < limit {\n        observer.sendFailed(error)\n    } else {\n        observer.sendNext(\"Success\")\n        observer.sendCompleted()\n    }\n}\n\nproducer\n    .on(failed: {e in print(\"Failure\")})    // prints \"Failure\" twice\n    .retry(2)\n    .start { event in\n        switch event {\n        case let .Next(next):\n            print(next)                     // prints \"Success\"\n        case let .Failed(error):\n            print(\"Failed: \\(error)\")\n        case .Completed:\n            print(\"Completed\")\n        case .Interrupted:\n            print(\"Interrupted\")\n        }\n    }\n```\n\nIf the `SignalProducer` does not succeed after `count` tries, the resulting `SignalProducer` will fail. E.g., if  `retry(1)` is used in the example above instead of `retry(2)`, `\"Signal Failure\"` will be printed instead of `\"Success\"`.\n\n### Mapping errors\n\nThe `mapError` operator transforms the error of any failure in an event stream into a new error.\n\n```Swift\nenum CustomError: String, ErrorType {\n    case Foo = \"Foo\"\n    case Bar = \"Bar\"\n    case Other = \"Other\"\n    \n    var nsError: NSError {\n        return NSError(domain: \"CustomError.\\(rawValue)\", code: 0, userInfo: nil)\n    }\n    \n    var description: String {\n        return \"\\(rawValue) Error\"\n    }\n}\n\nlet (signal, observer) = Signal<String, NSError>.pipe()\n\nsignal\n    .mapError { (error: NSError) -> CustomError in\n        switch error.domain {\n        case \"com.example.foo\":\n            return .Foo\n        case \"com.example.bar\":\n            return .Bar\n        default:\n            return .Other\n        }\n    }\n    .observeFailed { error in\n        print(error)\n    }\n\nobserver.sendFailed(NSError(domain: \"com.example.foo\", code: 42, userInfo: nil))    // prints \"Foo Error\"\n```\n\n### Promote\n\nThe `promoteErrors` operator promotes an event stream that does not generate failures into one that can. \n\n```Swift\nlet (numbersSignal, numbersObserver) = Signal<Int, NoError>.pipe()\nlet (lettersSignal, lettersObserver) = Signal<String, NSError>.pipe()\n\nnumbersSignal\n    .promoteErrors(NSError)\n    .combineLatestWith(lettersSignal)\n```\n\nThe given stream will still not _actually_ generate failures, but this is useful\nbecause some operators to [combine streams](#combining-event-streams) require\nthe inputs to have matching error types.\n\n\n[Signals]: FrameworkOverview.md#signals\n[Signal Producers]: FrameworkOverview.md#signal-producers\n[Observation]: FrameworkOverview.md#observation\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/DebuggingTechniques.md",
    "content": "# Debugging Techniques\n\nThis document lists debugging techniques and infrastructure helpful for debugging ReactiveCocoa applications.\n\n#### Unscrambling Swift compiler errors\n\nType inferrence can be a source of hard-to-debug compiler errors. There are two potential places to be wrong when type inferrence used:\n\n1. Definition of type inferred variable\n2. Consumption of type inferred variable\n\nIn both cases errors are related to incorrect assumptions about type. Such issues are common for ReactiveCocoa applications as it is all about operations over data and related types. The current state of the Swift compiler can cause misleading type errors, especially when error happens in the middle of a signal chain. \n\nBelow is an example of type-error scenario:\n\n```swift\nSignalProducer<Int, NoError>(value:42)\n    .on(next: { answer in\n        return _\n    })\n    .startWithCompleted {\n        print(\"Completed.\")\n    }\n```\n\nThe code above will not compile with the following error on a `print` call `error: ambiguous reference to member 'print'\nprint(\"Completed.\")`. To find the actual compile error, the chain needs to be broken apart. Add explicit definitions of closure types on each of the steps:\n\n```swift\nlet initialProducer = SignalProducer<Int, NoError>.init(value:42)\nlet sideEffectProducer = initialProducer.on(next: { (answer: Int) in\n    return _\n})\nlet disposable = sideEffectProducer.startWithCompleted {\n    print(\"Completed.\")\n}\n```\n\nThe code above will not compile too, but with the error `error: cannot convert value of type '(_) -> _' to expected argument type '(Int -> ())?'` on definition of `on` closure. This gives enough of information to locate unexpected `return _` since `on` closure should not have any return value.\n\n#### Binding `DynamicProperty` with `<~` operator\n\nUsing the `<~` operator to bind a `Signal` or a `SignalProducer` to a `DynamicProperty` can result in unexpected compiler errors. \n\nBelow is an example of this scenario:\n\n```swift\nlet label = UILabel()\nlet property = MutableProperty<String>(\"\")\n\nDynamicProperty(object: label, keyPath: \"text\") <~ property.producer\n```\n\nThis will often result in a compiler error: \n\n> error: binary operator '<~' cannot be applied to operands of type 'DynamicProperty' and 'SignalProducer<String, NoError>'\nDynamicProperty(object: label, keyPath: \"text\") <~ property.producer\n\nThe reason is a limitation in the swift type checker - A `DynamicProperty` always has a type of `AnyObject?`, but the `<~` operator requires the values of both sides to have the same type, so the right side value would have to be `AnyObject?` as well, but usually a more concrete type is used (in this example `String`).\n\nUsually, the fix is as easy as adding a `.map{ $0 }`.\n\n```swift\nDynamicProperty(object: label, keyPath: \"text\") <~ property.producer.map { $0 }\n```\n\nThis allows the type checker to infer that `String` can be converted to `AnyProperty?` and thus, the binding succeeds.\n\n#### Debugging event streams\n\nAs mentioned in the README, stream debugging can be quite difficut and tedious, so we provide the `logEvents` operator. In its  simplest form:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .logEvents()\n```\n\nThis will print to the standard output the events. For most use cases, this is enough and will greatly help you understand your flow. \nThe biggest problem with this approach, is that it will continue to ouput in Release mode. This leaves with you with two options:\n\n1. Comment out the operator: `//.logEvents()`. This is the simpleste approach, but it's error prone, since you will eventually forget to do this.\n2. Pass your own function and manipulate the output as you see fit. This is the recommended approach.\n\nLet's see how this would look like if we didn't want to print in Release mode:\n\n```swift\nfunc debugLog(identifier: String, event: String, fileName: String, functionName: String, lineNumber: Int) {\n   // Don't forget to set up the DEBUG symbol (http://stackoverflow.com/a/24112024/491239)\n   #if DEBUG\n      print(event)\n   #endif\n}\n```\n\nYou would then:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .logEvents(logger: debugLog)\n```\n\nWe also provide the `identifier` parameter. This is useful when you are debugging multiple streams and you don't want to get lost:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .logEvents(identifier: \"✨My awesome stream ✨\")\n```\n\nThere also cases, specially with [hot signals][[Signals]], when there is simply too much output. For those, you can specify which events you are interested in:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .logEvents(events:[.Disposed]) // This will happen when the `UITextField` is released\n```\n\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/DesignGuidelines.md",
    "content": "# Design Guidelines\n\nThis document contains guidelines for projects that want to make use of\nReactiveCocoa. The content here is heavily inspired by the [Rx Design\nGuidelines](http://blogs.msdn.com/b/rxteam/archive/2010/10/28/rx-design-guidelines.aspx).\n\nThis document assumes basic familiarity\nwith the features of ReactiveCocoa. The [Framework Overview][] is a better\nresource for getting up to speed on the main types and concepts provided by RAC.\n\n**[The `Event` contract](#the-event-contract)**\n\n 1. [`Next`s provide values or indicate the occurrence of events](#nexts-provide-values-or-indicate-the-occurrence-of-events)\n 1. [Failures behave like exceptions and propagate immediately](#failures-behave-like-exceptions-and-propagate-immediately)\n 1. [Completion indicates success](#completion-indicates-success)\n 1. [Interruption cancels outstanding work and usually propagates immediately](#interruption-cancels-outstanding-work-and-usually-propagates-immediately)\n 1. [Events are serial](#events-are-serial)\n 1. [Events cannot be sent recursively](#events-cannot-be-sent-recursively)\n 1. [Events are sent synchronously by default](#events-are-sent-synchronously-by-default)\n\n**[The `Signal` contract](#the-signal-contract)**\n\n 1. [Signals start work when instantiated](#signals-start-work-when-instantiated)\n 1. [Observing a signal does not have side effects](#observing-a-signal-does-not-have-side-effects)\n 1. [All observers of a signal see the same events in the same order](#all-observers-of-a-signal-see-the-same-events-in-the-same-order)\n 1. [A signal is retained until the underlying observer is released](#a-signal-is-retained-until-the-underlying-observer-is-released)\n 1. [Terminating events dispose of signal resources](#terminating-events-dispose-of-signal-resources)\n\n**[The `SignalProducer` contract](#the-signalproducer-contract)**\n\n 1. [Signal producers start work on demand by creating signals](#signal-producers-start-work-on-demand-by-creating-signals)\n 1. [Each produced signal may send different events at different times](#each-produced-signal-may-send-different-events-at-different-times)\n 1. [Signal operators can be lifted to apply to signal producers](#signal-operators-can-be-lifted-to-apply-to-signal-producers)\n 1. [Disposing of a produced signal will interrupt it](#disposing-of-a-produced-signal-will-interrupt-it)\n\n**[Best practices](#best-practices)**\n\n 1. [Process only as many values as needed](#process-only-as-many-values-as-needed)\n 1. [Observe events on a known scheduler](#observe-events-on-a-known-scheduler)\n 1. [Switch schedulers in as few places as possible](#switch-schedulers-in-as-few-places-as-possible)\n 1. [Capture side effects within signal producers](#capture-side-effects-within-signal-producers)\n 1. [Share the side effects of a signal producer by sharing one produced signal](#share-the-side-effects-of-a-signal-producer-by-sharing-one-produced-signal)\n 1. [Prefer managing lifetime with operators over explicit disposal](#prefer-managing-lifetime-with-operators-over-explicit-disposal)\n\n**[Implementing new operators](#implementing-new-operators)**\n\n 1. [Prefer writing operators that apply to both signals and producers](#prefer-writing-operators-that-apply-to-both-signals-and-producers)\n 1. [Compose existing operators when possible](#compose-existing-operators-when-possible)\n 1. [Forward failure and interruption events as soon as possible](#forward-failure-and-interruption-events-as-soon-as-possible)\n 1. [Switch over `Event` values](#switch-over-event-values)\n 1. [Avoid introducing concurrency](#avoid-introducing-concurrency)\n 1. [Avoid blocking in operators](#avoid-blocking-in-operators)\n\n## The `Event` contract\n\n[Events][] are fundamental to ReactiveCocoa. [Signals][] and [signal producers][] both send\nevents, and may be collectively called “event streams.”\n\nEvent streams must conform to the following grammar:\n\n```\nNext* (Interrupted | Failed | Completed)?\n```\n\nThis states that an event stream consists of:\n\n 1. Any number of `Next` events\n 1. Optionally followed by one terminating event, which is any of `Interrupted`, `Failed`, or `Completed`\n\nAfter a terminating event, no other events will be received.\n\n#### `Next`s provide values or indicate the occurrence of events\n\n`Next` events contain a payload known as the “value.” Only `Next` events are\nsaid to have a value. Since an event stream can contain any number of `Next`s,\nthere are few restrictions on what those values can mean or be used for, except\nthat they must be of the same type.\n\nAs an example, the value might represent an element from a collection, or\na progress update about some long-running operation. The value of a `Next` event\nmight even represent nothing at all—for example, it’s common to use a value type\nof `()` to indicate that something happened, without being more specific about\nwhat that something was.\n\nMost of the event stream [operators][] act upon `Next` events, as they represent the\n“meaningful data” of a signal or producer.\n\n#### Failures behave like exceptions and propagate immediately\n\n`Failed` events indicate that something went wrong, and contain a concrete error\nthat indicates what happened. Failures are fatal, and propagate as quickly as\npossible to the consumer for handling.\n\nFailures also behave like exceptions, in that they “skip” operators, terminating\nthem along the way. In other words, most [operators][] immediately stop doing\nwork when a failure is received, and then propagate the failure onward. This even applies to time-shifted operators, like [`delay`][delay]—which, despite its name, will forward any failures immediately.\n\nConsequently, failures should only be used to represent “abnormal” termination. If it is important to let operators (or consumers) finish their work, a `Next`\nevent describing the result might be more appropriate.\n\nIf an event stream can _never_ fail, it should be parameterized with the\nspecial [`NoError`][NoError] type, which statically guarantees that a `Failed`\nevent cannot be sent upon the stream.\n\n#### Completion indicates success\n\nAn event stream sends `Completed` when the operation has completed successfully,\nor to indicate that the stream has terminated normally.\n\nMany operators manipulate the `Completed` event to shorten or extend the\nlifetime of an event stream.\n\nFor example, [`take`][take] will complete after the specified number of values have\nbeen received, thereby terminating the stream early. On the other hand, most\noperators that accept multiple signals or producers will wait until _all_ of\nthem have completed before forwarding a `Completed` event, since a successful\noutcome will usually depend on all the inputs.\n\n#### Interruption cancels outstanding work and usually propagates immediately\n\nAn `Interrupted` event is sent when an event stream should cancel processing.\nInterruption is somewhere between [success](#completion-indicates-success)\nand [failure](#failures-behave-like-exceptions-and-propagate-immediately)—the\noperation was not successful, because it did not get to finish, but it didn’t\nnecessarily “fail” either.\n\nMost [operators][] will propagate interruption immediately, but there are some\nexceptions. For example, the [flattening operators][flatten] will ignore\n`Interrupted` events that occur on the _inner_ producers, since the cancellation\nof an inner operation should not necessarily cancel the larger unit of work.\n\nRAC will automatically send an `Interrupted` event upon [disposal][Disposables], but it can\nalso be sent manually if necessary. Additionally, [custom\noperators](#implementing-new-operators) must make sure to forward interruption\nevents to the observer.\n\n#### Events are serial\n\nRAC guarantees that all events upon a stream will arrive serially. In other\nwords, it’s impossible for the observer of a signal or producer to receive\nmultiple `Event`s concurrently, even if the events are sent on multiple threads\nsimultaneously.\n\nThis simplifies [operator][Operators] implementations and [observers][].\n\n#### Events cannot be sent recursively\n\nJust like RAC guarantees that [events will not be received\nconcurrently](#events-are-serial), it also guarantees that they won’t be\nreceived recursively. As a consequence, [operators][] and [observers][] _do not_ need to\nbe reentrant.\n\nIf an event is sent upon a signal from a thread that is _already processing_\na previous event from that signal, deadlock will result. This is because\nrecursive signals are usually programmer error, and the determinacy of\na deadlock is preferable to nondeterministic race conditions.\n\nWhen a recursive signal is explicitly desired, the recursive event should be\ntime-shifted, with an operator like [`delay`][delay], to ensure that it isn’t sent from\nan already-running event handler.\n\n#### Events are sent synchronously by default\n\nRAC does not implicitly introduce concurrency or asynchrony. [Operators][] that\naccept a [scheduler][Schedulers] may, but they must be explicitly invoked by the consumer of\nthe framework.\n\nA “vanilla” signal or producer will send all of its events synchronously by\ndefault, meaning that the [observer][Observers] will be synchronously invoked for each event\nas it is sent, and that the underlying work will not resume until the event\nhandler finishes.\n\nThis is similar to how `NSNotificationCenter` or `UIControl` events are\ndistributed.\n\n## The `Signal` contract\n\nA [signal][Signals] is an “always on” stream that obeys [the `Event`\ncontract](#the-event-contract).\n\n`Signal` is a reference type, because each signal has identity—in other words, each\nsignal has its own lifetime, and may eventually terminate. Once terminated,\na signal cannot be restarted.\n\n#### Signals start work when instantiated\n\n[`Signal.init`][Signal.init] immediately executes the generator closure that is passed to it.\nThis means that side effects may occur even before the initializer returns.\n\nIt is also possible to send [events][] before the initializer returns. However,\nsince it is impossible for any [observers][] to be attached at this point, any\nevents sent this way cannot be received.\n\n#### Observing a signal does not have side effects\n\nThe work associated with a `Signal` does not start or stop when [observers][] are\nadded or removed, so the [`observe`][observe] method (or the cancellation thereof) never\nhas side effects.\n\nA signal’s side effects can only be stopped through [a terminating\nevent](#signals-are-retained-until-a-terminating-event-occurs).\n\n#### All observers of a signal see the same events in the same order\n\nBecause [observation does not have side\neffects](#observing-a-signal-does-not-have-side-effects), a `Signal` never\ncustomizes events for different [observers][]. When an event is sent upon a signal,\nit will be [synchronously](#events-are-sent-synchronously-by-default)\ndistributed to all observers that are attached at that time, much like\nhow `NSNotificationCenter` sends notifications.\n\nIn other words, there are not different event “timelines” per observer. All\nobservers effectively see the same stream of events.\n\nThere is one exception to this rule: adding an observer to a signal _after_ it\nhas already terminated will result in exactly one\n[`Interrupted`](#interruption-cancels-outstanding-work-and-usually-propagates-immediately)\nevent sent to that specific observer.\n\n#### A signal is retained until the underlying observer is released\n\nEven if the caller does not maintain a reference to the `Signal`:\n\n - A signal created with [`Signal.init`][Signal.init] is kept alive until the generator closure\n   releases the [observer][Observers] argument.\n - A signal created with [`Signal.pipe`][Signal.pipe] is kept alive until the returned observer\n   is released.\n\nThis ensures that signals associated with long-running work do not deallocate\nprematurely.\n\nNote that it is possible to release a signal before a terminating [event][Events] has been\nsent upon it. This should usually be avoided, as it can result in resource\nleaks, but is sometimes useful to disable termination.\n\n#### Terminating events dispose of signal resources\n\nWhen a terminating [event][Events] is sent along a `Signal`, all [observers][] will be\nreleased, and any resources being used to generate events should be disposed of.\n\nThe easiest way to ensure proper resource cleanup is to return a [disposable][Disposables]\nfrom the generator closure, which will be disposed of when termination occurs.\nThe disposable should be responsible for releasing memory, closing file handles,\ncanceling network requests, or anything else that may have been associated with\nthe work being performed.\n\n## The `SignalProducer` contract\n\nA [signal producer][Signal Producers] is like a “recipe” for creating\n[signals][]. Signal producers do not do anything by themselves—[work begins only\nwhen a signal is produced](#signal-producers-start-work-on-demand-by-creating-signals).\n\nSince a signal producer is just a declaration of _how_ to create signals, it is\na value type, and has no memory management to speak of.\n\n#### Signal producers start work on demand by creating signals\n\nThe [`start`][start] and [`startWithSignal`][startWithSignal] methods each\nproduce a `Signal` (implicitly and explicitly, respectively). After\ninstantiating the signal, the closure that was passed to\n[`SignalProducer.init`][SignalProducer.init] will be executed, to start the flow\nof [events][] after any observers have been attached.\n\nAlthough the producer itself is not _really_ responsible for the execution of\nwork, it’s common to speak of “starting” and “canceling” a producer. These terms\nrefer to producing a `Signal` that will start work, and [disposing of that\nsignal](#disposing-of-a-produced-signal-will-interrupt-it) to stop work.\n\nA producer can be started any number of times (including zero), and the work\nassociated with it will execute exactly that many times as well.\n\n#### Each produced signal may send different events at different times\n\nBecause signal producers [start work on\ndemand](#signal-producers-start-work-on-demand-by-creating-signals), there may\nbe different [observers][] associated with each execution, and those observers\nmay see completely different [event][Events] timelines.\n\nIn other words, events are generated from scratch for each time the producer is\nstarted, and can be completely different (or in a completely different order)\nfrom other times the producer is started.\n\nNonetheless, each execution of a signal producer will follow [the `Event`\ncontract](#the-event-contract).\n\n#### Signal operators can be lifted to apply to signal producers\n\nDue to the relationship between signals and signal producers, it is possible to\nautomatically promote any [operators][] over one or more `Signal`s to apply to\nthe same number of `SignalProducer`s instead, using the [`lift`][lift] method.\n\n`lift` will apply the behavior of the specified operator to each `Signal` that\nis [created when the signal producer is started](#signal-producers-start-work-on-demand-by-creating-signals).\n\n#### Disposing of a produced signal will interrupt it\n\nWhen a producer is started using the [`start`][start] or\n[`startWithSignal`][startWithSignal] methods, a [`Disposable`][Disposables] is\nautomatically created and passed back.\n\nDisposing of this object will\n[interrupt](#interruption-cancels-outstanding-work-and-usually-propagates-immediately)\nthe produced `Signal`, thereby canceling outstanding work and sending an\n`Interrupted` [event][Events] to all [observers][], and will also dispose of\neverything added to the [`CompositeDisposable`][CompositeDisposable] in\n[SignalProducer.init].\n\nNote that disposing of one produced `Signal` will not affect other signals created\nby the same `SignalProducer`.\n\n## Best practices\n\nThe following recommendations are intended to help keep RAC-based code\npredictable, understandable, and performant.\n\nThey are, however, only guidelines. Use best judgement when determining whether\nto apply the recommendations here to a given piece of code.\n\n#### Process only as many values as needed\n\nKeeping an event stream alive longer than necessary can waste CPU and memory, as\nunnecessary work is performed for results that will never be used.\n\nIf only a certain number of values or certain number of time is required from\na [signal][Signals] or [producer][Signal Producers], operators like\n[`take`][take] or [`takeUntil`][takeUntil] can be used to\nautomatically complete the stream once a certain condition is fulfilled.\n\nThe benefit is exponential, too, as this will terminate dependent operators\nsooner, potentially saving a significant amount of work.\n\n#### Observe events on a known scheduler\n\nWhen receiving a [signal][Signals] or [producer][Signal Producers] from unknown\ncode, it can be difficult to know which thread [events][] will arrive upon. Although\nevents are [guaranteed to be serial](#events-are-serial), sometimes stronger\nguarantees are needed, like when performing UI updates (which must occur on the\nmain thread).\n\nWhenever such a guarantee is important, the [`observeOn`][observeOn]\n[operator][Operators] should be used to force events to be received upon\na specific [scheduler][Schedulers].\n\n#### Switch schedulers in as few places as possible\n\nNotwithstanding the [above](#observe-events-on-a-known-scheduler), [events][]\nshould only be delivered to a specific [scheduler][Schedulers] when absolutely\nnecessary. Switching schedulers can introduce unnecessary delays and cause an\nincrease in CPU load.\n\nGenerally, [`observeOn`][observeOn] should only be used right before observing\nthe [signal][Signals], starting the [producer][Signal Producers], or binding to\na [property][Properties]. This ensures that events arrive on the expected\nscheduler, without introducing multiple thread hops before their arrival.\n\n#### Capture side effects within signal producers\n\nBecause [signal producers start work on\ndemand](#signal-producers-start-work-on-demand-by-creating-signals), any\nfunctions or methods that return a [signal producer][Signal Producers] should\nmake sure that side effects are captured _within_ the producer itself, instead\nof being part of the function or method call.\n\nFor example, a function like this:\n\n```swift\nfunc search(text: String) -> SignalProducer<Result, NetworkError>\n```\n\n… should _not_ immediately start a search.\n\nInstead, the returned producer should execute the search once for every time\nthat it is started. This also means that if the producer is never started,\na search will never have to be performed either.\n\n#### Share the side effects of a signal producer by sharing one produced signal\n\nIf multiple [observers][] are interested in the results of a [signal\nproducer][Signal Producers], calling [`start`][start] once for each observer\nmeans that the work associated with the producer will [execute that many\ntimes](#signal-producers-start-work-on-demand-by-creating-signals) and [may not\ngenerate the same results](#each-produced-signal-may-send-different-events-at-different-times).\n\nIf:\n\n 1. the observers need to receive the exact same results\n 1. the observers know about each other, or\n 1. the code starting the producer knows about each observer\n\n… it may be more appropriate to start the producer _just once_, and share the\nresults of that one [signal][Signals] to all observers, by attaching them within\nthe closure passed to the [`startWithSignal`][startWithSignal] method.\n\n#### Prefer managing lifetime with operators over explicit disposal\n\nAlthough the [disposable][Disposables] returned from [`start`][start] makes\ncanceling a [signal producer][Signal Producers] really easy, explicit use of\ndisposables can quickly lead to a rat's nest of resource management and cleanup\ncode.\n\nThere are almost always higher-level [operators][] that can be used instead of manual\ndisposal:\n\n * [`take`][take] can be used to automatically terminate a stream once a certain\n   number of values have been received.\n * [`takeUntil`][takeUntil] can be used to automatically terminate\n   a [signal][Signals] or producer when an event occurs (for example, when\n   a “Cancel” button is pressed in the UI).\n * [Properties][] and the `<~` operator can be used to “bind” the result of\n   a signal or producer, until termination or until the property is deallocated.\n   This can replace a manual observation that sets a value somewhere.\n\n## Implementing new operators\n\nRAC provides a long list of built-in [operators][] that should cover most use\ncases; however, RAC is not a closed system. It's entirely valid to implement\nadditional operators for specialized uses, or for consideration in ReactiveCocoa\nitself.\n\nImplementing a new operator requires a careful attention to detail and a focus\non simplicity, to avoid introducing bugs into the calling code.\n\nThese guidelines cover some of the common pitfalls and help preserve the\nexpected API contracts. It may also help to look at the implementations of\nexisting `Signal` and `SignalProducer` operators for reference points.\n\n#### Prefer writing operators that apply to both signals and producers\n\nSince any [signal operator can apply to signal\nproducers](#signal-operators-can-be-lifted-to-apply-to-signal-producers),\nwriting custom operators in terms of [`Signal`][Signals] means that\n[`SignalProducer`][Signal Producers] will get it “for free.”\n\nEven if the caller only needs to apply the new operator to signal producers at\nfirst, this generality can save time and effort in the future.\n\nOf course, some capabilities _require_ producers (for example, any retrying or\nrepeating), so it may not always be possible to write a signal-based version\ninstead.\n\n#### Compose existing operators when possible\n\nConsiderable thought has been put into the operators provided by RAC, and they\nhave been validated through automated tests and through their real world use in\nother projects. An operator that has been written from scratch may not be as\nrobust, or might not handle a special case that the built-in operators are aware\nof.\n\nTo minimize duplication and possible bugs, use the provided operators as much as\npossible in a custom operator implementation. Generally, there should be very\nlittle code written from scratch.\n\n#### Forward failure and interruption events as soon as possible\n\nUnless an operator is specifically built to handle\n[failures](#failures-behave-like-exceptions-and-propagate-immediately) and\n[interruption](#interruption-cancels-outstanding-work-and-usually-propagates-immedaitely)\nin a custom way, it should propagate those events to the observer as soon as\npossible, to ensure that their semantics are honored.\n\n#### Switch over `Event` values\n\nInstead of using [`start(failed:completed:interrupted:next:)`][start] or\n[`observe(failed:completed:interrupted:next:)`][observe], create your own\n[observer][Observers] to process raw [`Event`][Events] values, and use\na `switch` statement to determine the event type.\n\nFor example:\n\n```swift\nproducer.start { event in\n    switch event {\n    case let .Next(value):\n        print(\"Next event: \\(value)\")\n\n    case let .Failed(error):\n        print(\"Failed event: \\(error)\")\n\n    case .Completed:\n        print(\"Completed event\")\n\n    case .Interrupted:\n        print(\"Interrupted event\")\n    }\n}\n```\n\nSince the compiler will generate a warning if the `switch` is missing any case,\nthis prevents mistakes in a custom operator’s event handling.\n\n#### Avoid introducing concurrency\n\nConcurrency is an extremely common source of bugs in programming. To minimize\nthe potential for deadlocks and race conditions, operators should not\nconcurrently perform their work.\n\nCallers always have the ability to [observe events on a specific\nscheduler](#observe-events-on-a-known-scheduler), and RAC offers built-in ways\nto parallelize work, so custom operators don’t need to be concerned with it.\n\n#### Avoid blocking in operators\n\nSignal or producer operators should return a new signal or producer\n(respectively) as quickly as possible. Any work that the operator needs to\nperform should be part of the event handling logic, _not_ part of the operator\ninvocation itself.\n\nThis guideline can be safely ignored when the purpose of an operator is to\nsynchronously retrieve one or more values from a stream, like `single()` or\n`wait()`.\n\n[CompositeDisposable]: ../ReactiveCocoa/Swift/Disposable.swift\n[Disposables]: FrameworkOverview.md#disposables\n[Events]: FrameworkOverview.md#events\n[Framework Overview]: FrameworkOverview.md\n[NoError]: ../ReactiveCocoa/Swift/Errors.swift\n[Observers]: FrameworkOverview.md#observers\n[Operators]: BasicOperators.md\n[Properties]: FrameworkOverview.md#properties\n[Schedulers]: FrameworkOverview.md#schedulers\n[Signal Producers]: FrameworkOverview.md#signal-producers\n[Signal.init]: ../ReactiveCocoa/Swift/Signal.swift\n[Signal.pipe]: ../ReactiveCocoa/Swift/Signal.swift\n[SignalProducer.init]: ../ReactiveCocoa/Swift/SignalProducer.swift\n[Signals]: FrameworkOverview.md#signals\n[delay]: ../ReactiveCocoa/Swift/Signal.swift\n[flatten]: BasicOperators.md#flattening-producers\n[lift]: ../ReactiveCocoa/Swift/SignalProducer.swift\n[observe]: ../ReactiveCocoa/Swift/Signal.swift\n[observeOn]: ../ReactiveCocoa/Swift/Signal.swift\n[start]: ../ReactiveCocoa/Swift/SignalProducer.swift\n[startWithSignal]: ../ReactiveCocoa/Swift/SignalProducer.swift\n[take]: ../ReactiveCocoa/Swift/Signal.swift\n[takeUntil]: ../ReactiveCocoa/Swift/Signal.swift\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/DocumentingCode.md",
    "content": "# Documenting Code\n\nPlease follow these guidelines when documenting code using [Xcode's markup](https://developer.apple.com/library/mac/documentation/Xcode/Reference/xcode_markup_formatting_ref/):\n\n- Expand lines up to 80 characters per line. If the line extends beyond 80 characters the next line must be indented at the previous markup delimiter's colon position + 1 space:\n\n```\n/// DO:\n/// For the sake of the demonstration we will use the lorem ipsum text here.\n/// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin ullamcorper \n/// tempor dolor a cras amet.\n///\n/// - returns: Cras a convallis dolor, sed pellentesque mi. Integer suscipit\n///            fringilla turpis in bibendum volutpat.\n/// ...\n/// DON'T\n/// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin ullamcorper tempor dolor a cras amet.\n///\n/// - returns: Cras a convallis dolor, sed pellentesque mi. Integer suscipit fringilla turpis in bibendum volutpat.\n/// ...\n/// DON'T II\n/// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin ullamcorper \n/// tempor dolor a cras amet.\n///\n/// - returns: Cras a convallis dolor, sed pellentesque mi. Integer suscipit\n/// fringilla turpis in bibendum volutpat.\n```\n\n- Always use the `parameters` delimiter instead of the `parameter` delimiter even if a function has only one parameter:\n\n```\n/// DO:\n/// - parameters:\n///   - foo: Instance of `Foo`.\n/// DON'T:\n/// - parameter foo: Instance of `Foo`.\n```\n\n- Do not add a `return` delimiter to an initializer's markup:\n\n```\n/// DO:\n/// Initialises instance of `Foo` with given arguments.\ninit(withBar bar: Bar = Bar.defaultBar()) {\n    ...\n/// DON'T:\n/// Initialises instance of `Foo` with given arguments.\n///\n/// - returns: Initialized `Foo` with default `Bar`\ninit(withBar bar: Bar = Bar.defaultBar()) {\n    ...\n```\n\n- Treat parameter declaration as a separate sentence/paragraph:\n\n```\n/// DO:\n/// - parameters:\n///   - foo: A foo for the function.\n/// ...\n/// DON'T:\n/// - parameters:\n///   - foo: foo for the function;\n```\n\n- Add one line between markup delimiters and no whitespace lines between a function's `parameters`:\n\n```\n/// DO:\n/// - note: This is an amazing function.\n///\n/// - parameters:\n///   - foo: Instance of `Foo`.\n///   - bar: Instance of `Bar`.\n///\n/// - returns: Something magical.\n/// ...\n/// DON'T:\n/// - note: Don't forget to breathe, it's important! 😎\n/// - parameters:\n///   - foo: Instance of `Foo`.\n///   - bar: Instance of `Bar`.\n/// - returns: Something claustrophobic.\n```\n\n- Use code voice to highlight symbols in descriptions, parameter definitions, return statments and elsewhere.\n\n```\n/// DO:\n/// Create instance of `Foo` by passing it `Bar`.\n///\n/// - parameters:\n///   - bar: Instance of `Bar`.\n/// ...\n/// DON'T:\n/// Create instance of Foo by passing it Bar.\n///\n/// - parameters:\n///   - bar: Instance of Bar.\n\n- The `precondition`, `parameters` and `return` delimiters should come last in that order in the markup block before the method's signature.\n\n```\n/// DO:\n/// Create instance of `Foo` by passing it `Bar`.\n///\n/// - note: The `foo` is not retained by the receiver.\n///\n/// - parameters:\n///   - foo: Instance of `Foo`.\ninit(foo: Foo) {\n/* ... */\n/// DON'T\n/// Create counter that will count down from `number`.\n///\n/// - parameters:\n///   - number: Number to count down from.\n///\n/// - precondition: `number` must be non-negative.\ninit(count: Int)\n```\n\n- Use first person's active voice in present simple tense.\n\n```\n/// DO:\n/// Do something magical and return pixie dust from `self`.\n///\n/// DON'T:\n/// Does something magical and returns pixie dust from `self`.\n```\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/FrameworkOverview.md",
    "content": "# Framework Overview\n\nThis document contains a high-level description of the different components\nwithin the ReactiveCocoa framework, and an attempt to explain how they work\ntogether and divide responsibilities. This is meant to be a starting point for\nlearning about new modules and finding more specific documentation.\n\nFor examples and help understanding how to use RAC, see the [README][] or\nthe [Design Guidelines][].\n\n## Events\n\nAn **event**, represented by the [`Event`][Event] type, is the formalized representation\nof the fact that _something has happened_. In ReactiveCocoa, events are the centerpiece\nof communication. An event might represent the press of a button, a piece\nof information received from an API, the occurrence of an error, or the completion\nof a long-running operation. In any case, something generates the events and sends them over a\n[signal](#signals) to any number of [observers](#observers).\n\n`Event` is an enumerated type representing either a value or one of three\nterminal events:\n\n * The `Next` event provides a new value from the source.\n * The `Failed` event indicates that an error occurred before the signal could\n   finish. Events are parameterized by an `ErrorType`, which determines the kind\n   of failure that’s permitted to appear in the event. If a failure is not\n   permitted, the event can use type `NoError` to prevent any from being\n   provided.\n * The `Completed` event indicates that the signal finished successfully, and\n   that no more values will be sent by the source.\n * The `Interrupted` event indicates that the signal has terminated due to\n   cancellation, meaning that the operation was neither successful nor\n   unsuccessful.\n\n## Signals\n\nA **signal**, represented by the [`Signal`][Signal] type, is any series of [events](#events)\nover time that can be observed.\n\nSignals are generally used to represent event streams that are already “in progress”,\nlike notifications, user input, etc. As work is performed or data is received,\nevents are _sent_ on the signal, which pushes them out to any observers.\nAll observers see the events at the same time.\n\nUsers must [observe](#observers) a signal in order to access its events.\nObserving a signal does not trigger any side effects. In other words,\nsignals are entirely producer-driven and push-based, and consumers (observers)\ncannot have any effect on their lifetime. While observing a signal, the user\ncan only evaluate the events in the same order as they are sent on the signal. There\nis no random access to values of a signal.\n\nSignals can be manipulated by applying [primitives][BasicOperators] to them.\nTypical primitives to manipulate a single signal like `filter`, `map` and\n`reduce` are available, as well as primitives to manipulate multiple signals\nat once (`zip`). Primitives operate only on the `Next` events of a signal.\n\nThe lifetime of a signal consists of any number of `Next` events, followed by\none terminating event, which may be any one of `Failed`, `Completed`, or\n`Interrupted` (but not a combination).\nTerminating events are not included in the signal’s values—they must be\nhandled specially.\n\n### Pipes\n\nA **pipe**, created by `Signal.pipe()`, is a [signal](#signals)\nthat can be manually controlled.\n\nThe method returns a [signal](#signals) and an [observer](#observers).\nThe signal can be controlled by sending events to the observer. This\ncan be extremely useful for bridging non-RAC code into the world of signals.\n\nFor example, instead of handling application logic in block callbacks, the\nblocks can simply send events to the observer. Meanwhile, the signal\ncan be returned, hiding the implementation detail of the callbacks.\n\n## Signal Producers\n\nA **signal producer**, represented by the [`SignalProducer`][SignalProducer] type, creates\n[signals](#signals) and performs side effects.\n\nThey can be used to represent operations or tasks, like network\nrequests, where each invocation of `start()` will create a new underlying\noperation, and allow the caller to observe the result(s). The\n`startWithSignal()` variant gives access to the produced signal, allowing it to\nbe observed multiple times if desired.\n\nBecause of the behavior of `start()`, each signal created from the same\nproducer may see a different ordering or version of events, or the stream might\neven be completely different! Unlike a plain signal, no work is started (and\nthus no events are generated) until an observer is attached, and the work is\nrestarted anew for each additional observer.\n\nStarting a signal producer returns a [disposable](#disposables) that can be used to\ninterrupt/cancel the work associated with the produced signal.\n\nJust like signals, signal producers can also be manipulated via primitives\nlike `map`, `filter`, etc.\nEvery signal primitive can be “lifted” to operate upon signal producers instead,\nusing the `lift` method.\nFurthermore, there are additional primitives that control _when_ and _how_ work\nis started—for example, `times`.\n\n### Buffers\n\nA **buffer**, created by `SignalProducer.buffer()`, is a (optionally bounded)\nqueue for [events](#events) that replays those events when new\n[signals](#signals) are created from the producer.\n\nSimilar to a [pipe](#pipes), the method returns an [observer](#observers).\nEvents sent to this observer will be added to the queue. If the buffer is already\nat capacity when a new value arrives, the earliest (oldest) value will be\ndropped to make room for it.\n\n## Observers\n\nAn **observer** is anything that is waiting or capable of waiting for [events](#events)\nfrom a [signal](#signals). Within RAC, an observer is represented as\nan [`Observer`][Observer] that accepts [`Event`][Event] values.\n\nObservers can be implicitly created by using the callback-based versions of the\n`Signal.observe` or `SignalProducer.start` methods.\n\n## Actions\n\nAn **action**, represented by the [`Action`][Action] type, will do some work when\nexecuted with an input. While executing, zero or more output values and/or a\nfailure may be generated.\n\nActions are useful for performing side-effecting work upon user interaction, like when a button is\nclicked. Actions can also be automatically disabled based on a [property](#properties), and this\ndisabled state can be represented in a UI by disabling any controls associated\nwith the action.\n\nFor interaction with `NSControl` or `UIControl`, RAC provides the\n[`CocoaAction`][CocoaAction] type for bridging actions to Objective-C.\n\n## Properties\n\nA **property**, represented by the [`PropertyType`][Property] protocol,\nstores a value and notifies observers about future changes to that value.\n\nThe current value of a property can be obtained from the `value` getter. The\n`producer` getter returns a [signal producer](#signal-producers) that will send\nthe property’s current value, followed by all changes over time.\n\nThe `<~` operator can be used to bind properties in different ways. Note that in\nall cases, the target has to be a [`MutablePropertyType`][Property].\n\n* `property <~ signal` binds a [signal](#signals) to the property, updating the\n  property’s value to the latest value sent by the signal.\n* `property <~ producer` starts the given [signal producer](#signal-producers),\n  and binds the property’s value to the latest value sent on the started signal.\n* `property <~ otherProperty` binds one property to another, so that the destination\n  property’s value is updated whenever the source property is updated.\n\nThe [`DynamicProperty`][Property] type can be used to bridge to Objective-C APIs\nthat require Key-Value Coding (KVC) or Key-Value Observing (KVO), like\n`NSOperation`. Note that most AppKit and UIKit properties do _not_ support KVO,\nso their changes should be observed through other mechanisms.\n[`MutableProperty`][Property] should be preferred over dynamic properties\nwhenever possible!\n\n## Disposables\n\nA **disposable**, represented by the [`Disposable`][Disposable] protocol, is a mechanism\nfor memory management and cancellation.\n\nWhen starting a [signal producer](#signal-producers), a disposable will be returned.\nThis disposable can be used by the caller to cancel the work that has been started\n(e.g. background processing, network requests, etc.), clean up all temporary\nresources, then send a final `Interrupted` event upon the particular\n[signal](#signals) that was created.\n\nObserving a [signal](#signals) may also return a disposable. Disposing it will\nprevent the observer from receiving any future events from that signal, but it\nwill not have any effect on the signal itself.\n\nFor more information about cancellation, see the RAC [Design Guidelines][].\n\n## Schedulers\n\nA **scheduler**, represented by the [`SchedulerType`][Scheduler] protocol, is a\nserial execution queue to perform work or deliver results upon.\n\n[Signals](#signals) and [signal producers](#signal-producers) can be ordered to\ndeliver events on a specific scheduler. [Signal producers](#signal-producers)\ncan additionally be ordered to start their work on a specific scheduler.\n\nSchedulers are similar to Grand Central Dispatch queues, but schedulers support\ncancellation (via [disposables](#disposables)), and always execute serially.\nWith the exception of the [`ImmediateScheduler`][Scheduler], schedulers do not\noffer synchronous execution. This helps avoid deadlocks, and encourages the use\nof [signal and signal producer primitives][BasicOperators] instead of blocking work.\n\nSchedulers are also somewhat similar to `NSOperationQueue`, but schedulers\ndo not allow tasks to be reordered or depend on one another.\n\n\n[Design Guidelines]: DesignGuidelines.md\n[BasicOperators]: BasicOperators.md\n[README]: ../README.md\n[Signal]: ../ReactiveCocoa/Swift/Signal.swift\n[SignalProducer]: ../ReactiveCocoa/Swift/SignalProducer.swift\n[Action]: ../ReactiveCocoa/Swift/Action.swift\n[CocoaAction]: ../ReactiveCocoa/Swift/CocoaAction.swift\n[Disposable]: ../ReactiveCocoa/Swift/Disposable.swift\n[Scheduler]: ../ReactiveCocoa/Swift/Scheduler.swift\n[Property]: ../ReactiveCocoa/Swift/Property.swift\n[Event]: ../ReactiveCocoa/Swift/Event.swift\n[Observer]: ../ReactiveCocoa/Swift/Observer.swift\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/Legacy/BasicOperators.md",
    "content": "# Basic Operators\n\nThis document explains some of the most common operators used in ReactiveCocoa,\nand includes examples demonstrating their use.\n\nOperators that apply to [sequences][Sequences] _and_ [signals][Signals] are\nknown as [stream][Streams] operators.\n\n**[Performing side effects with signals](#performing-side-effects-with-signals)**\n\n 1. [Subscription](#subscription)\n 1. [Injecting effects](#injecting-effects)\n\n**[Transforming streams](#transforming-streams)**\n\n 1. [Mapping](#mapping)\n 1. [Filtering](#filtering)\n\n**[Combining streams](#combining-streams)**\n\n 1. [Concatenating](#concatenating)\n 1. [Flattening](#flattening)\n 1. [Mapping and flattening](#mapping-and-flattening)\n\n**[Combining signals](#combining-signals)**\n\n 1. [Sequencing](#sequencing)\n 1. [Merging](#merging)\n 1. [Combining latest values](#combining-latest-values)\n 1. [Switching](#switching)\n\n## Performing side effects with signals\n\nMost signals start out \"cold,\" which means that they will not do any work until\n[subscription](#subscription).\n\nUpon subscription, a signal or its [subscribers][Subscription] can perform _side\neffects_, like logging to the console, making a network request, updating the\nuser interface, etc.\n\nSide effects can also be [injected](#injecting-effects) into a signal, where\nthey won't be performed immediately, but will instead take effect with each\nsubscription later.\n\n### Subscription\n\nThe [-subscribe…][RACSignal] methods give you access to the current and future values in a signal:\n\n```objc\nRACSignal *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence.signal;\n\n// Outputs: A B C D E F G H I\n[letters subscribeNext:^(NSString *x) {\n    NSLog(@\"%@\", x);\n}];\n```\n\nFor a cold signal, side effects will be performed once _per subscription_:\n\n```objc\n__block unsigned subscriptions = 0;\n\nRACSignal *loggingSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n    subscriptions++;\n    [subscriber sendCompleted];\n    return nil;\n}];\n\n// Outputs:\n// subscription 1\n[loggingSignal subscribeCompleted:^{\n    NSLog(@\"subscription %u\", subscriptions);\n}];\n\n// Outputs:\n// subscription 2\n[loggingSignal subscribeCompleted:^{\n    NSLog(@\"subscription %u\", subscriptions);\n}];\n```\n\nThis behavior can be changed using a [connection][Connections].\n\n### Injecting effects\n\nThe [-do…][RACSignal+Operations] methods add side effects to a signal without actually\nsubscribing to it:\n\n```objc\n__block unsigned subscriptions = 0;\n\nRACSignal *loggingSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n    subscriptions++;\n    [subscriber sendCompleted];\n    return nil;\n}];\n\n// Does not output anything yet\nloggingSignal = [loggingSignal doCompleted:^{\n    NSLog(@\"about to complete subscription %u\", subscriptions);\n}];\n\n// Outputs:\n// about to complete subscription 1\n// subscription 1\n[loggingSignal subscribeCompleted:^{\n    NSLog(@\"subscription %u\", subscriptions);\n}];\n```\n\n## Transforming streams\n\nThese operators transform a single stream into a new stream.\n\n### Mapping\n\nThe [-map:][RACStream] method is used to transform the values in a stream, and\ncreate a new stream with the results:\n\n```objc\nRACSequence *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence;\n\n// Contains: AA BB CC DD EE FF GG HH II\nRACSequence *mapped = [letters map:^(NSString *value) {\n    return [value stringByAppendingString:value];\n}];\n```\n\n### Filtering\n\nThe [-filter:][RACStream] method uses a block to test each value, including it\ninto the resulting stream only if the test passes:\n\n```objc\nRACSequence *numbers = [@\"1 2 3 4 5 6 7 8 9\" componentsSeparatedByString:@\" \"].rac_sequence;\n\n// Contains: 2 4 6 8\nRACSequence *filtered = [numbers filter:^ BOOL (NSString *value) {\n    return (value.intValue % 2) == 0;\n}];\n```\n\n## Combining streams\n\nThese operators combine multiple streams into a single new stream.\n\n### Concatenating\n\nThe [-concat:][RACStream] method appends one stream's values to another:\n\n```objc\nRACSequence *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence;\nRACSequence *numbers = [@\"1 2 3 4 5 6 7 8 9\" componentsSeparatedByString:@\" \"].rac_sequence;\n\n// Contains: A B C D E F G H I 1 2 3 4 5 6 7 8 9\nRACSequence *concatenated = [letters concat:numbers];\n```\n\n### Flattening\n\nThe [-flatten][RACStream] operator is applied to a stream-of-streams, and\ncombines their values into a single new stream.\n\nSequences are [concatenated](#concatenating):\n\n```objc\nRACSequence *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence;\nRACSequence *numbers = [@\"1 2 3 4 5 6 7 8 9\" componentsSeparatedByString:@\" \"].rac_sequence;\nRACSequence *sequenceOfSequences = @[ letters, numbers ].rac_sequence;\n\n// Contains: A B C D E F G H I 1 2 3 4 5 6 7 8 9\nRACSequence *flattened = [sequenceOfSequences flatten];\n```\n\nSignals are [merged](#merging):\n\n```objc\nRACSubject *letters = [RACSubject subject];\nRACSubject *numbers = [RACSubject subject];\nRACSignal *signalOfSignals = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n    [subscriber sendNext:letters];\n    [subscriber sendNext:numbers];\n    [subscriber sendCompleted];\n    return nil;\n}];\n\nRACSignal *flattened = [signalOfSignals flatten];\n\n// Outputs: A 1 B C 2\n[flattened subscribeNext:^(NSString *x) {\n    NSLog(@\"%@\", x);\n}];\n\n[letters sendNext:@\"A\"];\n[numbers sendNext:@\"1\"];\n[letters sendNext:@\"B\"];\n[letters sendNext:@\"C\"];\n[numbers sendNext:@\"2\"];\n```\n\n### Mapping and flattening\n\n[Flattening](#flattening) isn't that interesting on its own, but understanding\nhow it works is important for [-flattenMap:][RACStream].\n\n`-flattenMap:` is used to transform each of a stream's values into _a new\nstream_. Then, all of the streams returned will be flattened down into a single\nstream. In other words, it's [-map:](#mapping) followed by [-flatten](#flattening).\n\nThis can be used to extend or edit sequences:\n\n```objc\nRACSequence *numbers = [@\"1 2 3 4 5 6 7 8 9\" componentsSeparatedByString:@\" \"].rac_sequence;\n\n// Contains: 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9\nRACSequence *extended = [numbers flattenMap:^(NSString *num) {\n    return @[ num, num ].rac_sequence;\n}];\n\n// Contains: 1_ 3_ 5_ 7_ 9_\nRACSequence *edited = [numbers flattenMap:^(NSString *num) {\n    if (num.intValue % 2 == 0) {\n        return [RACSequence empty];\n    } else {\n        NSString *newNum = [num stringByAppendingString:@\"_\"];\n        return [RACSequence return:newNum]; \n    }\n}];\n```\n\nOr create multiple signals of work which are automatically recombined:\n\n```objc\nRACSignal *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence.signal;\n\n[[letters\n    flattenMap:^(NSString *letter) {\n        return [database saveEntriesForLetter:letter];\n    }]\n    subscribeCompleted:^{\n        NSLog(@\"All database entries saved successfully.\");\n    }];\n```\n\n## Combining signals\n\nThese operators combine multiple signals into a single new [RACSignal][].\n\n### Sequencing\n\n[-then:][RACSignal+Operations] starts the original signal,\nwaits for it to complete, and then only forwards the values from a new signal:\n\n```objc\nRACSignal *letters = [@\"A B C D E F G H I\" componentsSeparatedByString:@\" \"].rac_sequence.signal;\n\n// The new signal only contains: 1 2 3 4 5 6 7 8 9\n//\n// But when subscribed to, it also outputs: A B C D E F G H I\nRACSignal *sequenced = [[letters\n    doNext:^(NSString *letter) {\n        NSLog(@\"%@\", letter);\n    }]\n    then:^{\n        return [@\"1 2 3 4 5 6 7 8 9\" componentsSeparatedByString:@\" \"].rac_sequence.signal;\n    }];\n```\n\nThis is most useful for executing all the side effects of one signal, then\nstarting another, and only returning the second signal's values.\n\n### Merging\n\nThe [+merge:][RACSignal+Operations] method will forward the values from many\nsignals into a single stream, as soon as those values arrive:\n\n```objc\nRACSubject *letters = [RACSubject subject];\nRACSubject *numbers = [RACSubject subject];\nRACSignal *merged = [RACSignal merge:@[ letters, numbers ]];\n\n// Outputs: A 1 B C 2\n[merged subscribeNext:^(NSString *x) {\n    NSLog(@\"%@\", x);\n}];\n\n[letters sendNext:@\"A\"];\n[numbers sendNext:@\"1\"];\n[letters sendNext:@\"B\"];\n[letters sendNext:@\"C\"];\n[numbers sendNext:@\"2\"];\n```\n\n### Combining latest values\n\nThe [+combineLatest:][RACSignal+Operations] and `+combineLatest:reduce:` methods\nwill watch multiple signals for changes, and then send the latest values from\n_all_ of them when a change occurs:\n\n```objc\nRACSubject *letters = [RACSubject subject];\nRACSubject *numbers = [RACSubject subject];\nRACSignal *combined = [RACSignal\n    combineLatest:@[ letters, numbers ]\n    reduce:^(NSString *letter, NSString *number) {\n        return [letter stringByAppendingString:number];\n    }];\n\n// Outputs: B1 B2 C2 C3\n[combined subscribeNext:^(id x) {\n    NSLog(@\"%@\", x);\n}];\n\n[letters sendNext:@\"A\"];\n[letters sendNext:@\"B\"];\n[numbers sendNext:@\"1\"];\n[numbers sendNext:@\"2\"];\n[letters sendNext:@\"C\"];\n[numbers sendNext:@\"3\"];\n```\n\nNote that the combined signal will only send its first value when all of the\ninputs have sent at least one. In the example above, `@\"A\"` was never\nforwarded because `numbers` had not sent a value yet.\n\n### Switching\n\nThe [-switchToLatest][RACSignal+Operations] operator is applied to\na signal-of-signals, and always forwards the values from the latest signal:\n\n```objc\nRACSubject *letters = [RACSubject subject];\nRACSubject *numbers = [RACSubject subject];\nRACSubject *signalOfSignals = [RACSubject subject];\n\nRACSignal *switched = [signalOfSignals switchToLatest];\n\n// Outputs: A B 1 D\n[switched subscribeNext:^(NSString *x) {\n    NSLog(@\"%@\", x);\n}];\n\n[signalOfSignals sendNext:letters];\n[letters sendNext:@\"A\"];\n[letters sendNext:@\"B\"];\n\n[signalOfSignals sendNext:numbers];\n[letters sendNext:@\"C\"];\n[numbers sendNext:@\"1\"];\n\n[signalOfSignals sendNext:letters];\n[numbers sendNext:@\"2\"];\n[letters sendNext:@\"D\"];\n```\n\n[Connections]: FrameworkOverview.md#connections\n[RACSequence]: ../../ReactiveCocoa/Objective-C/RACSequence.h\n[RACSignal]: ../../ReactiveCocoa/Objective-C/RACSignal.h\n[RACSignal+Operations]: ../../ReactiveCocoa/Objective-C/RACSignal+Operations.h\n[RACStream]: ../../ReactiveCocoa/Objective-C/RACStream.h\n[Sequences]: FrameworkOverview.md#sequences\n[Signals]: FrameworkOverview.md#signals\n[Streams]: FrameworkOverview.md#streams\n[Subscription]: FrameworkOverview.md#subscription\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/Legacy/DesignGuidelines.md",
    "content": "# Design Guidelines\n\nThis document contains guidelines for projects that want to make use of\nReactiveCocoa. The content here is heavily inspired by the [Rx Design\nGuidelines](http://blogs.msdn.com/b/rxteam/archive/2010/10/28/rx-design-guidelines.aspx).\n\nThis document assumes basic familiarity\nwith the features of ReactiveCocoa. The [Framework Overview][] is a better\nresource for getting up to speed on the functionality provided by RAC.\n\n**[The RACSequence contract](#the-racsequence-contract)**\n\n 1. [Evaluation occurs lazily by default](#evaluation-occurs-lazily-by-default)\n 1. [Evaluation blocks the caller](#evaluation-blocks-the-caller)\n 1. [Side effects occur only once](#side-effects-occur-only-once)\n\n**[The RACSignal contract](#the-racsignal-contract)**\n\n 1. [Signal events are serialized](#signal-events-are-serialized)\n 1. [Subscription will always occur on a scheduler](#subscription-will-always-occur-on-a-scheduler)\n 1. [Errors are propagated immediately](#errors-are-propagated-immediately)\n 1. [Side effects occur for each subscription](#side-effects-occur-for-each-subscription)\n 1. [Subscriptions are automatically disposed upon completion or error](#subscriptions-are-automatically-disposed-upon-completion-or-error)\n 1. [Disposal cancels in-progress work and cleans up resources](#disposal-cancels-in-progress-work-and-cleans-up-resources)\n\n**[Best practices](#best-practices)**\n\n 1. [Use descriptive declarations for methods and properties that return a signal](#use-descriptive-declarations-for-methods-and-properties-that-return-a-signal)\n 1. [Indent stream operations consistently](#indent-stream-operations-consistently)\n 1. [Use the same type for all the values of a stream](#use-the-same-type-for-all-the-values-of-a-stream)\n 1. [Avoid retaining streams for too long](#avoid-retaining-streams-for-too-long)\n 1. [Process only as much of a stream as needed](#process-only-as-much-of-a-stream-as-needed)\n 1. [Deliver signal events onto a known scheduler](#deliver-signal-events-onto-a-known-scheduler)\n 1. [Switch schedulers in as few places as possible](#switch-schedulers-in-as-few-places-as-possible)\n 1. [Make the side effects of a signal explicit](#make-the-side-effects-of-a-signal-explicit)\n 1. [Share the side effects of a signal by multicasting](#share-the-side-effects-of-a-signal-by-multicasting)\n 1. [Debug streams by giving them names](#debug-streams-by-giving-them-names)\n 1. [Avoid explicit subscriptions and disposal](#avoid-explicit-subscriptions-and-disposal)\n 1. [Avoid using subjects when possible](#avoid-using-subjects-when-possible)\n\n**[Implementing new operators](#implementing-new-operators)**\n\n 1. [Prefer building on RACStream methods](#prefer-building-on-racstream-methods)\n 1. [Compose existing operators when possible](#compose-existing-operators-when-possible)\n 1. [Avoid introducing concurrency](#avoid-introducing-concurrency)\n 1. [Cancel work and clean up all resources in a disposable](#cancel-work-and-clean-up-all-resources-in-a-disposable)\n 1. [Do not block in an operator](#do-not-block-in-an-operator)\n 1. [Avoid stack overflow from deep recursion](#avoid-stack-overflow-from-deep-recursion)\n\n## The RACSequence contract\n\n[RACSequence][] is a _pull-driven_ stream. Sequences behave similarly to\nbuilt-in collections, but with a few unique twists.\n\n### Evaluation occurs lazily by default\n\nSequences are evaluated lazily by default. For example, in this sequence:\n\n```objc\nNSArray *strings = @[ @\"A\", @\"B\", @\"C\" ];\nRACSequence *sequence = [strings.rac_sequence map:^(NSString *str) {\n    return [str stringByAppendingString:@\"_\"];\n}];\n```\n\n… no string appending is actually performed until the values of the sequence are\nneeded. Accessing `sequence.head` will perform the concatenation of `A_`,\naccessing `sequence.tail.head` will perform the concatenation of `B_`, and so\non.\n\nThis generally avoids performing unnecessary work (since values that are never\nused are never calculated), but means that sequence processing [should be\nlimited only to what's actually\nneeded](#process-only-as-much-of-a-stream-as-needed).\n\nOnce evaluated, the values in a sequence are memoized and do not need to be\nrecalculated. Accessing `sequence.head` multiple times will only do the work of\none string concatenation.\n\nIf lazy evaluation is undesirable – for instance, because limiting memory usage\nis more important than avoiding unnecessary work – the\n[eagerSequence][RACSequence] property can be used to force a sequence (and any\nsequences derived from it afterward) to evaluate eagerly.\n\n### Evaluation blocks the caller\n\nRegardless of whether a sequence is lazy or eager, evaluation of any part of\na sequence will block the calling thread until completed. This is necessary\nbecause values must be synchronously retrieved from a sequence.\n\nIf evaluating a sequence is expensive enough that it might block the thread for\na significant amount of time, consider creating a signal with\n[-signalWithScheduler:][RACSequence] and using that instead.\n\n### Side effects occur only once\n\nWhen the block passed to a sequence operator involves side effects, it is\nimportant to realize that those side effects will only occur once per value\n– namely, when the value is evaluated:\n\n```objc\nNSArray *strings = @[ @\"A\", @\"B\", @\"C\" ];\nRACSequence *sequence = [strings.rac_sequence map:^(NSString *str) {\n    NSLog(@\"%@\", str);\n    return [str stringByAppendingString:@\"_\"];\n}];\n\n// Logs \"A\" during this call.\nNSString *concatA = sequence.head;\n\n// Logs \"B\" during this call.\nNSString *concatB = sequence.tail.head;\n\n// Does not log anything.\nNSString *concatB2 = sequence.tail.head;\n\nRACSequence *derivedSequence = [sequence map:^(NSString *str) {\n    return [@\"_\" stringByAppendingString:str];\n}];\n\n// Still does not log anything, because \"B_\" was already evaluated, and the log\n// statement associated with it will never be re-executed.\nNSString *concatB3 = derivedSequence.tail.head;\n```\n\n## The RACSignal contract\n\n[RACSignal][] is a _push-driven_ stream with a focus on asynchronous event\ndelivery through _subscriptions_. For more information about signals and\nsubscriptions, see the [Framework Overview][].\n\n### Signal events are serialized\n\nA signal may choose to deliver its events on any thread. Consecutive events are\neven allowed to arrive on different threads or schedulers, unless explicitly\n[delivered onto a particular\nscheduler](#deliver-signal-events-onto-a-known-scheduler).\n\nHowever, RAC guarantees that no two signal events will ever arrive concurrently.\nWhile an event is being processed, no other events will be delivered. The\nsenders of any other events will be forced to wait until the current event has\nbeen handled.\n\nMost notably, this means that the blocks passed to\n[-subscribeNext:error:completed:][RACSignal] do not need to be synchronized with\nrespect to each other, because they will never be invoked simultaneously.\n\n### Subscription will always occur on a scheduler\n\nTo ensure consistent behavior for the `+createSignal:` and `-subscribe:`\nmethods, each [RACSignal][] subscription is guaranteed to take place on\na valid [RACScheduler][].\n\nIf the subscriber's thread already has a [+currentScheduler][RACScheduler],\nscheduling takes place immediately; otherwise, scheduling occurs as soon as\npossible on a background scheduler. Note that the main thread is always\nassociated with the [+mainThreadScheduler][RACScheduler], so subscription will\nalways be immediate there.\n\nSee the documentation for [-subscribe:][RACSignal] for more information.\n\n### Errors are propagated immediately\n\nIn RAC, `error` events have exception semantics. When an error is sent on\na signal, it will be immediately forwarded to all dependent signals, causing the\nentire chain to terminate.\n\n[Operators][RACSignal+Operations] whose primary purpose is to change\nerror-handling behavior – like `-catch:`, `-catchTo:`, or `-materialize` – are\nobviously not subject to this rule.\n\n### Side effects occur for each subscription\n\nEach new subscription to a [RACSignal][] will trigger its side effects. This\nmeans that any side effects will happen as many times as subscriptions to the\nsignal itself.\n\nConsider this example:\n```objc\n__block int aNumber = 0;\n\n// Signal that will have the side effect of incrementing `aNumber` block \n// variable for each subscription before sending it.\nRACSignal *aSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\taNumber++;\n\t[subscriber sendNext:@(aNumber)];\n\t[subscriber sendCompleted];\n\treturn nil;\n}];\n\n// This will print \"subscriber one: 1\"\n[aSignal subscribeNext:^(id x) {\n\tNSLog(@\"subscriber one: %@\", x);\n}];\n\n// This will print \"subscriber two: 2\"\n[aSignal subscribeNext:^(id x) {\n\tNSLog(@\"subscriber two: %@\", x);\n}];\n```\n\nSide effects are repeated for each subscription. The same applies to\n[stream][RACStream] and [signal][RACSignal+Operations] operators:\n\n```objc\n__block int missilesToLaunch = 0;\n\n// Signal that will have the side effect of changing `missilesToLaunch` on\n// subscription.\nRACSignal *processedSignal = [[RACSignal\n    return:@\"missiles\"]\n\tmap:^(id x) {\n\t\tmissilesToLaunch++;\n\t\treturn [NSString stringWithFormat:@\"will launch %d %@\", missilesToLaunch, x];\n\t}];\n\n// This will print \"First will launch 1 missiles\"\n[processedSignal subscribeNext:^(id x) {\n\tNSLog(@\"First %@\", x);\n}];\n\n// This will print \"Second will launch 2 missiles\"\n[processedSignal subscribeNext:^(id x) {\n\tNSLog(@\"Second %@\", x);\n}];\n```\n\nTo suppress this behavior and have multiple subscriptions to a signal execute\nits side effects only once, a signal can be \n[multicasted](#share-the-side-effects-of-a-signal-by-multicasting).\n\nSide effects can be insidious and produce problems that are difficult to\ndiagnose. For this reason it is suggested to \n[make side effects explicit](#make-the-side-effects-of-a-signal-explicit) when \npossible.\n\n### Subscriptions are automatically disposed upon completion or error\n\nWhen a [subscriber][RACSubscriber] is sent a `completed` or `error` event, the\nassociated subscription will automatically be disposed. This behavior usually\neliminates the need to manually dispose of subscriptions.\n\nSee the [Memory Management][] document for more information about signal\nlifetime.\n\n### Disposal cancels in-progress work and cleans up resources\n\nWhen a subscription is disposed, manually or automatically, any in-progress or\noutstanding work associated with that subscription is gracefully cancelled as\nsoon as possible, and any resources associated with the subscription are cleaned\nup.\n\nDisposing of the subscription to a signal representing a file upload, for\nexample, would cancel any in-flight network request, and free the file data from\nmemory.\n\n## Best practices\n\nThe following recommendations are intended to help keep RAC-based code\npredictable, understandable, and performant.\n\nThey are, however, only guidelines. Use best judgement when determining whether\nto apply the recommendations here to a given piece of code.\n\n### Use descriptive declarations for methods and properties that return a signal\n\nWhen a method or property has a return type of [RACSignal][], it can be\ndifficult to understand the signal's semantics at a glance.\n\nThere are three key questions that can inform a declaration:\n\n 1. Is the signal _hot_ (already activated by the time it's returned to the\n    caller) or _cold_ (activated when subscribed to)?\n 1. Will the signal include zero, one, or more values?\n 1. Does the signal have side effects?\n\n**Hot signals without side effects** should typically be properties instead of\nmethods. The use of a property indicates that no initialization is needed before\nsubscribing to the signal's events, and that additional subscribers will not\nchange the semantics. Signal properties should usually be named after events\n(e.g., `textChanged`).\n\n**Cold signals without side effects** should be returned from methods that have\nnoun-like names (e.g., `-currentText`). A method declaration indicates that the\nsignal might not be kept around, hinting that work is performed at the time of\nsubscription. If the signal sends multiple values, the noun should be pluralized\n(e.g., `-currentModels`).\n\n**Signals with side effects** should be returned from methods that have\nverb-like names (e.g., `-logIn`). The verb indicates that the method is not\nidempotent and that callers must be careful to call it only when the side\neffects are desired. If the signal will send one or more values, include a noun\nthat describes them (e.g., `-loadConfiguration`, `-fetchLatestEvents`).\n\n### Indent stream operations consistently\n\nIt's easy for stream-heavy code to become very dense and confusing if not\nproperly formatted. Use consistent indentation to highlight where chains of\nstreams begin and end.\n\nWhen invoking a single method upon a stream, no additional indentation is\nnecessary (block arguments aside):\n\n```objc\nRACStream *result = [stream startWith:@0];\n\nRACStream *result2 = [stream map:^(NSNumber *value) {\n    return @(value.integerValue + 1);\n}];\n```\n\nWhen transforming the same stream multiple times, ensure that all of the\nsteps are aligned. Complex operators like [+zip:reduce:][RACStream] or\n[+combineLatest:reduce:][RACSignal+Operations] may be split over multiple lines\nfor readability:\n\n```objc\nRACStream *result = [[[RACStream\n    zip:@[ firstStream, secondStream ]\n    reduce:^(NSNumber *first, NSNumber *second) {\n        return @(first.integerValue + second.integerValue);\n    }]\n    filter:^ BOOL (NSNumber *value) {\n        return value.integerValue >= 0;\n    }]\n    map:^(NSNumber *value) {\n        return @(value.integerValue + 1);\n    }];\n```\n\nOf course, streams nested within block arguments should start at the natural\nindentation of the block:\n\n```objc\n[[signal\n    then:^{\n        @strongify(self);\n\n        return [[self\n            doSomethingElse]\n            catch:^(NSError *error) {\n                @strongify(self);\n                [self presentError:error];\n\n                return [RACSignal empty];\n            }];\n    }]\n    subscribeCompleted:^{\n        NSLog(@\"All done.\");\n    }];\n```\n\n### Use the same type for all the values of a stream\n\n[RACStream][] (and, by extension, [RACSignal][] and [RACSequence][]) allows\nstreams to be composed of heterogenous objects, just like Cocoa collections do.\nHowever, using different object types within the same stream complicates the use\nof operators and\nputs an additional burden on any consumers of that stream, who must be careful to\nonly invoke supported methods.\n\nWhenever possible, streams should only contain objects of the same type.\n\n### Avoid retaining streams for too long\n\nRetaining any [RACStream][] longer than it's needed will cause any dependencies\nto be retained as well, potentially keeping memory usage much higher than it\nwould be otherwise.\n\nA [RACSequence][] should be retained only for as long as the `head` of the\nsequence is needed. If the head will no longer be used, retain the `tail` of the\nnode instead of the node itself.\n\nSee the [Memory Management][] guide for more information on object lifetime.\n\n### Process only as much of a stream as needed\n\nAs well as [consuming additional\nmemory](#avoid-retaining-streams-for-too-long), unnecessarily\nkeeping a stream or [RACSignal][] subscription alive can result in increased CPU\nusage, as unnecessary work is performed for results that will never be used.\n\nIf only a certain number of values are needed from a stream, the\n[-take:][RACStream] operator can be used to retrieve only that many values, and\nthen automatically terminate the stream immediately thereafter.\n\nOperators like `-take:` and [-takeUntil:][RACSignal+Operations] automatically propagate cancellation\nup the stack as well. If nothing else needs the rest of the values, any\ndependencies will be terminated too, potentially saving a significant amount of\nwork.\n\n### Deliver signal events onto a known scheduler\n\nWhen a signal is returned from a method, or combined with such a signal, it can\nbe difficult to know which thread events will be delivered upon. Although\nevents are [guaranteed to be serial](#signal-events-are-serialized), sometimes\nstronger guarantees are needed, like when performing UI updates (which must\noccur on the main thread).\n\nWhenever such a guarantee is important, the [-deliverOn:][RACSignal+Operations]\noperator should be used to force a signal's events to arrive on a specific\n[RACScheduler][].\n\n### Switch schedulers in as few places as possible\n\nNotwithstanding the above, events should only be delivered to a specific\n[scheduler][RACScheduler] when absolutely necessary. Switching schedulers can\nintroduce unnecessary delays and cause an increase in CPU load.\n\nGenerally, the use of [-deliverOn:][RACSignal+Operations] should be restricted\nto the end of a signal chain – e.g., before subscription, or before the values\nare bound to a property.\n\n### Make the side effects of a signal explicit\n\nAs much as possible, [RACSignal][] side effects should be avoided, because\nsubscribers may find the [behavior of side\neffects](#side-effects-occur-for-each-subscription) unexpected.\n\nHowever, because Cocoa is predominantly imperative, it is sometimes useful to\nperform side effects when signal events occur. Although most [RACStream][] and\n[RACSignal][RACSignal+Operations] operators accept arbitrary blocks (which can\ncontain side effects), the use of `-doNext:`, `-doError:`, and `-doCompleted:`\nwill make side effects more explicit and self-documenting:\n\n```objc\nNSMutableArray *nexts = [NSMutableArray array];\n__block NSError *receivedError = nil;\n__block BOOL success = NO;\n\nRACSignal *bookkeepingSignal = [[[valueSignal\n    doNext:^(id x) {\n        [nexts addObject:x];\n    }]\n    doError:^(NSError *error) {\n        receivedError = error;\n    }]\n    doCompleted:^{\n        success = YES;\n    }];\n\nRAC(self, value) = bookkeepingSignal;\n```\n\n### Share the side effects of a signal by multicasting\n\n[Side effects occur for each\nsubscription](#side-effects-occur-for-each-subscription) by default, but there\nare certain situations where side effects should only occur once – for example,\na network request typically should not be repeated when a new subscriber is\nadded.\n\nThe `-publish` and `-multicast:` operators of [RACSignal][RACSignal+Operations]\nallow a single subscription to be shared to any number of subscribers by using\na [RACMulticastConnection][]:\n\n```objc\n// This signal starts a new request on each subscription.\nRACSignal *networkRequest = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n    AFHTTPRequestOperation *operation = [client\n        HTTPRequestOperationWithRequest:request\n        success:^(AFHTTPRequestOperation *operation, id response) {\n            [subscriber sendNext:response];\n            [subscriber sendCompleted];\n        }\n        failure:^(AFHTTPRequestOperation *operation, NSError *error) {\n            [subscriber sendError:error];\n        }];\n\n    [client enqueueHTTPRequestOperation:operation];\n    return [RACDisposable disposableWithBlock:^{\n        [operation cancel];\n    }];\n}];\n\n// Starts a single request, no matter how many subscriptions `connection.signal`\n// gets. This is equivalent to the -replay operator, or similar to\n// +startEagerlyWithScheduler:block:.\nRACMulticastConnection *connection = [networkRequest multicast:[RACReplaySubject subject]];\n[connection connect];\n\n[connection.signal subscribeNext:^(id response) {\n    NSLog(@\"subscriber one: %@\", response);\n}];\n\n[connection.signal subscribeNext:^(id response) {\n    NSLog(@\"subscriber two: %@\", response);\n}];\n```\n\n### Debug streams by giving them names\n\nEvery [RACStream][] has a `name` property to assist with debugging. A stream's\n`-description` includes its name, and all operators provided by RAC will\nautomatically add to the name. This usually makes it possible to identify\na stream from its default name alone.\n\nFor example, this snippet:\n\n```objc\nRACSignal *signal = [[[RACObserve(self, username) \n    distinctUntilChanged] \n    take:3] \n    filter:^(NSString *newUsername) {\n        return [newUsername isEqualToString:@\"joshaber\"];\n    }];\n\nNSLog(@\"%@\", signal);\n```\n\n… would log a name similar to `[[[RACObserve(self, username)] -distinctUntilChanged]\n-take: 3] -filter:`.\n\nNames can also be manually applied by using [-setNameWithFormat:][RACStream].\n\n[RACSignal][] also offers `-logNext`, `-logError`,\n`-logCompleted`, and `-logAll` methods, which will automatically log signal\nevents as they occur, and include the name of the signal in the messages. This\ncan be used to conveniently inspect a signal in real-time.\n\n### Avoid explicit subscriptions and disposal\n\nAlthough [-subscribeNext:error:completed:][RACSignal] and its variants are the\nmost basic way to process a signal, their use can complicate code by\nbeing less declarative, encouraging the use of side effects, and potentially\nduplicating built-in functionality.\n\nLikewise, explicit use of the [RACDisposable][] class can quickly lead to\na rat's nest of resource management and cleanup code.\n\nThere are almost always higher-level patterns that can be used instead of manual\nsubscriptions and disposal:\n\n * The [RAC()][RAC] or [RACChannelTo()][RACChannelTo] macros can be used to bind\n   a signal to a property, instead of performing manual updates when changes\n   occur.\n * The [-rac_liftSelector:withSignals:][NSObject+RACLifting] method can be used\n   to automatically invoke a selector when one or more signals fire.\n * Operators like [-takeUntil:][RACSignal+Operations] can be used to\n   automatically dispose of a subscription when an event occurs (like a \"Cancel\"\n   button being pressed in the UI).\n\nGenerally, the use of built-in [stream][RACStream] and\n[signal][RACSignal+Operations] operators will lead to simpler and less\nerror-prone code than replicating the same behaviors in a subscription callback.\n\n### Avoid using subjects when possible\n\n[Subjects][] are a powerful tool for bridging imperative code\ninto the world of signals, but, as the \"mutable variables\" of RAC, they can\nquickly lead to complexity when overused.\n\nSince they can be manipulated from anywhere, at any time, subjects often break\nthe linear flow of stream processing and make logic much harder to follow. They\nalso don't support meaningful\n[disposal](#disposal-cancels-in-progress-work-and-cleans-up-resources), which\ncan result in unnecessary work.\n\nSubjects can usually be replaced with other patterns from ReactiveCocoa:\n\n * Instead of feeding initial values into a subject, consider generating the\n   values in a [+createSignal:][RACSignal] block instead.\n * Instead of delivering intermediate results to a subject, try combining the\n   output of multiple signals with operators like\n   [+combineLatest:][RACSignal+Operations] or [+zip:][RACStream].\n * Instead of using subjects to share results with multiple subscribers,\n   [multicast](#share-the-side-effects-of-a-signal-by-multicasting) a base\n   signal instead.\n * Instead of implementing an action method which simply controls a subject, use\n   a [command][RACCommand] or\n   [-rac_signalForSelector:][NSObject+RACSelectorSignal] instead.\n\nWhen subjects _are_ necessary, they should almost always be the \"base\" input\nfor a signal chain, not used in the middle of one.\n\n## Implementing new operators\n\nRAC provides a long list of built-in operators for [streams][RACStream] and\n[signals][RACSignal+Operations] that should cover most use cases; however, RAC\nis not a closed system. It's entirely valid to implement additional operators\nfor specialized uses, or for consideration in ReactiveCocoa itself.\n\nImplementing a new operator requires a careful attention to detail and a focus\non simplicity, to avoid introducing bugs into the calling code.\n\nThese guidelines cover some of the common pitfalls and help preserve the\nexpected API contracts.\n\n### Prefer building on RACStream methods\n\n[RACStream][] offers a simpler interface than [RACSequence][] and [RACSignal][],\nand all stream operators are automatically applicable to sequences and signals\nas well.\n\nFor these reasons, new operators should be implemented using only [RACStream][]\nmethods whenever possible. The minimal required methods of the class, including\n`-bind:`, `-zipWith:`, and `-concat:`, are quite powerful, and many tasks can\nbe accomplished without needing anything else.\n\nIf a new [RACSignal][] operator needs to handle `error` and `completed` events,\nconsider using the [-materialize][RACSignal+Operations] method to bring the\nevents into the stream. All of the events of a materialized signal can be\nmanipulated by stream operators, which helps minimize the use of non-stream\noperators.\n\n### Compose existing operators when possible\n\nConsiderable thought has been put into the operators provided by RAC, and they\nhave been validated through automated tests and through their real world use in\nother projects. An operator that has been written from scratch may not be as\nrobust, or might not handle a special case that the built-in operators are aware\nof.\n\nTo minimize duplication and possible bugs, use the provided operators as much as\npossible in a custom operator implementation. Generally, there should be very\nlittle code written from scratch.\n\n### Avoid introducing concurrency\n\nConcurrency is an extremely common source of bugs in programming. To minimize\nthe potential for deadlocks and race conditions, operators should not\nconcurrently perform their work.\n\nCallers always have the ability to subscribe or deliver events on a specific\n[RACScheduler][], and RAC offers powerful ways to [parallelize\nwork][Parallelizing Independent Work] without making operators unnecessarily\ncomplex.\n\n### Cancel work and clean up all resources in a disposable\n\nWhen implementing a signal with the [+createSignal:][RACSignal] method, the\nprovided block is expected to return a [RACDisposable][]. This disposable\nshould:\n\n * As soon as it is convenient, gracefully cancel any in-progress work that was\n   started by the signal.\n * Immediately dispose of any subscriptions to other signals, thus triggering\n   their cancellation and cleanup code as well.\n * Release any memory or other resources that were allocated by the signal.\n\nThis helps fulfill [the RACSignal\ncontract](#disposal-cancels-in-progress-work-and-cleans-up-resources).\n\n### Do not block in an operator\n\nStream operators should return a new stream more-or-less immediately. Any work\nthat the operator needs to perform should be part of evaluating the new stream,\n_not_ part of the operator invocation itself.\n\n```objc\n// WRONG!\n- (RACSequence *)map:(id (^)(id))block {\n    RACSequence *result = [RACSequence empty];\n    for (id obj in self) {\n        id mappedObj = block(obj);\n        result = [result concat:[RACSequence return:mappedObj]];\n    }\n\n    return result;\n}\n\n// Right!\n- (RACSequence *)map:(id (^)(id))block {\n    return [self flattenMap:^(id obj) {\n        id mappedObj = block(obj);\n        return [RACSequence return:mappedObj];\n    }];\n}\n```\n\nThis guideline can be safely ignored when the purpose of an operator is to\nsynchronously retrieve one or more values from a stream (like\n[-first][RACSignal+Operations]).\n\n### Avoid stack overflow from deep recursion\n\nAny operator that might recurse indefinitely should use the\n`-scheduleRecursiveBlock:` method of [RACScheduler][]. This method will\ntransform recursion into iteration instead, preventing a stack overflow.\n\nFor example, this would be an incorrect implementation of\n[-repeat][RACSignal+Operations], due to its potential to overflow the call stack\nand cause a crash:\n\n```objc\n- (RACSignal *)repeat {\n    return [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n        RACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n        __block void (^resubscribe)(void) = ^{\n            RACDisposable *disposable = [self subscribeNext:^(id x) {\n                [subscriber sendNext:x];\n            } error:^(NSError *error) {\n                [subscriber sendError:error];\n            } completed:^{\n                resubscribe();\n            }];\n\n            [compoundDisposable addDisposable:disposable];\n        };\n\n        return compoundDisposable;\n    }];\n}\n```\n\nBy contrast, this version will avoid a stack overflow:\n\n```objc\n- (RACSignal *)repeat {\n    return [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n        RACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n        RACScheduler *scheduler = RACScheduler.currentScheduler ?: [RACScheduler scheduler];\n        RACDisposable *disposable = [scheduler scheduleRecursiveBlock:^(void (^reschedule)(void)) {\n            RACDisposable *disposable = [self subscribeNext:^(id x) {\n                [subscriber sendNext:x];\n            } error:^(NSError *error) {\n                [subscriber sendError:error];\n            } completed:^{\n                reschedule();\n            }];\n\n            [compoundDisposable addDisposable:disposable];\n        }];\n\n        [compoundDisposable addDisposable:disposable];\n        return compoundDisposable;\n    }];\n}\n```\n\n[Framework Overview]: FrameworkOverview.md\n[Memory Management]: MemoryManagement.md\n[NSObject+RACLifting]: ../../ReactiveCocoa/Objective-C/NSObject+RACLifting.h\n[NSObject+RACSelectorSignal]: ../../ReactiveCocoa/Objective-C/NSObject+RACSelectorSignal.h\n[RAC]: ../../ReactiveCocoa/Objective-C/RACSubscriptingAssignmentTrampoline.h\n[RACChannelTo]: ../../ReactiveCocoa/Objective-C/RACKVOChannel.h\n[RACCommand]: ../../ReactiveCocoa/Objective-C/RACCommand.h\n[RACDisposable]: ../../ReactiveCocoa/Objective-C/RACDisposable.h\n[RACEvent]: ../../ReactiveCocoa/Objective-C/RACEvent.h\n[RACMulticastConnection]: ../../ReactiveCocoa/Objective-C/RACMulticastConnection.h\n[RACObserve]: ../../ReactiveCocoa/Objective-C/NSObject+RACPropertySubscribing.h\n[RACScheduler]: ../../ReactiveCocoa/Objective-C/RACScheduler.h\n[RACSequence]: ../../ReactiveCocoa/Objective-C/RACSequence.h\n[RACSignal]: ../../ReactiveCocoa/Objective-C/RACSignal.h\n[RACSignal+Operations]: ../../ReactiveCocoa/Objective-C/RACSignal+Operations.h\n[RACStream]: ../../ReactiveCocoa/Objective-C/RACStream.h\n[RACSubscriber]: ../../ReactiveCocoa/Objective-C/RACSubscriber.h\n[Subjects]: FrameworkOverview.md#subjects\n[Parallelizing Independent Work]: ../README.md#parallelizing-independent-work\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/Legacy/FrameworkOverview.md",
    "content": "# Framework Overview\n\nThis document contains a high-level description of the different components\nwithin the ReactiveCocoa framework, and an attempt to explain how they work\ntogether and divide responsibilities. This is meant to be a starting point for\nlearning about new modules and finding more specific documentation.\n\nFor examples and help understanding how to use RAC, see the [README][] or\nthe [Design Guidelines][].\n\n## Streams\n\nA **stream**, represented by the [RACStream][] abstract class, is any series of\nobject values.\n\nValues may be available immediately or in the future, but must be retrieved\nsequentially. There is no way to retrieve the second value of a stream without\nevaluating or waiting for the first value.\n\nStreams are [monads][]. Among other things, this allows complex operations to be\nbuilt on a few basic primitives (`-bind:` in particular). [RACStream][] also\nimplements the equivalent of the [Monoid][] and [MonadZip][] typeclasses from\n[Haskell][].\n\n[RACStream][] isn't terribly useful on its own. Most streams are treated as\n[signals](#signals) or [sequences](#sequences) instead.\n\n## Signals\n\nA **signal**, represented by the [RACSignal][] class, is a _push-driven_\n[stream](#streams).\n\nSignals generally represent data that will be delivered in the future. As work\nis performed or data is received, values are _sent_ on the signal, which pushes\nthem out to any subscribers. Users must [subscribe](#subscription) to a signal\nin order to access its values.\n\nSignals send three different types of events to their subscribers:\n\n * The **next** event provides a new value from the stream. [RACStream][]\n   methods only operate on events of this type. Unlike Cocoa collections, it is\n   completely valid for a signal to include `nil`.\n * The **error** event indicates that an error occurred before the signal could\n   finish. The event may include an `NSError` object that indicates what went\n   wrong. Errors must be handled specially – they are not included in the\n   stream's values.\n * The **completed** event indicates that the signal finished successfully, and\n   that no more values will be added to the stream. Completion must be handled\n   specially – it is not included in the stream of values.\n\nThe lifetime of a signal consists of any number of `next` events, followed by\none `error` or `completed` event (but not both).\n\n### Subscription\n\nA **subscriber** is anything that is waiting or capable of waiting for events\nfrom a [signal](#signals). Within RAC, a subscriber is represented as any object\nthat conforms to the [RACSubscriber][] protocol.\n\nA **subscription** is created through any call to\n[-subscribeNext:error:completed:][RACSignal], or one of the corresponding\nconvenience methods. Technically, most [RACStream][] and\n[RACSignal][RACSignal+Operations] operators create subscriptions as well, but\nthese intermediate subscriptions are usually an implementation detail.\n\nSubscriptions [retain their signals][Memory Management], and are automatically\ndisposed of when the signal completes or errors. Subscriptions can also be\n[disposed of manually](#disposables).\n\n### Subjects\n\nA **subject**, represented by the [RACSubject][] class, is a [signal](#signals)\nthat can be manually controlled.\n\nSubjects can be thought of as the \"mutable\" variant of a signal, much like\n`NSMutableArray` is for `NSArray`. They are extremely useful for bridging\nnon-RAC code into the world of signals.\n\nFor example, instead of handling application logic in block callbacks, the\nblocks can simply send events to a shared subject instead. The subject can then\nbe returned as a [RACSignal][], hiding the implementation detail of the\ncallbacks.\n\nSome subjects offer additional behaviors as well. In particular,\n[RACReplaySubject][] can be used to buffer events for future\n[subscribers](#subscription), like when a network request finishes before\nanything is ready to handle the result.\n\n### Commands\n\nA **command**, represented by the [RACCommand][] class, creates and subscribes\nto a signal in response to some action. This makes it easy to perform\nside-effecting work as the user interacts with the app.\n\nUsually the action triggering a command is UI-driven, like when a button is\nclicked. Commands can also be automatically disabled based on a signal, and this\ndisabled state can be represented in a UI by disabling any controls associated\nwith the command.\n\nOn OS X, RAC adds a `rac_command` property to\n[NSButton][NSButton+RACCommandSupport] for setting up these behaviors\nautomatically.\n\n### Connections\n\nA **connection**, represented by the [RACMulticastConnection][] class, is\na [subscription](#subscription) that is shared between any number of\nsubscribers.\n\n[Signals](#signals) are _cold_ by default, meaning that they start doing work\n_each_ time a new subscription is added. This behavior is usually desirable,\nbecause it means that data will be freshly recalculated for each subscriber, but\nit can be problematic if the signal has side effects or the work is expensive\n(for example, sending a network request).\n\nA connection is created through the `-publish` or `-multicast:` methods on\n[RACSignal][RACSignal+Operations], and ensures that only one underlying\nsubscription is created, no matter how many times the connection is subscribed\nto. Once connected, the connection's signal is said to be _hot_, and the\nunderlying subscription will remain active until _all_ subscriptions to the\nconnection are [disposed](#disposables).\n\n## Sequences\n\nA **sequence**, represented by the [RACSequence][] class, is a _pull-driven_\n[stream](#streams).\n\nSequences are a kind of collection, similar in purpose to `NSArray`. Unlike\nan array, the values in a sequence are evaluated _lazily_ (i.e., only when they\nare needed) by default, potentially improving performance if only part of\na sequence is used. Just like Cocoa collections, sequences cannot contain `nil`.\n\nSequences are similar to [Clojure's sequences][seq] ([lazy-seq][] in particular), or\nthe [List][] type in [Haskell][].\n\nRAC adds a `-rac_sequence` method to most of Cocoa's collection classes,\nallowing them to be used as [RACSequences][RACSequence] instead.\n\n## Disposables\n\nThe **[RACDisposable][]** class is used for cancellation and resource cleanup.\n\nDisposables are most commonly used to unsubscribe from a [signal](#signals).\nWhen a [subscription](#subscription) is disposed, the corresponding subscriber\nwill not receive _any_ further events from the signal. Additionally, any work\nassociated with the subscription (background processing, network requests, etc.)\nwill be cancelled, since the results are no longer needed.\n\nFor more information about cancellation, see the RAC [Design Guidelines][].\n\n## Schedulers\n\nA **scheduler**, represented by the [RACScheduler][] class, is a serial\nexecution queue for [signals](#signals) to perform work or deliver their results upon.\n\nSchedulers are similar to Grand Central Dispatch queues, but schedulers support\ncancellation (via [disposables](#disposables)), and always execute serially.\nWith the exception of the [+immediateScheduler][RACScheduler], schedulers do not\noffer synchronous execution. This helps avoid deadlocks, and encourages the use\nof [signal operators][RACSignal+Operations] instead of blocking work.\n\n[RACScheduler][] is also somewhat similar to `NSOperationQueue`, but schedulers\ndo not allow tasks to be reordered or depend on one another.\n\n## Value types\n\nRAC offers a few miscellaneous classes for conveniently representing values in\na [stream](#streams):\n\n * **[RACTuple][]** is a small, constant-sized collection that can contain\n   `nil` (represented by `RACTupleNil`). It is generally used to represent\n   the combined values of multiple streams.\n * **[RACUnit][]** is a singleton \"empty\" value. It is used as a value in\n   a stream for those times when more meaningful data doesn't exist.\n * **[RACEvent][]** represents any [signal event](#signals) as a single value.\n   It is primarily used by the `-materialize` method of\n   [RACSignal][RACSignal+Operations].\n\n[Design Guidelines]: DesignGuidelines.md\n[Haskell]: http://www.haskell.org\n[lazy-seq]: http://clojure.github.com/clojure/clojure.core-api.html#clojure.core/lazy-seq\n[List]: https://downloads.haskell.org/~ghc/latest/docs/html/libraries/Data-List.html\n[Memory Management]: MemoryManagement.md\n[monads]: http://en.wikipedia.org/wiki/Monad_(functional_programming)\n[Monoid]: http://downloads.haskell.org/~ghc/latest/docs/html/libraries/Data-Monoid.html\n[MonadZip]: http://downloads.haskell.org/~ghc/latest/docs/html/libraries/Control-Monad-Zip.html\n[NSButton+RACCommandSupport]: ../../ReactiveCocoa/Objective-C/NSButton+RACCommandSupport.h\n[RACCommand]: ../../ReactiveCocoa/Objective-C/RACCommand.h\n[RACDisposable]: ../../ReactiveCocoa/Objective-C/RACDisposable.h\n[RACEvent]: ../../ReactiveCocoa/Objective-C/RACEvent.h\n[RACMulticastConnection]: ../../ReactiveCocoa/Objective-C/RACMulticastConnection.h\n[RACReplaySubject]: ../../ReactiveCocoa/Objective-C/RACReplaySubject.h\n[RACScheduler]: ../../ReactiveCocoa/Objective-C/RACScheduler.h\n[RACSequence]: ../../ReactiveCocoa/Objective-C/RACSequence.h\n[RACSignal]: ../../ReactiveCocoa/Objective-C/RACSignal.h\n[RACSignal+Operations]: ../../ReactiveCocoa/Objective-C/RACSignal+Operations.h\n[RACStream]: ../../ReactiveCocoa/Objective-C/RACStream.h\n[RACSubject]: ../../ReactiveCocoa/Objective-C/RACSubject.h\n[RACSubscriber]: ../../ReactiveCocoa/Objective-C/RACSubscriber.h\n[RACTuple]: ../../ReactiveCocoa/Objective-C/RACTuple.h\n[RACUnit]: ../../ReactiveCocoa/Objective-C/RACUnit.h\n[README]: README.md\n[seq]: http://clojure.org/sequences\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/Legacy/MemoryManagement.md",
    "content": "# Memory Management\n\nReactiveCocoa's memory management is quite complex, but the end result is that\n**you don't need to retain signals in order to process them**.\n\nIf the framework required you to retain every signal, it'd be much more unwieldy\nto use, especially for one-shot signals that are used like futures (e.g.,\nnetwork requests). You'd have to save any long-lived signal into a property, and\nthen also make sure to clear it out when you're done with it. Not fun.\n\n## Subscribers\n\nBefore going any further, it's worth noting that\n`subscribeNext:error:completed:` (and all variants thereof) create an _implicit_\nsubscriber using the given blocks. Any objects referenced from those blocks will\ntherefore be retained as part of the subscription. Just like any other object,\n`self` won't be retained without a direct or indirect reference to it.\n\n## Finite or Short-Lived Signals\n\nThe most important guideline to RAC memory management is that a **subscription\nis automatically terminated upon completion or error, and the subscriber\nremoved**.\n\nFor example, if you have some code like this in your view controller:\n\n```objc\nself.disposable = [signal subscribeCompleted:^{\n    doSomethingPossiblyInvolving(self);\n}];\n```\n\n… the memory management will look something like the following:\n\n```\nview controller -> RACDisposable -> RACSignal -> RACSubscriber -> view controller\n```\n\nHowever, the `RACSignal -> RACSubscriber` relationship is torn down as soon as\n`signal` finishes, breaking the retain cycle.\n\n**This is often all you need**, because the lifetime of the `RACSignal` in\nmemory will naturally match the logical lifetime of the event stream.\n\n## Infinite Signals\n\nInfinite signals (or signals that live so long that they might as well be\ninfinite), however, will never tear down naturally. This is where disposables\nshine.\n\n**Disposing of a subscription will remove the associated subscriber**, and just\ngenerally clean up any resources associated with that subscription. To that one\nsubscriber, it's just as if the signal had completed or errored, except no final\nevent is sent on the signal. All other subscribers will remain intact.\n\nHowever, as a general rule of thumb, if you have to manually manage\na subscription's lifecycle, [there's probably a better way to do what you want][avoid-explicit-subscriptions-and-disposal].\n\n## Signals Derived from `self`\n\nThere's still a bit of a tricky middle case here, though. Any time a signal's\nlifetime is tied to the calling scope, you'll have a much harder cycle to break.\n\nThis commonly occurs when using `RACObserve()` on a key\npath that's relative to `self`, and then applying a block that needs to capture\n`self`.\n\nThe easiest answer here is just to **capture `self` weakly**:\n\n```objc\n__weak id weakSelf = self;\n[RACObserve(self, username) subscribeNext:^(NSString *username) {\n    id strongSelf = weakSelf;\n    [strongSelf validateUsername];\n}];\n```\n\nOr, after importing the included\n[EXTScope.h](https://github.com/jspahrsummers/libextobjc/blob/master/extobjc/EXTScope.h)\nheader:\n\n```objc\n@weakify(self);\n[RACObserve(self, username) subscribeNext:^(NSString *username) {\n    @strongify(self);\n    [self validateUsername];\n}];\n```\n\n*(Replace `__weak` or `@weakify` with `__unsafe_unretained` or `@unsafeify`,\nrespectively, if the object doesn't support weak references.)*\n\nHowever, [there's probably a better pattern you could use instead][avoid-explicit-subscriptions-and-disposal]. For\nexample, the above sample could perhaps be written like:\n\n```objc\n[self rac_liftSelector:@selector(validateUsername:) withSignals:RACObserve(self, username), nil];\n```\n\nor:\n\n```objc\nRACSignal *validated = [RACObserve(self, username) map:^(NSString *username) {\n    // Put validation logic here.\n    return @YES;\n}];\n```\n\nAs with infinite signals, there are generally ways you can avoid referencing\n`self` (or any object) from blocks in a signal chain.\n\n----\n\nThe above information is really all you should need in order to use\nReactiveCocoa effectively. However, there's one more point to address, just for\nthe technically curious or for anyone interested in contributing to RAC.\n\nThe design goal of \"no retaining necessary\" begs the question: how do we know\nwhen a signal should be deallocated? What if it was just created, escaped an\nautorelease pool, and hasn't been retained yet?\n\nThe real answer is _we don't_, BUT we can usually assume that the caller will\nretain the signal within the current run loop iteration if they want to keep it.\n\nConsequently:\n\n 1. A created signal is automatically added to a global set of active signals.\n 2. The signal will wait for a single pass of the main run loop, and then remove\n    itself from the active set _if it has no subscribers_. Unless the signal was\n    retained somehow, it would deallocate at this point.\n 3. If something did subscribe in that run loop iteration, the signal stays in\n    the set.\n 4. Later, when all the subscribers are gone, step 2 is triggered again.\n\nThis could backfire if the run loop is spun recursively (like in a modal event\nloop on OS X), but it makes the life of the framework consumer much easier for\nmost or all other cases.\n\n[avoid-explicit-subscriptions-and-disposal]: DesignGuidelines.md#avoid-explicit-subscriptions-and-disposal\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/Legacy/README.md",
    "content": "# ReactiveCocoa\n\n_NOTE: This is legacy introduction to the Objective-C ReactiveCocoa. For the\nupdated version that uses Swift please see the main [README][]_\n\nReactiveCocoa (RAC) is an Objective-C framework inspired by [Functional Reactive\nProgramming][]. It provides APIs for **composing and transforming streams of\nvalues**.\n\nIf you're already familiar with functional reactive programming or know the basic\npremise of ReactiveCocoa, check out the other documentation in this folder for a\nframework overview and more in-depth information about how it all works in practice.\n\n## New to ReactiveCocoa?\n\nReactiveCocoa is documented like crazy, and there's a wealth of introductory\nmaterial available to explain what RAC is and how you can use it.\n\nIf you want to learn more, we recommend these resources, roughly in order:\n\n 1. [Introduction](#introduction)\n 1. [When to use ReactiveCocoa](#when-to-use-reactivecocoa)\n 1. [Framework Overview][]\n 1. [Basic Operators][]\n 1. [Header documentation](../../ReactiveCocoa/Objective-C)\n 1. Previously answered [Stack Overflow](https://github.com/ReactiveCocoa/ReactiveCocoa/wiki)\n    questions and [GitHub issues](https://github.com/ReactiveCocoa/ReactiveCocoa/issues?labels=question&state=closed)\n 1. The rest of this folder\n 1. [Functional Reactive Programming on iOS](https://leanpub.com/iosfrp/) \n    (eBook)\n \nIf you have any further questions, please feel free to [file an issue](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/new). \n\n## Introduction\n\nReactiveCocoa is inspired by [functional reactive\nprogramming](http://blog.maybeapps.com/post/42894317939/input-and-output).\nRather than using mutable variables which are replaced and modified in-place,\nRAC provides signals (represented by `RACSignal`) that capture present and\nfuture values.\n\nBy chaining, combining, and reacting to signals, software can be written\ndeclaratively, without the need for code that continually observes and updates\nvalues.\n\nFor example, a text field can be bound to the latest time, even as it changes,\ninstead of using additional code that watches the clock and updates the\ntext field every second.  It works much like KVO, but with blocks instead of\noverriding `-observeValueForKeyPath:ofObject:change:context:`.\n\nSignals can also represent asynchronous operations, much like [futures and\npromises][]. This greatly simplifies asynchronous software, including networking\ncode.\n\nOne of the major advantages of RAC is that it provides a single, unified\napproach to dealing with asynchronous behaviors, including delegate methods,\ncallback blocks, target-action mechanisms, notifications, and KVO.\n\nHere's a simple example:\n\n```objc\n// When self.username changes, logs the new name to the console.\n//\n// RACObserve(self, username) creates a new RACSignal that sends the current\n// value of self.username, then the new value whenever it changes.\n// -subscribeNext: will execute the block whenever the signal sends a value.\n[RACObserve(self, username) subscribeNext:^(NSString *newName) {\n\tNSLog(@\"%@\", newName);\n}];\n```\n\nBut unlike KVO notifications, signals can be chained together and operated on:\n\n```objc\n// Only logs names that starts with \"j\".\n//\n// -filter returns a new RACSignal that only sends a new value when its block\n// returns YES.\n[[RACObserve(self, username)\n\tfilter:^(NSString *newName) {\n\t\treturn [newName hasPrefix:@\"j\"];\n\t}]\n\tsubscribeNext:^(NSString *newName) {\n\t\tNSLog(@\"%@\", newName);\n\t}];\n```\n\nSignals can also be used to derive state. Instead of observing properties and\nsetting other properties in response to the new values, RAC makes it possible to\nexpress properties in terms of signals and operations:\n\n```objc\n// Creates a one-way binding so that self.createEnabled will be\n// true whenever self.password and self.passwordConfirmation\n// are equal.\n//\n// RAC() is a macro that makes the binding look nicer.\n// \n// +combineLatest:reduce: takes an array of signals, executes the block with the\n// latest value from each signal whenever any of them changes, and returns a new\n// RACSignal that sends the return value of that block as values.\nRAC(self, createEnabled) = [RACSignal \n\tcombineLatest:@[ RACObserve(self, password), RACObserve(self, passwordConfirmation) ] \n\treduce:^(NSString *password, NSString *passwordConfirm) {\n\t\treturn @([passwordConfirm isEqualToString:password]);\n\t}];\n```\n\nSignals can be built on any stream of values over time, not just KVO. For\nexample, they can also represent button presses:\n\n```objc\n// Logs a message whenever the button is pressed.\n//\n// RACCommand creates signals to represent UI actions. Each signal can\n// represent a button press, for example, and have additional work associated\n// with it.\n//\n// -rac_command is an addition to NSButton. The button will send itself on that\n// command whenever it's pressed.\nself.button.rac_command = [[RACCommand alloc] initWithSignalBlock:^(id _) {\n\tNSLog(@\"button was pressed!\");\n\treturn [RACSignal empty];\n}];\n```\n\nOr asynchronous network operations:\n\n```objc\n// Hooks up a \"Log in\" button to log in over the network.\n//\n// This block will be run whenever the login command is executed, starting\n// the login process.\nself.loginCommand = [[RACCommand alloc] initWithSignalBlock:^(id sender) {\n\t// The hypothetical -logIn method returns a signal that sends a value when\n\t// the network request finishes.\n\treturn [client logIn];\n}];\n\n// -executionSignals returns a signal that includes the signals returned from\n// the above block, one for each time the command is executed.\n[self.loginCommand.executionSignals subscribeNext:^(RACSignal *loginSignal) {\n\t// Log a message whenever we log in successfully.\n\t[loginSignal subscribeCompleted:^{\n\t\tNSLog(@\"Logged in successfully!\");\n\t}];\n}];\n\n// Executes the login command when the button is pressed.\nself.loginButton.rac_command = self.loginCommand;\n```\n\nSignals can also represent timers, other UI events, or anything else that\nchanges over time.\n\nUsing signals for asynchronous operations makes it possible to build up more\ncomplex behavior by chaining and transforming those signals. Work can easily be\ntriggered after a group of operations completes:\n\n```objc\n// Performs 2 network operations and logs a message to the console when they are\n// both completed.\n//\n// +merge: takes an array of signals and returns a new RACSignal that passes\n// through the values of all of the signals and completes when all of the\n// signals complete.\n//\n// -subscribeCompleted: will execute the block when the signal completes.\n[[RACSignal \n\tmerge:@[ [client fetchUserRepos], [client fetchOrgRepos] ]] \n\tsubscribeCompleted:^{\n\t\tNSLog(@\"They're both done!\");\n\t}];\n```\n\nSignals can be chained to sequentially execute asynchronous operations, instead\nof nesting callbacks with blocks. This is similar to how [futures and promises][]\nare usually used:\n\n```objc\n// Logs in the user, then loads any cached messages, then fetches the remaining\n// messages from the server. After that's all done, logs a message to the\n// console.\n//\n// The hypothetical -logInUser methods returns a signal that completes after\n// logging in.\n//\n// -flattenMap: will execute its block whenever the signal sends a value, and\n// returns a new RACSignal that merges all of the signals returned from the block\n// into a single signal.\n[[[[client \n\tlogInUser] \n\tflattenMap:^(User *user) {\n\t\t// Return a signal that loads cached messages for the user.\n\t\treturn [client loadCachedMessagesForUser:user];\n\t}]\n\tflattenMap:^(NSArray *messages) {\n\t\t// Return a signal that fetches any remaining messages.\n\t\treturn [client fetchMessagesAfterMessage:messages.lastObject];\n\t}]\n\tsubscribeNext:^(NSArray *newMessages) {\n\t\tNSLog(@\"New messages: %@\", newMessages);\n\t} completed:^{\n\t\tNSLog(@\"Fetched all messages.\");\n\t}];\n```\n\nRAC even makes it easy to bind to the result of an asynchronous operation:\n\n```objc\n// Creates a one-way binding so that self.imageView.image will be set as the user's\n// avatar as soon as it's downloaded.\n//\n// The hypothetical -fetchUserWithUsername: method returns a signal which sends\n// the user.\n//\n// -deliverOn: creates new signals that will do their work on other queues. In\n// this example, it's used to move work to a background queue and then back to the main thread.\n//\n// -map: calls its block with each user that's fetched and returns a new\n// RACSignal that sends values returned from the block.\nRAC(self.imageView, image) = [[[[client \n\tfetchUserWithUsername:@\"joshaber\"]\n\tdeliverOn:[RACScheduler scheduler]]\n\tmap:^(User *user) {\n\t\t// Download the avatar (this is done on a background queue).\n\t\treturn [[NSImage alloc] initWithContentsOfURL:user.avatarURL];\n\t}]\n\t// Now the assignment will be done on the main thread.\n\tdeliverOn:RACScheduler.mainThreadScheduler];\n```\n\nThat demonstrates some of what RAC can do, but it doesn't demonstrate why RAC is\nso powerful. It's hard to appreciate RAC from README-sized examples, but it\nmakes it possible to write code with less state, less boilerplate, better code\nlocality, and better expression of intent.\n\nFor more sample code, check out [C-41][] or [GroceryList][], which are real iOS\napps written using ReactiveCocoa. Additional information about RAC can be found\nin this folder.\n\n## When to use ReactiveCocoa\n\nUpon first glance, ReactiveCocoa is very abstract, and it can be difficult to\nunderstand how to apply it to concrete problems.\n\nHere are some of the use cases that RAC excels at.\n\n### Handling asynchronous or event-driven data sources\n\nMuch of Cocoa programming is focused on reacting to user events or changes in\napplication state. Code that deals with such events can quickly become very\ncomplex and spaghetti-like, with lots of callbacks and state variables to handle\nordering issues.\n\nPatterns that seem superficially different, like UI callbacks, network\nresponses, and KVO notifications, actually have a lot in common. [RACSignal][]\nunifies all these different APIs so that they can be composed together and\nmanipulated in the same way.\n\nFor example, the following code:\n\n```objc\n\nstatic void *ObservationContext = &ObservationContext;\n\n- (void)viewDidLoad {\n\t[super viewDidLoad];\n\n\t[LoginManager.sharedManager addObserver:self forKeyPath:@\"loggingIn\" options:NSKeyValueObservingOptionInitial context:&ObservationContext];\n\t[NSNotificationCenter.defaultCenter addObserver:self selector:@selector(loggedOut:) name:UserDidLogOutNotification object:LoginManager.sharedManager];\n\n\t[self.usernameTextField addTarget:self action:@selector(updateLogInButton) forControlEvents:UIControlEventEditingChanged];\n\t[self.passwordTextField addTarget:self action:@selector(updateLogInButton) forControlEvents:UIControlEventEditingChanged];\n\t[self.logInButton addTarget:self action:@selector(logInPressed:) forControlEvents:UIControlEventTouchUpInside];\n}\n\n- (void)dealloc {\n\t[LoginManager.sharedManager removeObserver:self forKeyPath:@\"loggingIn\" context:ObservationContext];\n\t[NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n- (void)updateLogInButton {\n\tBOOL textFieldsNonEmpty = self.usernameTextField.text.length > 0 && self.passwordTextField.text.length > 0;\n\tBOOL readyToLogIn = !LoginManager.sharedManager.isLoggingIn && !self.loggedIn;\n\tself.logInButton.enabled = textFieldsNonEmpty && readyToLogIn;\n}\n\n- (IBAction)logInPressed:(UIButton *)sender {\n\t[[LoginManager sharedManager]\n\t\tlogInWithUsername:self.usernameTextField.text\n\t\tpassword:self.passwordTextField.text\n\t\tsuccess:^{\n\t\t\tself.loggedIn = YES;\n\t\t} failure:^(NSError *error) {\n\t\t\t[self presentError:error];\n\t\t}];\n}\n\n- (void)loggedOut:(NSNotification *)notification {\n\tself.loggedIn = NO;\n}\n\n- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {\n\tif (context == ObservationContext) {\n\t\t[self updateLogInButton];\n\t} else {\n\t\t[super observeValueForKeyPath:keyPath ofObject:object change:change context:context];\n\t}\n}\n```\n\n… could be expressed in RAC like so:\n\n```objc\n- (void)viewDidLoad {\n\t[super viewDidLoad];\n\n\t@weakify(self);\n\n\tRAC(self.logInButton, enabled) = [RACSignal\n\t\tcombineLatest:@[\n\t\t\tself.usernameTextField.rac_textSignal,\n\t\t\tself.passwordTextField.rac_textSignal,\n\t\t\tRACObserve(LoginManager.sharedManager, loggingIn),\n\t\t\tRACObserve(self, loggedIn)\n\t\t] reduce:^(NSString *username, NSString *password, NSNumber *loggingIn, NSNumber *loggedIn) {\n\t\t\treturn @(username.length > 0 && password.length > 0 && !loggingIn.boolValue && !loggedIn.boolValue);\n\t\t}];\n\n\t[[self.logInButton rac_signalForControlEvents:UIControlEventTouchUpInside] subscribeNext:^(UIButton *sender) {\n\t\t@strongify(self);\n\n\t\tRACSignal *loginSignal = [LoginManager.sharedManager\n\t\t\tlogInWithUsername:self.usernameTextField.text\n\t\t\tpassword:self.passwordTextField.text];\n\n\t\t\t[loginSignal subscribeError:^(NSError *error) {\n\t\t\t\t@strongify(self);\n\t\t\t\t[self presentError:error];\n\t\t\t} completed:^{\n\t\t\t\t@strongify(self);\n\t\t\t\tself.loggedIn = YES;\n\t\t\t}];\n\t}];\n\n\tRAC(self, loggedIn) = [[NSNotificationCenter.defaultCenter\n\t\trac_addObserverForName:UserDidLogOutNotification object:nil]\n\t\tmapReplace:@NO];\n}\n```\n\n### Chaining dependent operations\n\nDependencies are most often found in network requests, where a previous request\nto the server needs to complete before the next one can be constructed, and so\non:\n\n```objc\n[client logInWithSuccess:^{\n\t[client loadCachedMessagesWithSuccess:^(NSArray *messages) {\n\t\t[client fetchMessagesAfterMessage:messages.lastObject success:^(NSArray *nextMessages) {\n\t\t\tNSLog(@\"Fetched all messages.\");\n\t\t} failure:^(NSError *error) {\n\t\t\t[self presentError:error];\n\t\t}];\n\t} failure:^(NSError *error) {\n\t\t[self presentError:error];\n\t}];\n} failure:^(NSError *error) {\n\t[self presentError:error];\n}];\n```\n\nReactiveCocoa makes this pattern particularly easy:\n\n```objc\n[[[[client logIn]\n\tthen:^{\n\t\treturn [client loadCachedMessages];\n\t}]\n\tflattenMap:^(NSArray *messages) {\n\t\treturn [client fetchMessagesAfterMessage:messages.lastObject];\n\t}]\n\tsubscribeError:^(NSError *error) {\n\t\t[self presentError:error];\n\t} completed:^{\n\t\tNSLog(@\"Fetched all messages.\");\n\t}];\n```\n\n### Parallelizing independent work\n\nWorking with independent data sets in parallel and then combining them into\na final result is non-trivial in Cocoa, and often involves a lot of\nsynchronization:\n\n```objc\n__block NSArray *databaseObjects;\n__block NSArray *fileContents;\n \nNSOperationQueue *backgroundQueue = [[NSOperationQueue alloc] init];\nNSBlockOperation *databaseOperation = [NSBlockOperation blockOperationWithBlock:^{\n\tdatabaseObjects = [databaseClient fetchObjectsMatchingPredicate:predicate];\n}];\n\nNSBlockOperation *filesOperation = [NSBlockOperation blockOperationWithBlock:^{\n\tNSMutableArray *filesInProgress = [NSMutableArray array];\n\tfor (NSString *path in files) {\n\t\t[filesInProgress addObject:[NSData dataWithContentsOfFile:path]];\n\t}\n\n\tfileContents = [filesInProgress copy];\n}];\n \nNSBlockOperation *finishOperation = [NSBlockOperation blockOperationWithBlock:^{\n\t[self finishProcessingDatabaseObjects:databaseObjects fileContents:fileContents];\n\tNSLog(@\"Done processing\");\n}];\n \n[finishOperation addDependency:databaseOperation];\n[finishOperation addDependency:filesOperation];\n[backgroundQueue addOperation:databaseOperation];\n[backgroundQueue addOperation:filesOperation];\n[backgroundQueue addOperation:finishOperation];\n```\n\nThe above code can be cleaned up and optimized by simply composing signals:\n\n```objc\nRACSignal *databaseSignal = [[databaseClient\n\tfetchObjectsMatchingPredicate:predicate]\n\tsubscribeOn:[RACScheduler scheduler]];\n\nRACSignal *fileSignal = [RACSignal startEagerlyWithScheduler:[RACScheduler scheduler] block:^(id<RACSubscriber> subscriber) {\n\tNSMutableArray *filesInProgress = [NSMutableArray array];\n\tfor (NSString *path in files) {\n\t\t[filesInProgress addObject:[NSData dataWithContentsOfFile:path]];\n\t}\n\n\t[subscriber sendNext:[filesInProgress copy]];\n\t[subscriber sendCompleted];\n}];\n\n[[RACSignal\n\tcombineLatest:@[ databaseSignal, fileSignal ]\n\treduce:^ id (NSArray *databaseObjects, NSArray *fileContents) {\n\t\t[self finishProcessingDatabaseObjects:databaseObjects fileContents:fileContents];\n\t\treturn nil;\n\t}]\n\tsubscribeCompleted:^{\n\t\tNSLog(@\"Done processing\");\n\t}];\n```\n\n### Simplifying collection transformations\n\nHigher-order functions like `map`, `filter`, `fold`/`reduce` are sorely missing\nfrom Foundation, leading to loop-focused code like this:\n\n```objc\nNSMutableArray *results = [NSMutableArray array];\nfor (NSString *str in strings) {\n\tif (str.length < 2) {\n\t\tcontinue;\n\t}\n\n\tNSString *newString = [str stringByAppendingString:@\"foobar\"];\n\t[results addObject:newString];\n}\n```\n\n[RACSequence][] allows any Cocoa collection to be manipulated in a uniform and\ndeclarative way:\n\n```objc\nRACSequence *results = [[strings.rac_sequence\n\tfilter:^ BOOL (NSString *str) {\n\t\treturn str.length >= 2;\n\t}]\n\tmap:^(NSString *str) {\n\t\treturn [str stringByAppendingString:@\"foobar\"];\n\t}];\n```\n\n## System Requirements\n\nReactiveCocoa supports OS X 10.8+ and iOS 8.0+.\n\n## Importing ReactiveCocoa\n\nTo add RAC to your application:\n\n 1. Add the ReactiveCocoa repository as a submodule of your application's\n    repository.\n 1. Run `script/bootstrap` from within the ReactiveCocoa folder.\n 1. Drag and drop `ReactiveCocoa.xcodeproj` into your\n    application's Xcode project or workspace.\n 1. On the \"Build Phases\" tab of your application target, add RAC to the \"Link\n    Binary With Libraries\" phase.\n    * **On iOS**, add `libReactiveCocoa-iOS.a`.\n    * **On OS X**, add `ReactiveCocoa.framework`. RAC must also be added to any\n      \"Copy Frameworks\" build phase. If you don't already have one, simply add\n      a \"Copy Files\" build phase and target the \"Frameworks\" destination.\n 1. Add `\"$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include\"\n    $(inherited)` to the \"Header Search Paths\" build setting (this is only\n    necessary for archive builds, but it has no negative effect otherwise).\n 1. **For iOS targets**, add `-ObjC` to the \"Other Linker Flags\" build setting.\n 1. **If you added RAC to a project (not a workspace)**, you will also need to\n    add the appropriate RAC target to the \"Target Dependencies\" of your\n    application.\n\nIf you would prefer to use [CocoaPods](http://cocoapods.org), there are some\n[ReactiveCocoa\npodspecs](https://github.com/CocoaPods/Specs/tree/master/Specs/ReactiveCocoa) that\nhave been generously contributed by third parties.\n\nTo see a project already set up with RAC, check out [C-41][] or [GroceryList][],\nwhich are real iOS apps written using ReactiveCocoa.\n\n## More Info\n\nReactiveCocoa is inspired by .NET's [Reactive\nExtensions](http://msdn.microsoft.com/en-us/data/gg577609) (Rx). Most of the\nprinciples of Rx apply to RAC as well. There are some really good Rx resources\nout there:\n\n* [Reactive Extensions MSDN entry](http://msdn.microsoft.com/en-us/library/hh242985.aspx)\n* [Reactive Extensions for .NET Introduction](http://leecampbell.blogspot.com/2010/08/reactive-extensions-for-net.html)\n* [Rx - Channel 9 videos](http://channel9.msdn.com/tags/Rx/)\n* [Reactive Extensions wiki](http://rxwiki.wikidot.com/)\n* [101 Rx Samples](http://rxwiki.wikidot.com/101samples)\n* [Programming Reactive Extensions and LINQ](http://www.amazon.com/Programming-Reactive-Extensions-Jesse-Liberty/dp/1430237473)\n\nRAC and Rx are both frameworks inspired by functional reactive programming. Here \nare some resources related to FRP:\n\n* [What is FRP? - Elm Language](http://elm-lang.org/learn/What-is-FRP.elm)\n* [What is Functional Reactive Programming - Stack Overflow](http://stackoverflow.com/questions/1028250/what-is-functional-reactive-programming/1030631#1030631)\n* [Specification for a Functional Reactive Language - Stack Overflow](http://stackoverflow.com/questions/5875929/specification-for-a-functional-reactive-programming-language#5878525)\n* [Escape from Callback Hell](http://elm-lang.org/learn/Escape-from-Callback-Hell.elm)\n* [Principles of Reactive Programming on Coursera](https://www.coursera.org/course/reactive)\n\n[README]: ../../README.md\n[Basic Operators]: BasicOperators.md\n[Framework Overview]: FrameworkOverview.md\n[Functional Reactive Programming]: http://en.wikipedia.org/wiki/Functional_reactive_programming\n[GroceryList]:  https://github.com/jspahrsummers/GroceryList\n[RACSequence]: ../../ReactiveCocoa/Objective-C/RACSequence.h\n[RACSignal]: ../../ReactiveCocoa/Objective-C/RACSignal.h\n[futures and promises]: http://en.wikipedia.org/wiki/Futures_and_promises\n[C-41]: https://github.com/AshFurrow/C-41\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/ObjectiveCBridging.md",
    "content": "# Objective-C Bridging\n\nWhile ReactiveCocoa 3.0 introduces an entirely new design, it also aims for maximum compatibility with RAC 2, to ease the pain of migration. To interoperate with RAC 2’s Objective-C APIs, RAC 3 offers bridging functions that can convert Objective-C types to Swift types and vice-versa. \n\nBecause the APIs are based on fundamentally different designs, the conversion is not always one-to-one; however, every attempt has been made to faithfully translate the concepts between the two APIs (and languages).\n\nThe bridged types include:\n\n 1. [`RACSignal` and `SignalProducer` or `Signal`](#racsignal-and-signalproducer-or-signal)\n 1. [`RACCommand` and `Action`](#raccommand-and-action)\n 1. [`RACScheduler` and `SchedulerType`](#racscheduler-and-schedulertype)\n 1. [`RACDisposable` and `Disposable`](#racdisposable-and-disposable)\n\nFor the complete bridging API, including documentation, see [`ObjectiveCBridging.swift`][ObjectiveCBridging]. To learn more about how to migrate between ReactiveCocoa 2 and 3, see the [CHANGELOG][].\n\n## `RACSignal` and `SignalProducer` or `Signal`\n\nIn RAC 3, “cold” signals are represented by the `SignalProducer` type, and “hot” signals are represented by the `Signal` type.\n\n“Cold” `RACSignal`s can be converted into `SignalProducer`s using the new `toSignalProducer` method:\n\n```swift\nextension RACSignal {\n\tfunc toSignalProducer() -> SignalProducer<AnyObject?, NSError>\n}\n```\n\n“Hot” `RACSignal`s cannot be directly converted into `Signal`s, because _any_ `RACSignal` subscription could potentially involve side effects. To obtain a `Signal`, use `RACSignal.toSignalProducer` followed by `SignalProducer.start`, which will make those potential side effects explicit.\n\nFor the other direction, use the `toRACSignal()` function.\n\nWhen called with a `SignalProducer`, these functions will create a `RACSignal` to `start()` the producer once for each subscription:\n\n```swift\nfunc toRACSignal<T: AnyObject, E>(producer: SignalProducer<T, E>) -> RACSignal\nfunc toRACSignal<T: AnyObject, E>(producer: SignalProducer<T?, E>) -> RACSignal\n```\n\nWhen called with a `Signal`, these functions will create a `RACSignal` that simply observes it:\n\n```swift\nfunc toRACSignal<T: AnyObject, E>(signal: Signal<T, E>) -> RACSignal\nfunc toRACSignal<T: AnyObject, E>(signal: Signal<T?, E>) -> RACSignal\n```\n\n## `RACCommand` and `Action`\n\nTo convert `RACCommand`s into the new `Action` type, use the `toAction()` extension method:\n\n```swift\nextension RACCommand {\n\tfunc toAction() -> Action<AnyObject?, AnyObject?, NSError>\n}\n```\n\nTo convert `Action`s into `RACCommand`s, use the `toRACCommand()` function:\n\n```swift\nfunc toRACCommand<Output: AnyObject, E>(action: Action<AnyObject, Output, E>) -> RACCommand\nfunc toRACCommand<Output: AnyObject, E>(action: Action<AnyObject?, Output, E>) -> RACCommand\n```\n\n**NOTE:** The `executing` properties of actions and commands are not synchronized across the API bridge. To ensure consistency, only observe the `executing` property from the base object (the one passed _into_ the bridge, not retrieved from it), so updates occur no matter which object is used for execution.\n\n## `RACScheduler` and `SchedulerType`\n\nAny `RACScheduler` instance is automatically a `DateSchedulerType` (and therefore a `SchedulerType`), and can be passed directly into any function or method that expects one.\n\nSome (but not all) `SchedulerType`s from RAC 3 can be converted into `RACScheduler` instances, using the `toRACScheduler()` method:\n\n```swift\nextension ImmediateScheduler {\n\tfunc toRACScheduler() -> RACScheduler\n}\n\nextension UIScheduler {\n\tfunc toRACScheduler() -> RACScheduler\n}\n\nextension QueueScheduler {\n\tfunc toRACScheduler() -> RACScheduler\n}\n```\n\n## `RACDisposable` and `Disposable`\n\nAny `RACDisposable` instance is automatically a `Disposable`, and can be used directly anywhere a type conforming to `Disposable` is expected.\n\nAlthough there is no direct conversion from `Disposable` into `RACDisposable`, it is easy to do manually:\n\n```swift\nlet swiftDisposable: Disposable\nlet objcDisposable = RACDisposable {\n    swiftDisposable.dispose()\n}\n```\n\n[CHANGELOG]: ../CHANGELOG.md\n[ObjectiveCBridging]: ../ReactiveCocoa/Swift/ObjectiveCBridging.swift\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Documentation/README.md",
    "content": "This folder contains conceptual documentation and design guidelines that don't\nfit well on a single class or in any specific header file.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Instruments/README.md",
    "content": "This folder contains Instruments templates to make it easier to debug\ncode using ReactiveCocoa.\n\nTo get started with a template, simply double-click it.\n\n### Signal Names\n\nThe `name` property of `RACSignal` requires that the `RAC_DEBUG_SIGNAL_NAMES`\nenvironment variable be set, which means that you won't have access to\nmeaningful names in Instruments by default.\n\nTo add signal names, open your application's scheme in Xcode, select the Profile\naction, and add `RAC_DEBUG_SIGNAL_NAMES` with a value of `1` to the list of\nenvironment variables.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/LICENSE.md",
    "content": "**Copyright (c) 2012 - 2016, GitHub, Inc.**\n**All rights reserved.**\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\nthe Software, and to permit persons to whom the Software is furnished to do so,\nsubject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\nFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\nCOPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\nIN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/Logo/README.md",
    "content": "This folder contains brand assets.\n\n# Logo\n\nFour horizontal variations that include both the mark and the logotype. When\nusing the logo in contexts where it's surrounded by other elements, leave\na padding of about 10% of its height on each side.\n\n# Icon\n\nFour icon variations to be used on social media and other contexts where the\nhorizontal logo wouldn't fit.\n\n# Colors\n\nPrimary color: `#88CD79`\nSecondary color: `#41AD71`\nTertiary color: `#4F6B97`\n\n![](Palette.png)\n\n# Type\n\nAvenir Next, designed by Adrian Frutiger and Akira Kobayashi for Linotype.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/README.md",
    "content": "![](Logo/header.png)\n\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![GitHub release](https://img.shields.io/github/release/ReactiveCocoa/ReactiveCocoa.svg)](https://github.com/ReactiveCocoa/ReactiveCocoa/releases) ![Swift 2.2.x](https://img.shields.io/badge/Swift-2.2.x-orange.svg) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20OS%20X%20%7C%20watchOS%20%7C%20tvOS%20-lightgrey.svg)\n\nReactiveCocoa (RAC) is a Cocoa framework inspired by [Functional Reactive Programming](https://en.wikipedia.org/wiki/Functional_reactive_programming). It provides APIs for composing and transforming **streams of values over time**.\n\n 1. [Introduction](#introduction)\n 1. [Example: online search](#example-online-search)\n 1. [Objective-C and Swift](#objective-c-and-swift)\n 1. [How does ReactiveCocoa relate to Rx?](#how-does-reactivecocoa-relate-to-rx)\n 1. [Getting started](#getting-started)\n 1.  [Playground](#playground)\n\nIf you’re already familiar with functional reactive programming or what\nReactiveCocoa is about, check out the [Documentation][] folder for more in-depth\ninformation about how it all works. Then, dive straight into our [documentation\ncomments][Code] for learning more about individual APIs.\n\nIf you have a question, please see if any discussions in our [GitHub\nissues](https://github.com/ReactiveCocoa/ReactiveCocoa/issues?q=is%3Aissue+label%3Aquestion+) or [Stack\nOverflow](http://stackoverflow.com/questions/tagged/reactive-cocoa) have already\nanswered it. If not, please feel free to [file your\nown](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/new)!\n\n#### Compatibility\n\nThis documents the RAC 4 which targets `Swift 2.2.x`. For `Swift 1.2` support see [RAC\n3](https://github.com/ReactiveCocoa/ReactiveCocoa/tree/v3.0.0).\n\n## Introduction\n\nReactiveCocoa is inspired by [functional reactive\nprogramming](http://blog.maybeapps.com/post/42894317939/input-and-output).\nRather than using mutable variables which are replaced and modified in-place,\nRAC offers “event streams,” represented by the [`Signal`][Signals] and\n[`SignalProducer`][Signal producers] types, that send values over time.\n\nEvent streams unify all of Cocoa’s common patterns for asynchrony and event\nhandling, including:\n\n * Delegate methods\n * Callback blocks\n * `NSNotification`s\n * Control actions and responder chain events\n * [Futures and promises](https://en.wikipedia.org/wiki/Futures_and_promises)\n * [Key-value observing](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html) (KVO)\n\nBecause all of these different mechanisms can be represented in the _same_ way,\nit’s easy to declaratively chain and combine them together, with less spaghetti\ncode and state to bridge the gap.\n\nFor more information about the concepts in ReactiveCocoa, see the [Framework\nOverview][].\n\n## Example: online search\n\nLet’s say you have a text field, and whenever the user types something into it,\nyou want to make a network request which searches for that query.\n\n#### Observing text edits\n\nThe first step is to observe edits to the text field, using a RAC extension to\n`UITextField` specifically for this purpose:\n\n```swift\nlet searchStrings = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n```\n\nThis gives us a [signal producer][Signal producers] which sends\nvalues of type `String`. _(The cast is [currently\nnecessary](https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2182) to bridge\nthis extension method from Objective-C.)_\n\n#### Making network requests\n\nWith each string, we want to execute a network request. Luckily, RAC offers an\n`NSURLSession` extension for doing exactly that:\n\n```swift\nlet searchResults = searchStrings\n    .flatMap(.Latest) { (query: String) -> SignalProducer<(NSData, NSURLResponse), NSError> in\n        let URLRequest = self.searchRequestWithEscapedQuery(query)\n        return NSURLSession.sharedSession().rac_dataWithRequest(URLRequest)\n    }\n    .map { (data, URLResponse) -> String in\n        let string = String(data: data, encoding: NSUTF8StringEncoding)!\n        return self.parseJSONResultsFromString(string)\n    }\n    .observeOn(UIScheduler())\n```\n\nThis has transformed our producer of `String`s into a producer of `Array`s\ncontaining the search results, which will be forwarded on the main thread\n(thanks to the [`UIScheduler`][Schedulers]).\n\nAdditionally, [`flatMap(.Latest)`][flatMapLatest] here ensures that _only one search_—the\nlatest—is allowed to be running. If the user types another character while the\nnetwork request is still in flight, it will be cancelled before starting a new\none. Just think of how much code that would take to do by hand!\n\n#### Receiving the results\n\nThis won’t actually execute yet, because producers must be _started_ in order to\nreceive the results (which prevents doing work when the results are never used).\nThat’s easy enough:\n\n```swift\nsearchResults.startWithNext { results in\n    print(\"Search results: \\(results)\")\n}\n```\n\nHere, we watch for the `Next` [event][Events], which contains our results, and\njust log them to the console. This could easily do something else instead, like\nupdate a table view or a label on screen.\n\n#### Handling failures\n\nIn this example so far, any network error will generate a `Failed`\n[event][Events], which will terminate the event stream. Unfortunately, this\nmeans that future queries won’t even be attempted.\n\nTo remedy this, we need to decide what to do with failures that occur. The\nquickest solution would be to log them, then ignore them:\n\n```swift\n    .flatMap(.Latest) { (query: String) -> SignalProducer<(NSData, NSURLResponse), NSError> in\n        let URLRequest = self.searchRequestWithEscapedQuery(query)\n\n        return NSURLSession.sharedSession()\n            .rac_dataWithRequest(URLRequest)\n            .flatMapError { error in\n                print(\"Network error occurred: \\(error)\")\n                return SignalProducer.empty\n            }\n    }\n```\n\nBy replacing failures with the `empty` event stream, we’re able to effectively\nignore them.\n\nHowever, it’s probably more appropriate to retry at least a couple of times\nbefore giving up. Conveniently, there’s a [`retry`][retry] operator to do exactly that!\n\nOur improved `searchResults` producer might look like this:\n\n```swift\nlet searchResults = searchStrings\n    .flatMap(.Latest) { (query: String) -> SignalProducer<(NSData, NSURLResponse), NSError> in\n        let URLRequest = self.searchRequestWithEscapedQuery(query)\n\n        return NSURLSession.sharedSession()\n            .rac_dataWithRequest(URLRequest)\n            .retry(2)\n            .flatMapError { error in\n                print(\"Network error occurred: \\(error)\")\n                return SignalProducer.empty\n            }\n    }\n    .map { (data, URLResponse) -> String in\n        let string = String(data: data, encoding: NSUTF8StringEncoding)!\n        return self.parseJSONResultsFromString(string)\n    }\n    .observeOn(UIScheduler())\n```\n\n#### Throttling requests\n\nNow, let’s say you only want to actually perform the search periodically,\nto minimize traffic.\n\nReactiveCocoa has a declarative `throttle` operator that we can apply to our\nsearch strings:\n\n```swift\nlet searchStrings = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n```\n\nThis prevents values from being sent less than 0.5 seconds apart.\n\nTo do this manually would require significant state, and end up much harder to\nread! With ReactiveCocoa, we can use just one operator to incorporate _time_ into\nour event stream.\n\n#### Debugging event streams\n\nDue to its nature, a stream's stack trace might have dozens of frames, which, more often than not, can make debugging a very frustrating activity. \nA naive way of debugging, is by injecting side effects into the stream, like so:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .on(event: { print ($0) }) // the side effect\n```\n\nThis will print the stream's [events][Events], while preserving the original stream behaviour. Both [`SignalProducer`][Signal producers]\nand [`Signal`][Signals] provide the `logEvents` operator, that will do this automatically for you:\n\n```swift\nlet searchString = textField.rac_textSignal()\n    .toSignalProducer()\n    .map { text in text as! String }\n    .throttle(0.5, onScheduler: QueueScheduler.mainQueueScheduler)\n    .logEvents()\n```\n\nFor more information and advance usage, check the [Debugging Techniques](Documentation/DebuggingTechniques.md) document.\n\n\n## Objective-C and Swift\n\nAlthough ReactiveCocoa was started as an Objective-C framework, as of [version\n3.0][CHANGELOG], all major feature development is concentrated on the [Swift API][].\n\nRAC’s [Objective-C API][] and Swift API are entirely separate, but there is\na [bridge][Objective-C Bridging] to convert between the two. This\nis mostly meant as a compatibility layer for older ReactiveCocoa projects, or to\nuse Cocoa extensions which haven’t been added to the Swift API yet.\n\nThe Objective-C API will continue to exist and be supported for the foreseeable\nfuture, but it won’t receive many improvements. For more information about using\nthis API, please consult our [legacy documentation][].\n\n**We highly recommend that all new projects use the Swift API.**\n\n## How does ReactiveCocoa relate to Rx?\n\nReactiveCocoa was originally inspired, and therefore heavily influenced, by\nMicrosoft’s [Reactive\nExtensions](https://msdn.microsoft.com/en-us/data/gg577609.aspx) (Rx) library. There are many ports of Rx, including [RxSwift](https://github.com/ReactiveX/RxSwift), but ReactiveCocoa is _intentionally_ not a direct port.\n\n**Where RAC differs from Rx**, it is usually to:\n\n * Create a simpler API\n * Address common sources of confusion\n * More closely match Cocoa conventions\n\nThe following are some of the concrete differences, along with their rationales.\n\n### Naming\n\nIn most versions of Rx, Streams over time are known as `Observable`s, which\nparallels the `Enumerable` type in .NET. Additionally, most operations in Rx.NET\nborrow names from [LINQ](https://msdn.microsoft.com/en-us/library/bb397926.aspx),\nwhich uses terms reminiscent of relational databases, like `Select` and `Where`.\n\n**RAC is focused on matching Swift naming first and foremost**, with terms like\n`map` and `filter` instead. Other naming differences are typically inspired by\nsignificantly better alternatives from [Haskell](https://www.haskell.org) or\n[Elm](http://elm-lang.org) (which is the primary source for the “signal”\nterminology).\n\n### Signals and Signal Producers (“hot” and “cold” observables)\n\nOne of the most confusing aspects of Rx is that of [“hot”, “cold”, and “warm”\nobservables](http://www.introtorx.com/content/v1.0.10621.0/14_HotAndColdObservables.html) (event streams).\n\nIn short, given just a method or function declaration like this, in C#:\n\n```csharp\nIObservable<string> Search(string query)\n```\n\n… it is **impossible to tell** whether subscribing to (observing) that\n`IObservable` will involve side effects. If it _does_ involve side effects, it’s\nalso impossible to tell whether _each subscription_ has a side effect, or if only\nthe first one does.\n\nThis example is contrived, but it demonstrates **a real, pervasive problem**\nthat makes it extremely hard to understand Rx code (and pre-3.0 ReactiveCocoa\ncode) at a glance.\n\n[ReactiveCocoa 3.0][CHANGELOG] has solved this problem by distinguishing side\neffects with the separate [`Signal`][Signals] and [`SignalProducer`][Signal producers] types. Although this\nmeans there’s another type to learn about, it improves code clarity and helps\ncommunicates intent much better.\n\nIn other words, **ReactiveCocoa’s changes here are [simple, not\neasy](http://www.infoq.com/presentations/Simple-Made-Easy)**.\n\n### Typed errors\n\nWhen [signals][] and [signal producers][] are allowed to [fail][Events] in ReactiveCocoa,\nthe kind of error must be specified in the type system. For example,\n`Signal<Int, NSError>` is a signal of integer values that may fail with an error\nof type `NSError`.\n\nMore importantly, RAC allows the special type `NoError` to be used instead,\nwhich _statically guarantees_ that an event stream is not allowed to send a\nfailure. **This eliminates many bugs caused by unexpected failure events.**\n\nIn Rx systems with types, event streams only specify the type of their\nvalues—not the type of their errors—so this sort of guarantee is impossible.\n\n### UI programming\n\nRx is basically agnostic as to how it’s used. Although UI programming with Rx is\nvery common, it has few features tailored to that particular case.\n\nRAC takes a lot of inspiration from [ReactiveUI](http://reactiveui.net/),\nincluding the basis for [Actions][].\n\nUnlike ReactiveUI, which unfortunately cannot directly change Rx to make it more\nfriendly for UI programming, **ReactiveCocoa has been improved many times\nspecifically for this purpose**—even when it means diverging further from Rx.\n\n## Getting started\n\nReactiveCocoa supports `OS X 10.9+`, `iOS 8.0+`, `watchOS 2.0`, and `tvOS 9.0`.\n\nTo add RAC to your application:\n\n 1. Add the ReactiveCocoa repository as a\n    [submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules) of your\n    application’s repository.\n 1. Run `script/bootstrap` from within the ReactiveCocoa folder.\n 1. Drag and drop `ReactiveCocoa.xcodeproj` and `Carthage/Checkouts/Result/Result.xcodeproj`\n    into your application’s Xcode project or workspace.\n 1. On the “General” tab of your application target’s settings, add\n    `ReactiveCocoa.framework` and `Result.framework` to the “Embedded Binaries” section.\n 1. If your application target does not contain Swift code at all, you should also\n    set the `EMBEDDED_CONTENT_CONTAINS_SWIFT` build setting to “Yes”.\n\nOr, if you’re using [Carthage](https://github.com/Carthage/Carthage), simply add\nReactiveCocoa to your `Cartfile`:\n\n```\ngithub \"ReactiveCocoa/ReactiveCocoa\"\n```\nMake sure to add both `ReactiveCocoa.framework` and `Result.framework` to \"Linked Frameworks and Libraries\" and \"copy-frameworks\" Build Phases.\n\nIf you would prefer to use [CocoaPods](https://cocoapods.org), there are some\n[unofficial podspecs](https://github.com/CocoaPods/Specs/tree/master/Specs/ReactiveCocoa)\nthat have been generously contributed by third parties.\n\nOnce you’ve set up your project, check out the [Framework Overview][] for\na tour of ReactiveCocoa’s concepts, and the [Basic Operators][] for some\nintroductory examples of using it.\n\n## Playground\n\nWe also provide a great Playground, so you can get used to ReactiveCocoa's operators. In order to start using it:\n\n 1. Clone the ReactiveCocoa repository.\n 1. Retrieve the project dependencies using one of the following terminal commands from the ReactiveCocoa project root directory:\n     - `script/bootstrap` **OR**, if you have [Carthage](https://github.com/Carthage/Carthage) installed    \n     - `carthage checkout`\n 1. Open `ReactiveCocoa.xcworkspace`\n 1. Build `Result-Mac` scheme\n 1. Build `ReactiveCocoa-Mac` scheme\n 1. Finally open the `ReactiveCocoa.playground`\n 1. Choose `View > Show Debug Area`\n    \n[Actions]: Documentation/FrameworkOverview.md#actions\n[Basic Operators]: Documentation/BasicOperators.md\n[CHANGELOG]: CHANGELOG.md\n[Code]: ReactiveCocoa\n[Documentation]: Documentation\n[Events]: Documentation/FrameworkOverview.md#events\n[Framework Overview]: Documentation/FrameworkOverview.md\n[Legacy Documentation]: Documentation/Legacy\n[Objective-C API]: ReactiveCocoa/Objective-C\n[Objective-C Bridging]: Documentation/ObjectiveCBridging.md\n[Schedulers]: Documentation/FrameworkOverview.md#schedulers\n[Signal producers]: Documentation/FrameworkOverview.md#signal-producers\n[Signals]: Documentation/FrameworkOverview.md#signals\n[Swift API]: ReactiveCocoa/Swift\n[flatMapLatest]: Documentation/BasicOperators.md#switching-to-the-latest\n[retry]: Documentation/BasicOperators.md#retrying\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 GitHub. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/MKAnnotationView+RACSignalSupport.h",
    "content": "//\n//  MKAnnotationView+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Zak Remer on 3/31/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n#import <MapKit/MapKit.h>\n\n@class RACSignal;\n\n@interface MKAnnotationView (RACSignalSupport)\n\n/// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon\n/// the receiver.\n///\n/// Examples\n///\n///  [[[self.cancelButton\n///     rac_signalForControlEvents:UIControlEventTouchUpInside]\n///     takeUntil:self.rac_prepareForReuseSignal]\n///     subscribeNext:^(UIButton *x) {\n///         // do other things\n///     }];\n@property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/MKAnnotationView+RACSignalSupport.m",
    "content": "//\n//  MKAnnotationView+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Zak Remer on 3/31/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\n#import \"MKAnnotationView+RACSignalSupport.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACUnit.h\"\n#import <objc/runtime.h>\n\n@implementation MKAnnotationView (RACSignalSupport)\n\n- (RACSignal *)rac_prepareForReuseSignal {\n\tRACSignal *signal = objc_getAssociatedObject(self, _cmd);\n\tif (signal != nil) return signal;\n\n\tsignal = [[[self\n\t\trac_signalForSelector:@selector(prepareForReuse)]\n\t\tmapReplace:RACUnit.defaultUnit]\n\t\tsetNameWithFormat:@\"%@ -rac_prepareForReuseSignal\", RACDescription(self)];\n\n\tobjc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSArray+RACSequenceAdditions.h",
    "content": "//\n//  NSArray+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSArray (RACSequenceAdditions)\n\n/// Creates and returns a sequence corresponding to the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSArray+RACSequenceAdditions.m",
    "content": "//\n//  NSArray+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"RACArraySequence.h\"\n\n@implementation NSArray (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\treturn [RACArraySequence sequenceWithArray:self offset:0];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSControl+RACCommandSupport.h",
    "content": "//\n//  NSControl+RACCommandSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/3/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@class RACCommand<__contravariant InputType>;\n\n@interface NSControl (RACCommandSupport)\n\n/// Sets the control's command. When the control is clicked, the command is\n/// executed with the sender of the event. The control's enabledness is bound\n/// to the command's `canExecute`.\n///\n/// Note: this will reset the control's target and action.\n@property (nonatomic, strong) RACCommand<__kindof NSControl *> *rac_command;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSControl+RACCommandSupport.m",
    "content": "//\n//  NSControl+RACCommandSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/3/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSControl+RACCommandSupport.h\"\n#import \"RACCommand.h\"\n#import \"RACScopedDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import <objc/runtime.h>\n\nstatic void *NSControlRACCommandKey = &NSControlRACCommandKey;\nstatic void *NSControlEnabledDisposableKey = &NSControlEnabledDisposableKey;\n\n@implementation NSControl (RACCommandSupport)\n\n- (RACCommand *)rac_command {\n\treturn objc_getAssociatedObject(self, NSControlRACCommandKey);\n}\n\n- (void)setRac_command:(RACCommand *)command {\n\tobjc_setAssociatedObject(self, NSControlRACCommandKey, command, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\n\t// Tear down any previous binding before setting up our new one, or else we\n\t// might get assertion failures.\n\t[objc_getAssociatedObject(self, NSControlEnabledDisposableKey) dispose];\n\tobjc_setAssociatedObject(self, NSControlEnabledDisposableKey, nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\n\tif (command == nil) {\n\t\tself.enabled = YES;\n\t\treturn;\n\t}\n\t\n\t[self rac_hijackActionAndTargetIfNeeded];\n\n\tRACScopedDisposable *disposable = [[command.enabled setKeyPath:@\"enabled\" onObject:self] asScopedDisposable];\n\tobjc_setAssociatedObject(self, NSControlEnabledDisposableKey, disposable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n}\n\n- (void)rac_hijackActionAndTargetIfNeeded {\n\tSEL hijackSelector = @selector(rac_commandPerformAction:);\n\tif (self.target == self && self.action == hijackSelector) return;\n\t\n\tif (self.target != nil) NSLog(@\"WARNING: NSControl.rac_command hijacks the control's existing target and action.\");\n\t\n\tself.target = self;\n\tself.action = hijackSelector;\n}\n\n- (void)rac_commandPerformAction:(id)sender {\n\t[self.rac_command execute:sender];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSControl+RACTextSignalSupport.h",
    "content": "//\n//  NSControl+RACTextSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-03-08.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@class RACSignal;\n\n@interface NSControl (RACTextSignalSupport)\n\n/// Observes a text-based control for changes.\n///\n/// Using this method on a control without editable text is considered undefined\n/// behavior.\n///\n/// Returns a signal which sends the current string value of the receiver, then\n/// the new value any time it changes.\n- (RACSignal *)rac_textSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSControl+RACTextSignalSupport.m",
    "content": "//\n//  NSControl+RACTextSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-03-08.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSControl+RACTextSignalSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDescription.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n\n@implementation NSControl (RACTextSignalSupport)\n\n- (RACSignal *)rac_textSignal {\n\t@weakify(self);\n\treturn [[[[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t@strongify(self);\n\t\t\tid observer = [NSNotificationCenter.defaultCenter addObserverForName:NSControlTextDidChangeNotification object:self queue:nil usingBlock:^(NSNotification *note) {\n\t\t\t\t[subscriber sendNext:note.object];\n\t\t\t}];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t[NSNotificationCenter.defaultCenter removeObserver:observer];\n\t\t\t}];\n\t\t}]\n\t\tmap:^(NSControl *control) {\n\t\t\treturn [control.stringValue copy];\n\t\t}]\n\t\tstartWith:[self.stringValue copy]]\n\t\tsetNameWithFormat:@\"%@ -rac_textSignal\", RACDescription(self)];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSData+RACSupport.h",
    "content": "//\n//  NSData+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACScheduler;\n@class RACSignal;\n\n@interface NSData (RACSupport)\n\n// Read the data at the URL using -[NSData initWithContentsOfURL:options:error:].\n// Sends the data or the error.\n//\n// scheduler - cannot be nil.\n+ (RACSignal *)rac_readContentsOfURL:(NSURL *)URL options:(NSDataReadingOptions)options scheduler:(RACScheduler *)scheduler;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSData+RACSupport.m",
    "content": "//\n//  NSData+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSData+RACSupport.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n\n@implementation NSData (RACSupport)\n\n+ (RACSignal *)rac_readContentsOfURL:(NSURL *)URL options:(NSDataReadingOptions)options scheduler:(RACScheduler *)scheduler {\n\tNSCParameterAssert(scheduler != nil);\n\t\n\tRACReplaySubject *subject = [RACReplaySubject subject];\n\t[subject setNameWithFormat:@\"+rac_readContentsOfURL: %@ options: %lu scheduler: %@\", URL, (unsigned long)options, scheduler];\n\t\n\t[scheduler schedule:^{\n\t\tNSError *error = nil;\n\t\tNSData *data = [[NSData alloc] initWithContentsOfURL:URL options:options error:&error];\n\t\tif (data == nil) {\n\t\t\t[subject sendError:error];\n\t\t} else {\n\t\t\t[subject sendNext:data];\n\t\t\t[subject sendCompleted];\n\t\t}\n\t}];\n\t\n\treturn subject;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSDictionary+RACSequenceAdditions.h",
    "content": "//\n//  NSDictionary+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSDictionary (RACSequenceAdditions)\n\n/// Creates and returns a sequence of RACTuple key/value pairs. The key will be\n/// the first element in the tuple, and the value will be the second.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n/// Creates and returns a sequence corresponding to the keys in the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_keySequence;\n\n/// Creates and returns a sequence corresponding to the values in the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_valueSequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSDictionary+RACSequenceAdditions.m",
    "content": "//\n//  NSDictionary+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSDictionary+RACSequenceAdditions.h\"\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"RACSequence.h\"\n#import \"RACTuple.h\"\n\n@implementation NSDictionary (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\tNSDictionary *immutableDict = [self copy];\n\n\t// TODO: First class support for dictionary sequences.\n\treturn [immutableDict.allKeys.rac_sequence map:^(id key) {\n\t\tid value = immutableDict[key];\n\t\treturn RACTuplePack(key, value);\n\t}];\n}\n\n- (RACSequence *)rac_keySequence {\n\treturn self.allKeys.rac_sequence;\n}\n\n- (RACSequence *)rac_valueSequence {\n\treturn self.allValues.rac_sequence;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSEnumerator+RACSequenceAdditions.h",
    "content": "//\n//  NSEnumerator+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 07/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSEnumerator (RACSequenceAdditions)\n\n/// Creates and returns a sequence corresponding to the receiver.\n///\n/// The receiver is exhausted lazily as the sequence is enumerated.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSEnumerator+RACSequenceAdditions.m",
    "content": "//\n//  NSEnumerator+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 07/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSEnumerator+RACSequenceAdditions.h\"\n#import \"RACSequence.h\"\n\n@implementation NSEnumerator (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\treturn [RACSequence sequenceWithHeadBlock:^{\n\t\treturn [self nextObject];\n\t} tailBlock:^{\n\t\treturn self.rac_sequence;\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSFileHandle+RACSupport.h",
    "content": "//\n//  NSFileHandle+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/10/12.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n@interface NSFileHandle (RACSupport)\n\n// Read any available data in the background and send it. Completes when data\n// length is <= 0.\n- (RACSignal *)rac_readInBackground;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSFileHandle+RACSupport.m",
    "content": "//\n//  NSFileHandle+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/10/12.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSFileHandle+RACSupport.h\"\n#import \"NSNotificationCenter+RACSupport.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACDisposable.h\"\n\n@implementation NSFileHandle (RACSupport)\n\n- (RACSignal *)rac_readInBackground {\n\tRACReplaySubject *subject = [RACReplaySubject subject];\n\t[subject setNameWithFormat:@\"%@ -rac_readInBackground\", RACDescription(self)];\n\n\tRACSignal *dataNotification = [[[NSNotificationCenter defaultCenter] rac_addObserverForName:NSFileHandleReadCompletionNotification object:self] map:^(NSNotification *note) {\n\t\treturn note.userInfo[NSFileHandleNotificationDataItem];\n\t}];\n\t\n\t__block RACDisposable *subscription = [dataNotification subscribeNext:^(NSData *data) {\n\t\tif (data.length > 0) {\n\t\t\t[subject sendNext:data];\n\t\t\t[self readInBackgroundAndNotify];\n\t\t} else {\n\t\t\t[subject sendCompleted];\n\t\t\t[subscription dispose];\n\t\t}\n\t}];\n\t\n\t[self readInBackgroundAndNotify];\n\t\n\treturn subject;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSIndexSet+RACSequenceAdditions.h",
    "content": "//\n//  NSIndexSet+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Sergey Gavrilyuk on 12/17/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSIndexSet (RACSequenceAdditions)\n\n/// Creates and returns a sequence of indexes (as `NSNumber`s) corresponding to\n/// the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSIndexSet+RACSequenceAdditions.m",
    "content": "//\n//  NSIndexSet+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Sergey Gavrilyuk on 12/17/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSIndexSet+RACSequenceAdditions.h\"\n#import \"RACIndexSetSequence.h\"\n\n@implementation NSIndexSet (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\treturn [RACIndexSetSequence sequenceWithIndexSet:self];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSInvocation+RACTypeParsing.h",
    "content": "//\n//  NSInvocation+RACTypeParsing.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACTuple;\n\n// A private category of methods to handle wrapping and unwrapping of values.\n@interface NSInvocation (RACTypeParsing)\n\n// Sets the argument for the invocation at the given index by unboxing the given\n// object based on the type signature of the argument.\n//\n// This does not support C arrays or unions.\n//\n// Note that calling this on a char * or const char * argument can cause all\n// arguments to be retained.\n//\n// object - The object to unbox and set as the argument.\n// index  - The index of the argument to set.\n- (void)rac_setArgument:(id)object atIndex:(NSUInteger)index;\n\n// Gets the argument for the invocation at the given index based on the\n// invocation's method signature. The value is then wrapped in the appropriate\n// object type.\n//\n// This does not support C arrays or unions.\n//\n// index  - The index of the argument to get.\n//\n// Returns the argument of the invocation, wrapped in an object.\n- (id)rac_argumentAtIndex:(NSUInteger)index;\n\n// Arguments tuple for the invocation.\n//\n// The arguments tuple excludes implicit variables `self` and `_cmd`.\n//\n// See -rac_argumentAtIndex: and -rac_setArgumentAtIndex: for further\n// description of the underlying behavior.\n@property (nonatomic, copy) RACTuple *rac_argumentsTuple;\n\n// Gets the return value from the invocation based on the invocation's method\n// signature. The value is then wrapped in the appropriate object type.\n//\n// This does not support C arrays or unions.\n//\n// Returns the return value of the invocation, wrapped in an object. Voids are\n// returned as `RACUnit.defaultUnit`.\n- (id)rac_returnValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSInvocation+RACTypeParsing.m",
    "content": "//\n//  NSInvocation+RACTypeParsing.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSInvocation+RACTypeParsing.h\"\n#import \"RACTuple.h\"\n#import \"RACUnit.h\"\n#import <CoreGraphics/CoreGraphics.h>\n\n@implementation NSInvocation (RACTypeParsing)\n\n- (void)rac_setArgument:(id)object atIndex:(NSUInteger)index {\n#define PULL_AND_SET(type, selector) \\\n\tdo { \\\n\t\ttype val = [object selector]; \\\n\t\t[self setArgument:&val atIndex:(NSInteger)index]; \\\n\t} while (0)\n\n\tconst char *argType = [self.methodSignature getArgumentTypeAtIndex:index];\n\t// Skip const type qualifier.\n\tif (argType[0] == 'r') {\n\t\targType++;\n\t}\n\n\tif (strcmp(argType, @encode(id)) == 0 || strcmp(argType, @encode(Class)) == 0) {\n\t\t[self setArgument:&object atIndex:(NSInteger)index];\n\t} else if (strcmp(argType, @encode(char)) == 0) {\n\t\tPULL_AND_SET(char, charValue);\n\t} else if (strcmp(argType, @encode(int)) == 0) {\n\t\tPULL_AND_SET(int, intValue);\n\t} else if (strcmp(argType, @encode(short)) == 0) {\n\t\tPULL_AND_SET(short, shortValue);\n\t} else if (strcmp(argType, @encode(long)) == 0) {\n\t\tPULL_AND_SET(long, longValue);\n\t} else if (strcmp(argType, @encode(long long)) == 0) {\n\t\tPULL_AND_SET(long long, longLongValue);\n\t} else if (strcmp(argType, @encode(unsigned char)) == 0) {\n\t\tPULL_AND_SET(unsigned char, unsignedCharValue);\n\t} else if (strcmp(argType, @encode(unsigned int)) == 0) {\n\t\tPULL_AND_SET(unsigned int, unsignedIntValue);\n\t} else if (strcmp(argType, @encode(unsigned short)) == 0) {\n\t\tPULL_AND_SET(unsigned short, unsignedShortValue);\n\t} else if (strcmp(argType, @encode(unsigned long)) == 0) {\n\t\tPULL_AND_SET(unsigned long, unsignedLongValue);\n\t} else if (strcmp(argType, @encode(unsigned long long)) == 0) {\n\t\tPULL_AND_SET(unsigned long long, unsignedLongLongValue);\n\t} else if (strcmp(argType, @encode(float)) == 0) {\n\t\tPULL_AND_SET(float, floatValue);\n\t} else if (strcmp(argType, @encode(double)) == 0) {\n\t\tPULL_AND_SET(double, doubleValue);\n\t} else if (strcmp(argType, @encode(BOOL)) == 0) {\n\t\tPULL_AND_SET(BOOL, boolValue);\n\t} else if (strcmp(argType, @encode(char *)) == 0) {\n\t\tconst char *cString = [object UTF8String];\n\t\t[self setArgument:&cString atIndex:(NSInteger)index];\n\t\t[self retainArguments];\n\t} else if (strcmp(argType, @encode(void (^)(void))) == 0) {\n\t\t[self setArgument:&object atIndex:(NSInteger)index];\n\t} else {\n\t\tNSCParameterAssert([object isKindOfClass:NSValue.class]);\n\n\t\tNSUInteger valueSize = 0;\n\t\tNSGetSizeAndAlignment([object objCType], &valueSize, NULL);\n\n#if DEBUG\n\t\tNSUInteger argSize = 0;\n\t\tNSGetSizeAndAlignment(argType, &argSize, NULL);\n\t\tNSCAssert(valueSize == argSize, @\"Value size does not match argument size in -rac_setArgument: %@ atIndex: %lu\", object, (unsigned long)index);\n#endif\n\t\t\n\t\tunsigned char valueBytes[valueSize];\n\t\t[object getValue:valueBytes];\n\n\t\t[self setArgument:valueBytes atIndex:(NSInteger)index];\n\t}\n\n#undef PULL_AND_SET\n}\n\n- (id)rac_argumentAtIndex:(NSUInteger)index {\n#define WRAP_AND_RETURN(type) \\\n\tdo { \\\n\t\ttype val = 0; \\\n\t\t[self getArgument:&val atIndex:(NSInteger)index]; \\\n\t\treturn @(val); \\\n\t} while (0)\n\n\tconst char *argType = [self.methodSignature getArgumentTypeAtIndex:index];\n\t// Skip const type qualifier.\n\tif (argType[0] == 'r') {\n\t\targType++;\n\t}\n\n\tif (strcmp(argType, @encode(id)) == 0 || strcmp(argType, @encode(Class)) == 0) {\n\t\t__autoreleasing id returnObj;\n\t\t[self getArgument:&returnObj atIndex:(NSInteger)index];\n\t\treturn returnObj;\n\t} else if (strcmp(argType, @encode(char)) == 0) {\n\t\tWRAP_AND_RETURN(char);\n\t} else if (strcmp(argType, @encode(int)) == 0) {\n\t\tWRAP_AND_RETURN(int);\n\t} else if (strcmp(argType, @encode(short)) == 0) {\n\t\tWRAP_AND_RETURN(short);\n\t} else if (strcmp(argType, @encode(long)) == 0) {\n\t\tWRAP_AND_RETURN(long);\n\t} else if (strcmp(argType, @encode(long long)) == 0) {\n\t\tWRAP_AND_RETURN(long long);\n\t} else if (strcmp(argType, @encode(unsigned char)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned char);\n\t} else if (strcmp(argType, @encode(unsigned int)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned int);\n\t} else if (strcmp(argType, @encode(unsigned short)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned short);\n\t} else if (strcmp(argType, @encode(unsigned long)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned long);\n\t} else if (strcmp(argType, @encode(unsigned long long)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned long long);\n\t} else if (strcmp(argType, @encode(float)) == 0) {\n\t\tWRAP_AND_RETURN(float);\n\t} else if (strcmp(argType, @encode(double)) == 0) {\n\t\tWRAP_AND_RETURN(double);\n\t} else if (strcmp(argType, @encode(BOOL)) == 0) {\n\t\tWRAP_AND_RETURN(BOOL);\n\t} else if (strcmp(argType, @encode(char *)) == 0) {\n\t\tWRAP_AND_RETURN(const char *);\n\t} else if (strcmp(argType, @encode(void (^)(void))) == 0) {\n\t\t__unsafe_unretained id block = nil;\n\t\t[self getArgument:&block atIndex:(NSInteger)index];\n\t\treturn [block copy];\n\t} else {\n\t\tNSUInteger valueSize = 0;\n\t\tNSGetSizeAndAlignment(argType, &valueSize, NULL);\n\n\t\tunsigned char valueBytes[valueSize];\n\t\t[self getArgument:valueBytes atIndex:(NSInteger)index];\n\t\t\n\t\treturn [NSValue valueWithBytes:valueBytes objCType:argType];\n\t}\n\n\treturn nil;\n\n#undef WRAP_AND_RETURN\n}\n\n- (RACTuple *)rac_argumentsTuple {\n\tNSUInteger numberOfArguments = self.methodSignature.numberOfArguments;\n\tNSMutableArray *argumentsArray = [NSMutableArray arrayWithCapacity:numberOfArguments - 2];\n\tfor (NSUInteger index = 2; index < numberOfArguments; index++) {\n\t\t[argumentsArray addObject:[self rac_argumentAtIndex:index] ?: RACTupleNil.tupleNil];\n\t}\n\n\treturn [RACTuple tupleWithObjectsFromArray:argumentsArray];\n}\n\n- (void)setRac_argumentsTuple:(RACTuple *)arguments {\n\tNSCAssert(arguments.count == self.methodSignature.numberOfArguments - 2, @\"Number of supplied arguments (%lu), does not match the number expected by the signature (%lu)\", (unsigned long)arguments.count, (unsigned long)self.methodSignature.numberOfArguments - 2);\n\n\tNSUInteger index = 2;\n\tfor (id arg in arguments) {\n\t\t[self rac_setArgument:(arg == RACTupleNil.tupleNil ? nil : arg) atIndex:index];\n\t\tindex++;\n\t}\n}\n\n- (id)rac_returnValue {\n#define WRAP_AND_RETURN(type) \\\n\tdo { \\\n\t\ttype val = 0; \\\n\t\t[self getReturnValue:&val]; \\\n\t\treturn @(val); \\\n\t} while (0)\n\n\tconst char *returnType = self.methodSignature.methodReturnType;\n\t// Skip const type qualifier.\n\tif (returnType[0] == 'r') {\n\t\treturnType++;\n\t}\n\n\tif (strcmp(returnType, @encode(id)) == 0 || strcmp(returnType, @encode(Class)) == 0 || strcmp(returnType, @encode(void (^)(void))) == 0) {\n\t\t__autoreleasing id returnObj;\n\t\t[self getReturnValue:&returnObj];\n\t\treturn returnObj;\n\t} else if (strcmp(returnType, @encode(char)) == 0) {\n\t\tWRAP_AND_RETURN(char);\n\t} else if (strcmp(returnType, @encode(int)) == 0) {\n\t\tWRAP_AND_RETURN(int);\n\t} else if (strcmp(returnType, @encode(short)) == 0) {\n\t\tWRAP_AND_RETURN(short);\n\t} else if (strcmp(returnType, @encode(long)) == 0) {\n\t\tWRAP_AND_RETURN(long);\n\t} else if (strcmp(returnType, @encode(long long)) == 0) {\n\t\tWRAP_AND_RETURN(long long);\n\t} else if (strcmp(returnType, @encode(unsigned char)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned char);\n\t} else if (strcmp(returnType, @encode(unsigned int)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned int);\n\t} else if (strcmp(returnType, @encode(unsigned short)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned short);\n\t} else if (strcmp(returnType, @encode(unsigned long)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned long);\n\t} else if (strcmp(returnType, @encode(unsigned long long)) == 0) {\n\t\tWRAP_AND_RETURN(unsigned long long);\n\t} else if (strcmp(returnType, @encode(float)) == 0) {\n\t\tWRAP_AND_RETURN(float);\n\t} else if (strcmp(returnType, @encode(double)) == 0) {\n\t\tWRAP_AND_RETURN(double);\n\t} else if (strcmp(returnType, @encode(BOOL)) == 0) {\n\t\tWRAP_AND_RETURN(BOOL);\n\t} else if (strcmp(returnType, @encode(char *)) == 0) {\n\t\tWRAP_AND_RETURN(const char *);\n\t} else if (strcmp(returnType, @encode(void)) == 0) {\n\t\treturn RACUnit.defaultUnit;\n\t} else {\n\t\tNSUInteger valueSize = 0;\n\t\tNSGetSizeAndAlignment(returnType, &valueSize, NULL);\n\n\t\tunsigned char valueBytes[valueSize];\n\t\t[self getReturnValue:valueBytes];\n\n\t\treturn [NSValue valueWithBytes:valueBytes objCType:returnType];\n\t}\n\n\treturn nil;\n\n#undef WRAP_AND_RETURN\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSNotificationCenter+RACSupport.h",
    "content": "//\n//  NSNotificationCenter+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/10/12.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n@interface NSNotificationCenter (RACSupport)\n\n// Sends the NSNotification every time the notification is posted.\n- (RACSignal *)rac_addObserverForName:(NSString *)notificationName object:(id)object;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSNotificationCenter+RACSupport.m",
    "content": "//\n//  NSNotificationCenter+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/10/12.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSNotificationCenter+RACSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n#import \"RACDisposable.h\"\n\n@implementation NSNotificationCenter (RACSupport)\n\n- (RACSignal *)rac_addObserverForName:(NSString *)notificationName object:(id)object {\n\t@unsafeify(object);\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t@strongify(object);\n\t\tid observer = [self addObserverForName:notificationName object:object queue:nil usingBlock:^(NSNotification *note) {\n\t\t\t[subscriber sendNext:note];\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[self removeObserver:observer];\n\t\t}];\n\t}] setNameWithFormat:@\"-rac_addObserverForName: %@ object: <%@: %p>\", notificationName, [object class], object];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACAppKitBindings.h",
    "content": "//\n//  NSObject+RACAppKitBindings.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@class RACChannelTerminal;\n\n@interface NSObject (RACAppKitBindings)\n\n/// Invokes -rac_channelToBinding:options: without any options.\n- (RACChannelTerminal *)rac_channelToBinding:(NSString *)binding;\n\n/// Applies a Cocoa binding to the receiver, then exposes a RACChannel-based\n/// interface for manipulating it.\n///\n/// Creating two of the same bindings on the same object will result in undefined\n/// behavior.\n///\n/// binding - The name of the binding. This must not be nil.\n/// options - Any options to pass to Cocoa Bindings. This may be nil.\n///\n/// Returns a RACChannelTerminal which will send future values from the receiver,\n/// and update the receiver when values are sent to the terminal.\n- (RACChannelTerminal *)rac_channelToBinding:(NSString *)binding options:(NSDictionary *)options;\n\n@end\n\n@interface NSObject (RACUnavailableAppKitBindings)\n\n- (void)rac_bind:(NSString *)binding toObject:(id)object withKeyPath:(NSString *)keyPath __attribute__((unavailable(\"Use -rac_bind:options: instead\")));\n- (void)rac_bind:(NSString *)binding toObject:(id)object withKeyPath:(NSString *)keyPath nilValue:(id)nilValue __attribute__((unavailable(\"Use -rac_bind:options: instead\")));\n- (void)rac_bind:(NSString *)binding toObject:(id)object withKeyPath:(NSString *)keyPath transform:(id (^)(id value))transformBlock __attribute__((unavailable(\"Use -rac_bind:options: instead\")));\n- (void)rac_bind:(NSString *)binding toObject:(id)object withNegatedKeyPath:(NSString *)keyPath __attribute__((unavailable(\"Use -rac_bind:options: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACAppKitBindings.m",
    "content": "//\n//  NSObject+RACAppKitBindings.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACAppKitBindings.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACChannel.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOChannel.h\"\n#import \"RACValueTransformer.h\"\n#import <objc/runtime.h>\n\n// Used as an object to bind to, so we can hide the object creation and just\n// expose a RACChannel instead.\n@interface RACChannelProxy : NSObject\n\n// The RACChannel used for this Cocoa binding.\n@property (nonatomic, strong, readonly) RACChannel *channel;\n\n// The KVC- and KVO-compliant property to be read and written by the Cocoa\n// binding.\n//\n// This should not be set manually.\n@property (nonatomic, strong) id value;\n\n// The target of the Cocoa binding.\n//\n// This should be set to nil when the target deallocates.\n@property (atomic, unsafe_unretained) id target;\n\n// The name of the Cocoa binding used.\n@property (nonatomic, copy, readonly) NSString *bindingName;\n\n// Improves the performance of KVO on the receiver.\n//\n// See the documentation for <NSKeyValueObserving> for more information.\n@property (atomic, assign) void *observationInfo;\n\n// Initializes the receiver and binds to the given target.\n//\n// target      - The target of the Cocoa binding. This must not be nil.\n// bindingName - The name of the Cocoa binding to use. This must not be nil.\n// options     - Any options to pass to the binding. This may be nil.\n//\n// Returns an initialized channel proxy.\n- (id)initWithTarget:(id)target bindingName:(NSString *)bindingName options:(NSDictionary *)options;\n\n@end\n\n@implementation NSObject (RACAppKitBindings)\n\n- (RACChannelTerminal *)rac_channelToBinding:(NSString *)binding {\n\treturn [self rac_channelToBinding:binding options:nil];\n}\n\n- (RACChannelTerminal *)rac_channelToBinding:(NSString *)binding options:(NSDictionary *)options {\n\tNSCParameterAssert(binding != nil);\n\n\tRACChannelProxy *proxy = [[RACChannelProxy alloc] initWithTarget:self bindingName:binding options:options];\n\treturn proxy.channel.leadingTerminal;\n}\n\n@end\n\n@implementation RACChannelProxy\n\n#pragma mark Properties\n\n- (void)setValue:(id)value {\n\t[self willChangeValueForKey:@keypath(self.value)];\n\t_value = value;\n\t[self didChangeValueForKey:@keypath(self.value)];\n}\n\n#pragma mark Lifecycle\n\n- (id)initWithTarget:(id)target bindingName:(NSString *)bindingName options:(NSDictionary *)options {\n\tNSCParameterAssert(target != nil);\n\tNSCParameterAssert(bindingName != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_target = target;\n\t_bindingName = [bindingName copy];\n\t_channel = [[RACChannel alloc] init];\n\n\t@weakify(self);\n\n\tvoid (^cleanUp)() = ^{\n\t\t@strongify(self);\n\n\t\tid target = self.target;\n\t\tif (target == nil) return;\n\n\t\tself.target = nil;\n\n\t\t[target unbind:bindingName];\n\t\tobjc_setAssociatedObject(target, (__bridge void *)self, nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t};\n\n\t// When the channel terminates, tear down this proxy.\n\t[self.channel.followingTerminal subscribeError:^(NSError *error) {\n\t\tcleanUp();\n\t} completed:cleanUp];\n\n\t[self.target bind:bindingName toObject:self withKeyPath:@keypath(self.value) options:options];\n\n\t// Keep the proxy alive as long as the target, or until the property subject\n\t// terminates.\n\tobjc_setAssociatedObject(self.target, (__bridge void *)self, self, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\n\t[[self.target rac_deallocDisposable] addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t@strongify(self);\n\t\t[self.channel.followingTerminal sendCompleted];\n\t}]];\n\n\tRACChannelTo(self, value, options[NSNullPlaceholderBindingOption]) = self.channel.followingTerminal;\n\treturn self;\n}\n\n- (void)dealloc {\n\t[self.channel.followingTerminal sendCompleted];\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ target: %@, binding: %@ }\", self.class, self, self.target, self.bindingName];\n}\n\n#pragma mark NSKeyValueObserving\n\n+ (BOOL)automaticallyNotifiesObserversForKey:(NSString *)key {\n\t// Generating manual notifications for `value` is simpler and more\n\t// performant than having KVO swizzle our class and add its own logic.\n\treturn NO;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACDeallocating.h",
    "content": "//\n//  NSObject+RACDeallocating.h\n//  ReactiveCocoa\n//\n//  Created by Kazuo Koga on 2013/03/15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACCompoundDisposable;\n@class RACDisposable;\n@class RACSignal;\n\n@interface NSObject (RACDeallocating)\n\n/// The compound disposable which will be disposed of when the receiver is\n/// deallocated.\n@property (atomic, readonly, strong) RACCompoundDisposable *rac_deallocDisposable;\n\n/// Returns a signal that will complete immediately before the receiver is fully\n/// deallocated. If already deallocated when the signal is subscribed to,\n/// a `completed` event will be sent immediately.\n- (RACSignal *)rac_willDeallocSignal;\n\n@end\n\n@interface NSObject (RACUnavailableDeallocating)\n\n- (RACSignal *)rac_didDeallocSignal __attribute__((unavailable(\"Use -rac_willDeallocSignal\")));\n- (void)rac_addDeallocDisposable:(RACDisposable *)disposable __attribute__((unavailable(\"Add disposables to -rac_deallocDisposable instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACDeallocating.m",
    "content": "//\n//  NSObject+RACDeallocating.m\n//  ReactiveCocoa\n//\n//  Created by Kazuo Koga on 2013/03/15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACReplaySubject.h\"\n#import <objc/message.h>\n#import <objc/runtime.h>\n\nstatic const void *RACObjectCompoundDisposable = &RACObjectCompoundDisposable;\n\nstatic NSMutableSet *swizzledClasses() {\n\tstatic dispatch_once_t onceToken;\n\tstatic NSMutableSet *swizzledClasses = nil;\n\tdispatch_once(&onceToken, ^{\n\t\tswizzledClasses = [[NSMutableSet alloc] init];\n\t});\n\t\n\treturn swizzledClasses;\n}\n\nstatic void swizzleDeallocIfNeeded(Class classToSwizzle) {\n\t@synchronized (swizzledClasses()) {\n\t\tNSString *className = NSStringFromClass(classToSwizzle);\n\t\tif ([swizzledClasses() containsObject:className]) return;\n\n\t\tSEL deallocSelector = sel_registerName(\"dealloc\");\n\n\t\t__block void (*originalDealloc)(__unsafe_unretained id, SEL) = NULL;\n\n\t\tid newDealloc = ^(__unsafe_unretained id self) {\n\t\t\tRACCompoundDisposable *compoundDisposable = objc_getAssociatedObject(self, RACObjectCompoundDisposable);\n\t\t\t[compoundDisposable dispose];\n\n\t\t\tif (originalDealloc == NULL) {\n\t\t\t\tstruct objc_super superInfo = {\n\t\t\t\t\t.receiver = self,\n\t\t\t\t\t.super_class = class_getSuperclass(classToSwizzle)\n\t\t\t\t};\n\n\t\t\t\tvoid (*msgSend)(struct objc_super *, SEL) = (__typeof__(msgSend))objc_msgSendSuper;\n\t\t\t\tmsgSend(&superInfo, deallocSelector);\n\t\t\t} else {\n\t\t\t\toriginalDealloc(self, deallocSelector);\n\t\t\t}\n\t\t};\n\t\t\n\t\tIMP newDeallocIMP = imp_implementationWithBlock(newDealloc);\n\t\t\n\t\tif (!class_addMethod(classToSwizzle, deallocSelector, newDeallocIMP, \"v@:\")) {\n\t\t\t// The class already contains a method implementation.\n\t\t\tMethod deallocMethod = class_getInstanceMethod(classToSwizzle, deallocSelector);\n\t\t\t\n\t\t\t// We need to store original implementation before setting new implementation\n\t\t\t// in case method is called at the time of setting.\n\t\t\toriginalDealloc = (__typeof__(originalDealloc))method_getImplementation(deallocMethod);\n\t\t\t\n\t\t\t// We need to store original implementation again, in case it just changed.\n\t\t\toriginalDealloc = (__typeof__(originalDealloc))method_setImplementation(deallocMethod, newDeallocIMP);\n\t\t}\n\n\t\t[swizzledClasses() addObject:className];\n\t}\n}\n\n@implementation NSObject (RACDeallocating)\n\n- (RACSignal *)rac_willDeallocSignal {\n\tRACSignal *signal = objc_getAssociatedObject(self, _cmd);\n\tif (signal != nil) return signal;\n\n\tRACReplaySubject *subject = [RACReplaySubject subject];\n\n\t[self.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t[subject sendCompleted];\n\t}]];\n\n\tobjc_setAssociatedObject(self, _cmd, subject, OBJC_ASSOCIATION_RETAIN);\n\n\treturn subject;\n}\n\n- (RACCompoundDisposable *)rac_deallocDisposable {\n\t@synchronized (self) {\n\t\tRACCompoundDisposable *compoundDisposable = objc_getAssociatedObject(self, RACObjectCompoundDisposable);\n\t\tif (compoundDisposable != nil) return compoundDisposable;\n\n\t\tswizzleDeallocIfNeeded(self.class);\n\n\t\tcompoundDisposable = [RACCompoundDisposable compoundDisposable];\n\t\tobjc_setAssociatedObject(self, RACObjectCompoundDisposable, compoundDisposable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\n\t\treturn compoundDisposable;\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACDescription.h",
    "content": "//\n//  NSObject+RACDescription.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n// A simplified description of the object, which does not invoke -description\n// (and thus should be much faster in many cases).\n//\n// This is for debugging purposes only, and will return a constant string\n// unless the RAC_DEBUG_SIGNAL_NAMES environment variable is set.\nNSString *RACDescription(id object);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACDescription.m",
    "content": "//\n//  NSObject+RACDescription.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACDescription.h\"\n#import \"RACTuple.h\"\n\n@implementation NSValue (RACDescription)\n\n- (NSString *)rac_description {\n\treturn self.description;\n}\n\n@end\n\n@implementation NSString (RACDescription)\n\n- (NSString *)rac_description {\n\treturn self.description;\n}\n\n@end\n\n@implementation RACTuple (RACDescription)\n\n- (NSString *)rac_description {\n\tif (getenv(\"RAC_DEBUG_SIGNAL_NAMES\") != NULL) {\n\t\treturn self.allObjects.description;\n\t} else {\n\t\treturn @\"(description skipped)\";\n\t}\n}\n\n@end\n\nNSString *RACDescription(id object) {\n\tif (getenv(\"RAC_DEBUG_SIGNAL_NAMES\") != NULL) {\n\t\tif ([object respondsToSelector:@selector(rac_description)]) {\n\t\t\treturn [object rac_description];\n\t\t} else {\n\t\t\treturn [[NSString alloc] initWithFormat:@\"<%@: %p>\", [object class], object];\n\t\t}\n\t} else {\n\t\treturn @\"(description skipped)\";\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACKVOWrapper.h",
    "content": "//\n//  NSObject+RACKVOWrapper.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/11/11.\n//  Copyright (c) 2011 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACDisposable;\n@class RACKVOTrampoline;\n\n// A private category providing a block based interface to KVO.\n@interface NSObject (RACKVOWrapper)\n\n// Adds the given block as the callbacks for when the key path changes.\n//\n// Unlike direct KVO observation, this handles deallocation of `weak` properties\n// by generating an appropriate notification. This will only occur if there is\n// an `@property` declaration visible in the observed class, with the `weak`\n// memory management attribute.\n//\n// The observation does not need to be explicitly removed. It will be removed\n// when the observer or the receiver deallocate.\n//\n// keyPath  - The key path to observe. Must not be nil.\n// options  - The KVO observation options.\n// observer - The object that requested the observation. May be nil.\n// block    - The block called when the value at the key path changes. It is\n//            passed the current value of the key path and the extended KVO\n//            change dictionary including RAC-specific keys and values. Must not\n//            be nil.\n//\n// Returns a disposable that can be used to stop the observation.\n- (RACDisposable *)rac_observeKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(__weak NSObject *)observer block:(void (^)(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent))block;\n\n@end\n\ntypedef void (^RACKVOBlock)(id target, id observer, NSDictionary *change);\n\n@interface NSObject (RACUnavailableKVOWrapper)\n\n- (RACKVOTrampoline *)rac_addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options block:(RACKVOBlock)block __attribute((unavailable(\"Use rac_observeKeyPath:options:observer:block: instead.\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACKVOWrapper.m",
    "content": "//\n//  NSObject+RACKVOWrapper.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/11/11.\n//  Copyright (c) 2011 GitHub. All rights reserved.\n//\n\n#import \"NSObject+RACKVOWrapper.h\"\n#import <ReactiveCocoa/EXTRuntimeExtensions.h>\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSString+RACKeyPathUtilities.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOTrampoline.h\"\n#import \"RACSerialDisposable.h\"\n\n@implementation NSObject (RACKVOWrapper)\n\n- (RACDisposable *)rac_observeKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(__weak NSObject *)weakObserver block:(void (^)(id, NSDictionary *, BOOL, BOOL))block {\n\tNSCParameterAssert(block != nil);\n\tNSCParameterAssert(keyPath.rac_keyPathComponents.count > 0);\n\n\tkeyPath = [keyPath copy];\n\n\tNSObject *strongObserver = weakObserver;\n\n\tNSArray *keyPathComponents = keyPath.rac_keyPathComponents;\n\tBOOL keyPathHasOneComponent = (keyPathComponents.count == 1);\n\tNSString *keyPathHead = keyPathComponents[0];\n\tNSString *keyPathTail = keyPath.rac_keyPathByDeletingFirstKeyPathComponent;\n\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t// The disposable that groups all disposal necessary to clean up the callbacks\n\t// added to the value of the first key path component.\n\tRACSerialDisposable *firstComponentSerialDisposable = [RACSerialDisposable serialDisposableWithDisposable:[RACCompoundDisposable compoundDisposable]];\n\tRACCompoundDisposable * (^firstComponentDisposable)(void) = ^{\n\t\treturn (RACCompoundDisposable *)firstComponentSerialDisposable.disposable;\n\t};\n\n\t[disposable addDisposable:firstComponentSerialDisposable];\n\n\tBOOL shouldAddDeallocObserver = NO;\n\n\tobjc_property_t property = class_getProperty(object_getClass(self), keyPathHead.UTF8String);\n\tif (property != NULL) {\n\t\trac_propertyAttributes *attributes = rac_copyPropertyAttributes(property);\n\t\tif (attributes != NULL) {\n\t\t\t@onExit {\n\t\t\t\tfree(attributes);\n\t\t\t};\n\n\t\t\tBOOL isObject = attributes->objectClass != nil || strstr(attributes->type, @encode(id)) == attributes->type;\n\t\t\tBOOL isProtocol = attributes->objectClass == NSClassFromString(@\"Protocol\");\n\t\t\tBOOL isBlock = strcmp(attributes->type, @encode(void(^)())) == 0;\n\t\t\tBOOL isWeak = attributes->weak;\n\n\t\t\t// If this property isn't actually an object (or is a Class object),\n\t\t\t// no point in observing the deallocation of the wrapper returned by\n\t\t\t// KVC.\n\t\t\t//\n\t\t\t// If this property is an object, but not declared `weak`, we\n\t\t\t// don't need to watch for it spontaneously being set to nil.\n\t\t\t//\n\t\t\t// Attempting to observe non-weak properties will result in\n\t\t\t// broken behavior for dynamic getters, so don't even try.\n\t\t\tshouldAddDeallocObserver = isObject && isWeak && !isBlock && !isProtocol;\n\t\t}\n\t}\n\n\t// Adds the callback block to the value's deallocation. Also adds the logic to\n\t// clean up the callback to the firstComponentDisposable.\n\tvoid (^addDeallocObserverToPropertyValue)(NSObject *) = ^(NSObject *value) {\n\t\tif (!shouldAddDeallocObserver) return;\n\n\t\t// If a key path value is the observer, commonly when a key path begins\n\t\t// with \"self\", we prevent deallocation triggered callbacks for any such key\n\t\t// path components. Thus, the observer's deallocation is not considered a\n\t\t// change to the key path.\n\t\tif (value == weakObserver) return;\n\n\t\tNSDictionary *change = @{\n\t\t\tNSKeyValueChangeKindKey: @(NSKeyValueChangeSetting),\n\t\t\tNSKeyValueChangeNewKey: NSNull.null,\n\t\t};\n\n\t\tRACCompoundDisposable *valueDisposable = value.rac_deallocDisposable;\n\t\tRACDisposable *deallocDisposable = [RACDisposable disposableWithBlock:^{\n\t\t\tblock(nil, change, YES, keyPathHasOneComponent);\n\t\t}];\n\n\t\t[valueDisposable addDisposable:deallocDisposable];\n\t\t[firstComponentDisposable() addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t[valueDisposable removeDisposable:deallocDisposable];\n\t\t}]];\n\t};\n\n\t// Adds the callback block to the remaining path components on the value. Also\n\t// adds the logic to clean up the callbacks to the firstComponentDisposable.\n\tvoid (^addObserverToValue)(NSObject *) = ^(NSObject *value) {\n\t\tRACDisposable *observerDisposable = [value rac_observeKeyPath:keyPathTail options:(options & ~NSKeyValueObservingOptionInitial) observer:weakObserver block:block];\n\t\t[firstComponentDisposable() addDisposable:observerDisposable];\n\t};\n\n\t// Observe only the first key path component, when the value changes clean up\n\t// the callbacks on the old value, add callbacks to the new value and call the\n\t// callback block as needed.\n\t//\n\t// Note this does not use NSKeyValueObservingOptionInitial so this only\n\t// handles changes to the value, callbacks to the initial value must be added\n\t// separately.\n\tNSKeyValueObservingOptions trampolineOptions = (options | NSKeyValueObservingOptionPrior) & ~NSKeyValueObservingOptionInitial;\n\tRACKVOTrampoline *trampoline = [[RACKVOTrampoline alloc] initWithTarget:self observer:strongObserver keyPath:keyPathHead options:trampolineOptions block:^(id trampolineTarget, id trampolineObserver, NSDictionary *change) {\n\t\t// If this is a prior notification, clean up all the callbacks added to the\n\t\t// previous value and call the callback block. Everything else is deferred\n\t\t// until after we get the notification after the change.\n\t\tif ([change[NSKeyValueChangeNotificationIsPriorKey] boolValue]) {\n\t\t\t[firstComponentDisposable() dispose];\n\n\t\t\tif ((options & NSKeyValueObservingOptionPrior) != 0) {\n\t\t\t\tblock([trampolineTarget valueForKeyPath:keyPath], change, NO, keyPathHasOneComponent);\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// From here the notification is not prior.\n\t\tNSObject *value = [trampolineTarget valueForKey:keyPathHead];\n\n\t\t// If the value has changed but is nil, there is no need to add callbacks to\n\t\t// it, just call the callback block.\n\t\tif (value == nil) {\n\t\t\tblock(nil, change, NO, keyPathHasOneComponent);\n\t\t\treturn;\n\t\t}\n\n\t\t// From here the notification is not prior and the value is not nil.\n\n\t\t// Create a new firstComponentDisposable while getting rid of the old one at\n\t\t// the same time, in case this is being called concurrently.\n\t\tRACDisposable *oldFirstComponentDisposable = [firstComponentSerialDisposable swapInDisposable:[RACCompoundDisposable compoundDisposable]];\n\t\t[oldFirstComponentDisposable dispose];\n\n\t\taddDeallocObserverToPropertyValue(value);\n\n\t\t// If there are no further key path components, there is no need to add the\n\t\t// other callbacks, just call the callback block with the value itself.\n\t\tif (keyPathHasOneComponent) {\n\t\t\tblock(value, change, NO, keyPathHasOneComponent);\n\t\t\treturn;\n\t\t}\n\n\t\t// The value has changed, is not nil, and there are more key path components\n\t\t// to consider. Add the callbacks to the value for the remaining key path\n\t\t// components and call the callback block with the current value of the full\n\t\t// key path.\n\t\taddObserverToValue(value);\n\t\tblock([value valueForKeyPath:keyPathTail], change, NO, keyPathHasOneComponent);\n\t}];\n\n\t// Stop the KVO observation when this one is disposed of.\n\t[disposable addDisposable:trampoline];\n\n\t// Add the callbacks to the initial value if needed.\n\tNSObject *value = [self valueForKey:keyPathHead];\n\tif (value != nil) {\n\t\taddDeallocObserverToPropertyValue(value);\n\n\t\tif (!keyPathHasOneComponent) {\n\t\t\taddObserverToValue(value);\n\t\t}\n\t}\n\n\t// Call the block with the initial value if needed.\n\tif ((options & NSKeyValueObservingOptionInitial) != 0) {\n\t\tid initialValue = [self valueForKeyPath:keyPath];\n\t\tNSDictionary *initialChange = @{\n\t\t\tNSKeyValueChangeKindKey: @(NSKeyValueChangeSetting),\n\t\t\tNSKeyValueChangeNewKey: initialValue ?: NSNull.null,\n\t\t};\n\t\tblock(initialValue, initialChange, NO, keyPathHasOneComponent);\n\t}\n\n\n\tRACCompoundDisposable *observerDisposable = strongObserver.rac_deallocDisposable;\n\tRACCompoundDisposable *selfDisposable = self.rac_deallocDisposable;\n\t// Dispose of this observation if the receiver or the observer deallocate.\n\t[observerDisposable addDisposable:disposable];\n\t[selfDisposable addDisposable:disposable];\n\n\treturn [RACDisposable disposableWithBlock:^{\n\t\t[disposable dispose];\n\t\t[observerDisposable removeDisposable:disposable];\n\t\t[selfDisposable removeDisposable:disposable];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACLifting.h",
    "content": "//\n//  NSObject+RACLifting.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/13/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n@interface NSObject (RACLifting)\n\n/// Lifts the selector on the receiver into the reactive world. The selector will\n/// be invoked whenever any signal argument sends a value, but only after each\n/// signal has sent an initial value.\n///\n/// It will replay the most recently sent value to new subscribers.\n///\n/// This does not support C arrays or unions.\n///\n/// selector    - The selector on self to invoke.\n/// firstSignal - The signal corresponding to the first method argument. This\n///               must not be nil.\n/// ...         - A list of RACSignals corresponding to the remaining arguments.\n///               There must be a non-nil signal for each method argument.\n///\n/// Examples\n///\n///   [button rac_liftSelector:@selector(setTitleColor:forState:) withSignals:textColorSignal, [RACSignal return:@(UIControlStateNormal)], nil];\n///\n/// Returns a signal which sends the return value from each invocation of the\n/// selector. If the selector returns void, it instead sends RACUnit.defaultUnit.\n/// It completes only after all the signal arguments complete.\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignals:(RACSignal *)firstSignal, ... NS_REQUIRES_NIL_TERMINATION;\n\n/// Like -rac_liftSelector:withSignals:, but accepts an array instead of\n/// a variadic list of arguments.\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignalsFromArray:(NSArray *)signals;\n\n/// Like -rac_liftSelector:withSignals:, but accepts a signal sending tuples of\n/// arguments instead of a variadic list of arguments.\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignalOfArguments:(RACSignal *)arguments;\n\n@end\n\n@interface NSObject (RACUnavailableLifting)\n\n- (RACSignal *)rac_liftSelector:(SEL)selector withObjects:(id)arg, ... __attribute__((unavailable(\"Use -rac_liftSelector:withSignals: instead\")));\n- (RACSignal *)rac_liftSelector:(SEL)selector withObjectsFromArray:(NSArray *)args __attribute__((unavailable(\"Use -rac_liftSelector:withSignalsFromArray: instead\")));\n- (RACSignal *)rac_liftBlock:(id)block withArguments:(id)arg, ... NS_REQUIRES_NIL_TERMINATION __attribute__((unavailable(\"Use +combineLatest:reduce: instead\")));\n- (RACSignal *)rac_liftBlock:(id)block withArgumentsFromArray:(NSArray *)args __attribute__((unavailable(\"Use +combineLatest:reduce: instead\")));\n\n- (instancetype)rac_lift __attribute__((unavailable(\"Use -rac_liftSelector:withSignals: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACLifting.m",
    "content": "//\n//  NSObject+RACLifting.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/13/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACLifting.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSInvocation+RACTypeParsing.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACTuple.h\"\n\n@implementation NSObject (RACLifting)\n\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignalOfArguments:(RACSignal *)arguments {\n\tNSCParameterAssert(selector != NULL);\n\tNSCParameterAssert(arguments != nil);\n\t\n\t@unsafeify(self);\n\t\n\tNSMethodSignature *methodSignature = [self methodSignatureForSelector:selector];\n\tNSCAssert(methodSignature != nil, @\"%@ does not respond to %@\", self, NSStringFromSelector(selector));\n\t\n\treturn [[[[arguments\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tmap:^(RACTuple *arguments) {\n\t\t\t@strongify(self);\n\t\t\t\n\t\t\tNSInvocation *invocation = [NSInvocation invocationWithMethodSignature:methodSignature];\n\t\t\tinvocation.selector = selector;\n\t\t\tinvocation.rac_argumentsTuple = arguments;\n\t\t\t[invocation invokeWithTarget:self];\n\t\t\t\n\t\t\treturn invocation.rac_returnValue;\n\t\t}]\n\t\treplayLast]\n\t\tsetNameWithFormat:@\"%@ -rac_liftSelector: %s withSignalsOfArguments: %@\", RACDescription(self), sel_getName(selector), arguments];\n}\n\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignalsFromArray:(NSArray *)signals {\n\tNSCParameterAssert(signals != nil);\n\tNSCParameterAssert(signals.count > 0);\n\n\tNSMethodSignature *methodSignature = [self methodSignatureForSelector:selector];\n\tNSCAssert(methodSignature != nil, @\"%@ does not respond to %@\", self, NSStringFromSelector(selector));\n\n\tNSUInteger numberOfArguments __attribute__((unused)) = methodSignature.numberOfArguments - 2;\n\tNSCAssert(numberOfArguments == signals.count, @\"Wrong number of signals for %@ (expected %lu, got %lu)\", NSStringFromSelector(selector), (unsigned long)numberOfArguments, (unsigned long)signals.count);\n\n\treturn [[self\n\t\trac_liftSelector:selector withSignalOfArguments:[RACSignal combineLatest:signals]]\n\t\tsetNameWithFormat:@\"%@ -rac_liftSelector: %s withSignalsFromArray: %@\", RACDescription(self), sel_getName(selector), signals];\n}\n\n- (RACSignal *)rac_liftSelector:(SEL)selector withSignals:(RACSignal *)firstSignal, ... {\n\tNSCParameterAssert(firstSignal != nil);\n\n\tNSMutableArray *signals = [NSMutableArray array];\n\n\tva_list args;\n\tva_start(args, firstSignal);\n\tfor (id currentSignal = firstSignal; currentSignal != nil; currentSignal = va_arg(args, id)) {\n\t\tNSCAssert([currentSignal isKindOfClass:RACSignal.class], @\"Argument %@ is not a RACSignal\", currentSignal);\n\n\t\t[signals addObject:currentSignal];\n\t}\n\tva_end(args);\n\n\treturn [[self\n\t\trac_liftSelector:selector withSignalsFromArray:signals]\n\t\tsetNameWithFormat:@\"%@ -rac_liftSelector: %s withSignals: %@\", RACDescription(self), sel_getName(selector), signals];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACPropertySubscribing.h",
    "content": "//\n//  NSObject+RACPropertySubscribing.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"metamacros.h\"\n\n/// Creates a signal which observes `KEYPATH` on `TARGET` for changes.\n///\n/// In either case, the observation continues until `TARGET` _or self_ is\n/// deallocated. If any intermediate object is deallocated instead, it will be\n/// assumed to have been set to nil.\n///\n/// Make sure to `@strongify(self)` when using this macro within a block! The\n/// macro will _always_ reference `self`, which can silently introduce a retain\n/// cycle within a block. As a result, you should make sure that `self` is a weak\n/// reference (e.g., created by `@weakify` and `@strongify`) before the\n/// expression that uses `RACObserve`.\n///\n/// Examples\n///\n///    // Observes self, and doesn't stop until self is deallocated.\n///    RACSignal *selfSignal = RACObserve(self, arrayController.items);\n///\n///    // Observes the array controller, and stops when self _or_ the array\n///    // controller is deallocated.\n///    RACSignal *arrayControllerSignal = RACObserve(self.arrayController, items);\n///\n///    // Observes obj.arrayController, and stops when self _or_ the array\n///    // controller is deallocated.\n///    RACSignal *signal2 = RACObserve(obj.arrayController, items);\n///\n///    @weakify(self);\n///    RACSignal *signal3 = [anotherSignal flattenMap:^(NSArrayController *arrayController) {\n///        // Avoids a retain cycle because of RACObserve implicitly referencing\n///        // self.\n///        @strongify(self);\n///        return RACObserve(arrayController, items);\n///    }];\n///\n/// Returns a signal which sends the current value of the key path on\n/// subscription, then sends the new value every time it changes, and sends\n/// completed if self or observer is deallocated.\n#define RACObserve(TARGET, KEYPATH) \\\n\t({ \\\n\t\t_Pragma(\"clang diagnostic push\") \\\n\t\t_Pragma(\"clang diagnostic ignored \\\"-Wreceiver-is-weak\\\"\") \\\n\t\t__weak id target_ = (TARGET); \\\n\t\t[target_ rac_valuesForKeyPath:@keypath(TARGET, KEYPATH) observer:self]; \\\n\t\t_Pragma(\"clang diagnostic pop\") \\\n\t})\n\n@class RACDisposable;\n@class RACSignal;\n\n@interface NSObject (RACPropertySubscribing)\n\n/// Creates a signal to observe the value at the given key path.\n///\n/// The initial value is sent on subscription, the subsequent values are sent\n/// from whichever thread the change occured on, even if it doesn't have a valid\n/// scheduler.\n///\n/// Returns a signal that immediately sends the receiver's current value at the\n/// given keypath, then any changes thereafter.\n#if OS_OBJECT_HAVE_OBJC_SUPPORT\n- (RACSignal *)rac_valuesForKeyPath:(NSString *)keyPath observer:(__weak NSObject *)observer;\n#else\n// Swift builds with OS_OBJECT_HAVE_OBJC_SUPPORT=0 for Playgrounds and LLDB :(\n- (RACSignal *)rac_valuesForKeyPath:(NSString *)keyPath observer:(NSObject *)observer;\n#endif\n\n/// Creates a signal to observe the changes of the given key path.\n///\n/// The initial value is sent on subscription if `NSKeyValueObservingOptionInitial` is set.\n/// The subsequent values are sent from whichever thread the change occured on,\n/// even if it doesn't have a valid scheduler.\n///\n/// Returns a signal that sends tuples containing the current value at the key\n/// path and the change dictionary for each KVO callback.\n#if OS_OBJECT_HAVE_OBJC_SUPPORT\n- (RACSignal *)rac_valuesAndChangesForKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(__weak NSObject *)observer;\n#else\n- (RACSignal *)rac_valuesAndChangesForKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(NSObject *)observer;\n#endif\n\n@end\n\n#define RACAble(...) \\\n\tmetamacro_if_eq(1, metamacro_argcount(__VA_ARGS__)) \\\n\t\t(_RACAbleObject(self, __VA_ARGS__)) \\\n\t\t(_RACAbleObject(__VA_ARGS__))\n\n#define _RACAbleObject(object, property) [object rac_signalForKeyPath:@keypath(object, property) observer:self]\n\n#define RACAbleWithStart(...) \\\n\tmetamacro_if_eq(1, metamacro_argcount(__VA_ARGS__)) \\\n\t\t(_RACAbleWithStartObject(self, __VA_ARGS__)) \\\n\t\t(_RACAbleWithStartObject(__VA_ARGS__))\n\n#define _RACAbleWithStartObject(object, property) [object rac_signalWithStartingValueForKeyPath:@keypath(object, property) observer:self]\n\n@interface NSObject (RACUnavailablePropertySubscribing)\n\n+ (RACSignal *)rac_signalFor:(NSObject *)object keyPath:(NSString *)keyPath observer:(NSObject *)observer __attribute__((unavailable(\"Use -rac_valuesForKeyPath:observer: or RACObserve() instead.\")));\n+ (RACSignal *)rac_signalWithStartingValueFor:(NSObject *)object keyPath:(NSString *)keyPath observer:(NSObject *)observer __attribute__((unavailable(\"Use -rac_valuesForKeyPath:observer: or RACObserve() instead.\")));\n+ (RACSignal *)rac_signalWithChangesFor:(NSObject *)object keyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(NSObject *)observer __attribute__((unavailable(\"Use -rac_valuesAndChangesForKeyPath:options:observer: instead.\")));\n- (RACSignal *)rac_signalForKeyPath:(NSString *)keyPath observer:(NSObject *)observer __attribute__((unavailable(\"Use -rac_valuesForKeyPath:observer: or RACObserve() instead.\")));\n- (RACSignal *)rac_signalWithStartingValueForKeyPath:(NSString *)keyPath observer:(NSObject *)observer __attribute__((unavailable(\"Use -rac_valuesForKeyPath:observer: or RACObserve() instead.\")));\n- (RACDisposable *)rac_deriveProperty:(NSString *)keyPath from:(RACSignal *)signal __attribute__((unavailable(\"Use -[RACSignal setKeyPath:onObject:] instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACPropertySubscribing.m",
    "content": "//\n//  NSObject+RACPropertySubscribing.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACPropertySubscribing.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACKVOWrapper.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOTrampoline.h\"\n#import \"RACSubscriber.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACTuple.h\"\n#import <libkern/OSAtomic.h>\n\n@implementation NSObject (RACPropertySubscribing)\n\n- (RACSignal *)rac_valuesForKeyPath:(NSString *)keyPath observer:(__weak NSObject *)observer {\n\treturn [[[self\n\t\trac_valuesAndChangesForKeyPath:keyPath options:NSKeyValueObservingOptionInitial observer:observer]\n\t\tmap:^(RACTuple *value) {\n\t\t\t// -map: because it doesn't require the block trampoline that -reduceEach: uses\n\t\t\treturn value[0];\n\t\t}]\n\t\tsetNameWithFormat:@\"RACObserve(%@, %@)\", RACDescription(self), keyPath];\n}\n\n- (RACSignal *)rac_valuesAndChangesForKeyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options observer:(__weak NSObject *)weakObserver {\n\tNSObject *strongObserver = weakObserver;\n\tkeyPath = [keyPath copy];\n\n\tNSRecursiveLock *objectLock = [[NSRecursiveLock alloc] init];\n\tobjectLock.name = @\"org.reactivecocoa.ReactiveCocoa.NSObjectRACPropertySubscribing\";\n\n\t__weak NSObject *weakSelf = self;\n\n\tRACSignal *deallocSignal = [[RACSignal\n\t\tzip:@[\n\t\t\tself.rac_willDeallocSignal,\n\t\t\tstrongObserver.rac_willDeallocSignal ?: [RACSignal never]\n\t\t]]\n\t\tdoCompleted:^{\n\t\t\t// Forces deallocation to wait if the object variables are currently\n\t\t\t// being read on another thread.\n\t\t\t[objectLock lock];\n\t\t\t@onExit {\n\t\t\t\t[objectLock unlock];\n\t\t\t};\n\t\t}];\n\n\treturn [[[RACSignal\n\t\tcreateSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t// Hold onto the lock the whole time we're setting up the KVO\n\t\t\t// observation, because any resurrection that might be caused by our\n\t\t\t// retaining below must be balanced out by the time -dealloc returns\n\t\t\t// (if another thread is waiting on the lock above).\n\t\t\t[objectLock lock];\n\t\t\t@onExit {\n\t\t\t\t[objectLock unlock];\n\t\t\t};\n\n\t\t\t__strong NSObject *observer __attribute__((objc_precise_lifetime)) = weakObserver;\n\t\t\t__strong NSObject *self __attribute__((objc_precise_lifetime)) = weakSelf;\n\n\t\t\tif (self == nil) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\treturn nil;\n\t\t\t}\n\n\t\t\treturn [self rac_observeKeyPath:keyPath options:options observer:observer block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\t[subscriber sendNext:RACTuplePack(value, change)];\n\t\t\t}];\n\t\t}]\n\t\ttakeUntil:deallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_valueAndChangesForKeyPath: %@ options: %lu observer: %@\", RACDescription(self), keyPath, (unsigned long)options, RACDescription(strongObserver)];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACSelectorSignal.h",
    "content": "//\n//  NSObject+RACSelectorSignal.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n/// The domain for any errors originating from -rac_signalForSelector:.\nextern NSString * const RACSelectorSignalErrorDomain;\n\n/// -rac_signalForSelector: was going to add a new method implementation for\n/// `selector`, but another thread added an implementation before it was able to.\n///\n/// This will _not_ occur for cases where a method implementation exists before\n/// -rac_signalForSelector: is invoked.\nextern const NSInteger RACSelectorSignalErrorMethodSwizzlingRace;\n\n@interface NSObject (RACSelectorSignal)\n\n/// Creates a signal associated with the receiver, which will send a tuple of the\n/// method's arguments each time the given selector is invoked.\n///\n/// If the selector is already implemented on the receiver, the existing\n/// implementation will be invoked _before_ the signal fires.\n///\n/// If the selector is not yet implemented on the receiver, the injected\n/// implementation will have a `void` return type and accept only object\n/// arguments. Invoking the added implementation with non-object values, or\n/// expecting a return value, will result in undefined behavior.\n///\n/// This is useful for changing an event or delegate callback into a signal. For\n/// example, on an NSView:\n///\n///     [[view rac_signalForSelector:@selector(mouseDown:)] subscribeNext:^(RACTuple *args) {\n///         NSEvent *event = args.first;\n///         NSLog(@\"mouse button pressed: %@\", event);\n///     }];\n///\n/// selector - The selector for whose invocations are to be observed. If it\n///            doesn't exist, it will be implemented to accept object arguments\n///            and return void. This cannot have C arrays or unions as arguments\n///            or C arrays, unions, structs, complex or vector types as return\n///            type.\n///\n/// Returns a signal which will send a tuple of arguments upon each invocation of\n/// the selector, then completes when the receiver is deallocated. `next` events\n/// will be sent synchronously from the thread that invoked the method. If\n/// a runtime call fails, the signal will send an error in the\n/// RACSelectorSignalErrorDomain.\n- (RACSignal *)rac_signalForSelector:(SEL)selector;\n\n/// Behaves like -rac_signalForSelector:, but if the selector is not yet\n/// implemented on the receiver, its method signature is looked up within\n/// `protocol`, and may accept non-object arguments.\n///\n/// If the selector is not yet implemented and has a return value, the injected\n/// method will return all zero bits (equal to `nil`, `NULL`, 0, 0.0f, etc.).\n///\n/// selector - The selector for whose invocations are to be observed. If it\n///            doesn't exist, it will be implemented using information from\n///            `protocol`, and may accept non-object arguments and return\n///            a value. This cannot have C arrays or unions as arguments or\n///            return type.\n/// protocol - The protocol in which `selector` is declared. This will be used\n///            for type information if the selector is not already implemented on\n///            the receiver. This must not be `NULL`, and `selector` must exist\n///            in this protocol.\n///\n/// Returns a signal which will send a tuple of arguments on each invocation of\n/// the selector, or an error in RACSelectorSignalErrorDomain if a runtime\n/// call fails.\n- (RACSignal *)rac_signalForSelector:(SEL)selector fromProtocol:(Protocol *)protocol;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSObject+RACSelectorSignal.m",
    "content": "//\n//  NSObject+RACSelectorSignal.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSObject+RACSelectorSignal.h\"\n#import <ReactiveCocoa/EXTRuntimeExtensions.h>\n#import \"NSInvocation+RACTypeParsing.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSubject.h\"\n#import \"RACTuple.h\"\n#import \"NSObject+RACDescription.h\"\n#import <objc/message.h>\n#import <objc/runtime.h>\n\nNSString * const RACSelectorSignalErrorDomain = @\"RACSelectorSignalErrorDomain\";\nconst NSInteger RACSelectorSignalErrorMethodSwizzlingRace = 1;\n\nstatic NSString * const RACSignalForSelectorAliasPrefix = @\"rac_alias_\";\nstatic NSString * const RACSubclassSuffix = @\"_RACSelectorSignal\";\nstatic void *RACSubclassAssociationKey = &RACSubclassAssociationKey;\n\nstatic NSMutableSet *swizzledClasses() {\n\tstatic NSMutableSet *set;\n\tstatic dispatch_once_t pred;\n\t\n\tdispatch_once(&pred, ^{\n\t\tset = [[NSMutableSet alloc] init];\n\t});\n\n\treturn set;\n}\n\n@implementation NSObject (RACSelectorSignal)\n\nstatic BOOL RACForwardInvocation(id self, NSInvocation *invocation) {\n\tSEL aliasSelector = RACAliasForSelector(invocation.selector);\n\tRACSubject *subject = objc_getAssociatedObject(self, aliasSelector);\n\n\tClass class = object_getClass(invocation.target);\n\tBOOL respondsToAlias = [class instancesRespondToSelector:aliasSelector];\n\tif (respondsToAlias) {\n\t\tinvocation.selector = aliasSelector;\n\t\t[invocation invoke];\n\t}\n\n\tif (subject == nil) return respondsToAlias;\n\n\t[subject sendNext:invocation.rac_argumentsTuple];\n\treturn YES;\n}\n\nstatic void RACSwizzleForwardInvocation(Class class) {\n\tSEL forwardInvocationSEL = @selector(forwardInvocation:);\n\tMethod forwardInvocationMethod = class_getInstanceMethod(class, forwardInvocationSEL);\n\n\t// Preserve any existing implementation of -forwardInvocation:.\n\tvoid (*originalForwardInvocation)(id, SEL, NSInvocation *) = NULL;\n\tif (forwardInvocationMethod != NULL) {\n\t\toriginalForwardInvocation = (__typeof__(originalForwardInvocation))method_getImplementation(forwardInvocationMethod);\n\t}\n\n\t// Set up a new version of -forwardInvocation:.\n\t//\n\t// If the selector has been passed to -rac_signalForSelector:, invoke\n\t// the aliased method, and forward the arguments to any attached signals.\n\t//\n\t// If the selector has not been passed to -rac_signalForSelector:,\n\t// invoke any existing implementation of -forwardInvocation:. If there\n\t// was no existing implementation, throw an unrecognized selector\n\t// exception.\n\tid newForwardInvocation = ^(id self, NSInvocation *invocation) {\n\t\tBOOL matched = RACForwardInvocation(self, invocation);\n\t\tif (matched) return;\n\n\t\tif (originalForwardInvocation == NULL) {\n\t\t\t[self doesNotRecognizeSelector:invocation.selector];\n\t\t} else {\n\t\t\toriginalForwardInvocation(self, forwardInvocationSEL, invocation);\n\t\t}\n\t};\n\n\tclass_replaceMethod(class, forwardInvocationSEL, imp_implementationWithBlock(newForwardInvocation), \"v@:@\");\n}\n\nstatic void RACSwizzleRespondsToSelector(Class class) {\n\tSEL respondsToSelectorSEL = @selector(respondsToSelector:);\n\n\t// Preserve existing implementation of -respondsToSelector:.\n\tMethod respondsToSelectorMethod = class_getInstanceMethod(class, respondsToSelectorSEL);\n\tBOOL (*originalRespondsToSelector)(id, SEL, SEL) = (__typeof__(originalRespondsToSelector))method_getImplementation(respondsToSelectorMethod);\n\n\t// Set up a new version of -respondsToSelector: that returns YES for methods\n\t// added by -rac_signalForSelector:.\n\t//\n\t// If the selector has a method defined on the receiver's actual class, and\n\t// if that method's implementation is _objc_msgForward, then returns whether\n\t// the instance has a signal for the selector.\n\t// Otherwise, call the original -respondsToSelector:.\n\tid newRespondsToSelector = ^ BOOL (id self, SEL selector) {\n\t\tMethod method = rac_getImmediateInstanceMethod(class, selector);\n\n\t\tif (method != NULL && method_getImplementation(method) == _objc_msgForward) {\n\t\t\tSEL aliasSelector = RACAliasForSelector(selector);\n\t\t\tif (objc_getAssociatedObject(self, aliasSelector) != nil) return YES;\n\t\t}\n\n\t\treturn originalRespondsToSelector(self, respondsToSelectorSEL, selector);\n\t};\n\n\tclass_replaceMethod(class, respondsToSelectorSEL, imp_implementationWithBlock(newRespondsToSelector), method_getTypeEncoding(respondsToSelectorMethod));\n}\n\nstatic void RACSwizzleGetClass(Class class, Class statedClass) {\n\tSEL selector = @selector(class);\n\tMethod method = class_getInstanceMethod(class, selector);\n\tIMP newIMP = imp_implementationWithBlock(^(id self) {\n\t\treturn statedClass;\n\t});\n\tclass_replaceMethod(class, selector, newIMP, method_getTypeEncoding(method));\n}\n\nstatic void RACSwizzleMethodSignatureForSelector(Class class) {\n\tIMP newIMP = imp_implementationWithBlock(^(id self, SEL selector) {\n\t\t// Don't send the -class message to the receiver because we've changed\n\t\t// that to return the original class.\n\t\tClass actualClass = object_getClass(self);\n\t\tMethod method = class_getInstanceMethod(actualClass, selector);\n\t\tif (method == NULL) {\n\t\t\t// Messages that the original class dynamically implements fall\n\t\t\t// here.\n\t\t\t//\n\t\t\t// Call the original class' -methodSignatureForSelector:.\n\t\t\tstruct objc_super target = {\n\t\t\t\t.super_class = class_getSuperclass(class),\n\t\t\t\t.receiver = self,\n\t\t\t};\n\t\t\tNSMethodSignature * (*messageSend)(struct objc_super *, SEL, SEL) = (__typeof__(messageSend))objc_msgSendSuper;\n\t\t\treturn messageSend(&target, @selector(methodSignatureForSelector:), selector);\n\t\t}\n\n\t\tchar const *encoding = method_getTypeEncoding(method);\n\t\treturn [NSMethodSignature signatureWithObjCTypes:encoding];\n\t});\n\n\tSEL selector = @selector(methodSignatureForSelector:);\n\tMethod methodSignatureForSelectorMethod = class_getInstanceMethod(class, selector);\n\tclass_replaceMethod(class, selector, newIMP, method_getTypeEncoding(methodSignatureForSelectorMethod));\n}\n\n// It's hard to tell which struct return types use _objc_msgForward, and\n// which use _objc_msgForward_stret instead, so just exclude all struct, array,\n// union, complex and vector return types.\nstatic void RACCheckTypeEncoding(const char *typeEncoding) {\n#if !NS_BLOCK_ASSERTIONS\n\t// Some types, including vector types, are not encoded. In these cases the\n\t// signature starts with the size of the argument frame.\n\tNSCAssert(*typeEncoding < '1' || *typeEncoding > '9', @\"unknown method return type not supported in type encoding: %s\", typeEncoding);\n\tNSCAssert(strstr(typeEncoding, \"(\") != typeEncoding, @\"union method return type not supported\");\n\tNSCAssert(strstr(typeEncoding, \"{\") != typeEncoding, @\"struct method return type not supported\");\n\tNSCAssert(strstr(typeEncoding, \"[\") != typeEncoding, @\"array method return type not supported\");\n\tNSCAssert(strstr(typeEncoding, @encode(_Complex float)) != typeEncoding, @\"complex float method return type not supported\");\n\tNSCAssert(strstr(typeEncoding, @encode(_Complex double)) != typeEncoding, @\"complex double method return type not supported\");\n\tNSCAssert(strstr(typeEncoding, @encode(_Complex long double)) != typeEncoding, @\"complex long double method return type not supported\");\n\n#endif // !NS_BLOCK_ASSERTIONS\n}\n\nstatic RACSignal *NSObjectRACSignalForSelector(NSObject *self, SEL selector, Protocol *protocol) {\n\tSEL aliasSelector = RACAliasForSelector(selector);\n\n\t@synchronized (self) {\n\t\tRACSubject *subject = objc_getAssociatedObject(self, aliasSelector);\n\t\tif (subject != nil) return subject;\n\n\t\tClass class = RACSwizzleClass(self);\n\t\tNSCAssert(class != nil, @\"Could not swizzle class of %@\", self);\n\n\t\tsubject = [[RACSubject subject] setNameWithFormat:@\"%@ -rac_signalForSelector: %s\", RACDescription(self), sel_getName(selector)];\n\t\tobjc_setAssociatedObject(self, aliasSelector, subject, OBJC_ASSOCIATION_RETAIN);\n\n\t\t[self.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t[subject sendCompleted];\n\t\t}]];\n\n\t\tMethod targetMethod = class_getInstanceMethod(class, selector);\n\t\tif (targetMethod == NULL) {\n\t\t\tconst char *typeEncoding;\n\t\t\tif (protocol == NULL) {\n\t\t\t\ttypeEncoding = RACSignatureForUndefinedSelector(selector);\n\t\t\t} else {\n\t\t\t\t// Look for the selector as an optional instance method.\n\t\t\t\tstruct objc_method_description methodDescription = protocol_getMethodDescription(protocol, selector, NO, YES);\n\n\t\t\t\tif (methodDescription.name == NULL) {\n\t\t\t\t\t// Then fall back to looking for a required instance\n\t\t\t\t\t// method.\n\t\t\t\t\tmethodDescription = protocol_getMethodDescription(protocol, selector, YES, YES);\n\t\t\t\t\tNSCAssert(methodDescription.name != NULL, @\"Selector %@ does not exist in <%s>\", NSStringFromSelector(selector), protocol_getName(protocol));\n\t\t\t\t}\n\n\t\t\t\ttypeEncoding = methodDescription.types;\n\t\t\t}\n\n\t\t\tRACCheckTypeEncoding(typeEncoding);\n\n\t\t\t// Define the selector to call -forwardInvocation:.\n\t\t\tif (!class_addMethod(class, selector, _objc_msgForward, typeEncoding)) {\n\t\t\t\tNSDictionary *userInfo = @{\n\t\t\t\t\tNSLocalizedDescriptionKey: [NSString stringWithFormat:NSLocalizedString(@\"A race condition occurred implementing %@ on class %@\", nil), NSStringFromSelector(selector), class],\n\t\t\t\t\tNSLocalizedRecoverySuggestionErrorKey: NSLocalizedString(@\"Invoke -rac_signalForSelector: again to override the implementation.\", nil)\n\t\t\t\t};\n\n\t\t\t\treturn [RACSignal error:[NSError errorWithDomain:RACSelectorSignalErrorDomain code:RACSelectorSignalErrorMethodSwizzlingRace userInfo:userInfo]];\n\t\t\t}\n\t\t} else if (method_getImplementation(targetMethod) != _objc_msgForward) {\n\t\t\t// Make a method alias for the existing method implementation.\n\t\t\tconst char *typeEncoding = method_getTypeEncoding(targetMethod);\n\n\t\t\tRACCheckTypeEncoding(typeEncoding);\n\n\t\t\tBOOL addedAlias __attribute__((unused)) = class_addMethod(class, aliasSelector, method_getImplementation(targetMethod), typeEncoding);\n\t\t\tNSCAssert(addedAlias, @\"Original implementation for %@ is already copied to %@ on %@\", NSStringFromSelector(selector), NSStringFromSelector(aliasSelector), class);\n\n\t\t\t// Redefine the selector to call -forwardInvocation:.\n\t\t\tclass_replaceMethod(class, selector, _objc_msgForward, method_getTypeEncoding(targetMethod));\n\t\t}\n\n\t\treturn subject;\n\t}\n}\n\nstatic SEL RACAliasForSelector(SEL originalSelector) {\n\tNSString *selectorName = NSStringFromSelector(originalSelector);\n\treturn NSSelectorFromString([RACSignalForSelectorAliasPrefix stringByAppendingString:selectorName]);\n}\n\nstatic const char *RACSignatureForUndefinedSelector(SEL selector) {\n\tconst char *name = sel_getName(selector);\n\tNSMutableString *signature = [NSMutableString stringWithString:@\"v@:\"];\n\n\twhile ((name = strchr(name, ':')) != NULL) {\n\t\t[signature appendString:@\"@\"];\n\t\tname++;\n\t}\n\n\treturn signature.UTF8String;\n}\n\nstatic Class RACSwizzleClass(NSObject *self) {\n\tClass statedClass = self.class;\n\tClass baseClass = object_getClass(self);\n\n\t// The \"known dynamic subclass\" is the subclass generated by RAC.\n\t// It's stored as an associated object on every instance that's already\n\t// been swizzled, so that even if something else swizzles the class of\n\t// this instance, we can still access the RAC generated subclass.\n\tClass knownDynamicSubclass = objc_getAssociatedObject(self, RACSubclassAssociationKey);\n\tif (knownDynamicSubclass != Nil) return knownDynamicSubclass;\n\n\tNSString *className = NSStringFromClass(baseClass);\n\n\tif (statedClass != baseClass) {\n\t\t// If the class is already lying about what it is, it's probably a KVO\n\t\t// dynamic subclass or something else that we shouldn't subclass\n\t\t// ourselves.\n\t\t//\n\t\t// Just swizzle -forwardInvocation: in-place. Since the object's class\n\t\t// was almost certainly dynamically changed, we shouldn't see another of\n\t\t// these classes in the hierarchy.\n\t\t//\n\t\t// Additionally, swizzle -respondsToSelector: because the default\n\t\t// implementation may be ignorant of methods added to this class.\n\t\t@synchronized (swizzledClasses()) {\n\t\t\tif (![swizzledClasses() containsObject:className]) {\n\t\t\t\tRACSwizzleForwardInvocation(baseClass);\n\t\t\t\tRACSwizzleRespondsToSelector(baseClass);\n\t\t\t\tRACSwizzleGetClass(baseClass, statedClass);\n\t\t\t\tRACSwizzleGetClass(object_getClass(baseClass), statedClass);\n\t\t\t\tRACSwizzleMethodSignatureForSelector(baseClass);\n\t\t\t\t[swizzledClasses() addObject:className];\n\t\t\t}\n\t\t}\n\n\t\treturn baseClass;\n\t}\n\n\tconst char *subclassName = [className stringByAppendingString:RACSubclassSuffix].UTF8String;\n\tClass subclass = objc_getClass(subclassName);\n\n\tif (subclass == nil) {\n\t\tsubclass = objc_allocateClassPair(baseClass, subclassName, 0);\n\t\tif (subclass == nil) return nil;\n\n\t\tRACSwizzleForwardInvocation(subclass);\n\t\tRACSwizzleRespondsToSelector(subclass);\n\n\t\tRACSwizzleGetClass(subclass, statedClass);\n\t\tRACSwizzleGetClass(object_getClass(subclass), statedClass);\n\n\t\tRACSwizzleMethodSignatureForSelector(subclass);\n\n\t\tobjc_registerClassPair(subclass);\n\t}\n\n\tobject_setClass(self, subclass);\n\tobjc_setAssociatedObject(self, RACSubclassAssociationKey, subclass, OBJC_ASSOCIATION_ASSIGN);\n\treturn subclass;\n}\n\n- (RACSignal *)rac_signalForSelector:(SEL)selector {\n\tNSCParameterAssert(selector != NULL);\n\n\treturn NSObjectRACSignalForSelector(self, selector, NULL);\n}\n\n- (RACSignal *)rac_signalForSelector:(SEL)selector fromProtocol:(Protocol *)protocol {\n\tNSCParameterAssert(selector != NULL);\n\tNSCParameterAssert(protocol != NULL);\n\n\treturn NSObjectRACSignalForSelector(self, selector, protocol);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSOrderedSet+RACSequenceAdditions.h",
    "content": "//\n//  NSOrderedSet+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSOrderedSet (RACSequenceAdditions)\n\n/// Creates and returns a sequence corresponding to the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSOrderedSet+RACSequenceAdditions.m",
    "content": "//\n//  NSOrderedSet+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSOrderedSet+RACSequenceAdditions.h\"\n#import \"NSArray+RACSequenceAdditions.h\"\n\n@implementation NSOrderedSet (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\t// TODO: First class support for ordered set sequences.\n\treturn self.array.rac_sequence;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSSet+RACSequenceAdditions.h",
    "content": "//\n//  NSSet+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSSet (RACSequenceAdditions)\n\n/// Creates and returns a sequence corresponding to the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSSet+RACSequenceAdditions.m",
    "content": "//\n//  NSSet+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSSet+RACSequenceAdditions.h\"\n#import \"NSArray+RACSequenceAdditions.h\"\n\n@implementation NSSet (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\t// TODO: First class support for set sequences.\n\treturn self.allObjects.rac_sequence;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACKeyPathUtilities.h",
    "content": "//\n//  NSString+RACKeyPathUtilities.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 05/05/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n// A private category of methods to extract parts of a key path.\n@interface NSString (RACKeyPathUtilities)\n\n// Returns an array of the components of the receiver.\n//\n// Calling this method on a string that isn't a key path is considered undefined\n// behavior.\n- (NSArray *)rac_keyPathComponents;\n\n// Returns a key path with all the components of the receiver except for the\n// last one.\n//\n// Calling this method on a string that isn't a key path is considered undefined\n// behavior.\n- (NSString *)rac_keyPathByDeletingLastKeyPathComponent;\n\n// Returns a key path with all the components of the receiver expect for the\n// first one.\n//\n// Calling this method on a string that isn't a key path is considered undefined\n// behavior.\n- (NSString *)rac_keyPathByDeletingFirstKeyPathComponent;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACKeyPathUtilities.m",
    "content": "//\n//  NSString+RACKeyPathUtilities.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 05/05/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSString+RACKeyPathUtilities.h\"\n\n@implementation NSString (RACKeyPathUtilities)\n\n- (NSArray *)rac_keyPathComponents {\n\tif (self.length == 0) {\n\t\treturn nil;\n\t}\n\treturn [self componentsSeparatedByString:@\".\"];\n}\n\n- (NSString *)rac_keyPathByDeletingLastKeyPathComponent {\n\tNSUInteger lastDotIndex = [self rangeOfString:@\".\" options:NSBackwardsSearch].location;\n\tif (lastDotIndex == NSNotFound) {\n\t\treturn nil;\n\t}\n\treturn [self substringToIndex:lastDotIndex];\n}\n\n- (NSString *)rac_keyPathByDeletingFirstKeyPathComponent {\n\tNSUInteger firstDotIndex = [self rangeOfString:@\".\"].location;\n\tif (firstDotIndex == NSNotFound) {\n\t\treturn nil;\n\t}\n\treturn [self substringFromIndex:firstDotIndex + 1];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACSequenceAdditions.h",
    "content": "//\n//  NSString+RACSequenceAdditions.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSequence;\n\n@interface NSString (RACSequenceAdditions)\n\n/// Creates and returns a sequence containing strings corresponding to each\n/// composed character sequence in the receiver.\n///\n/// Mutating the receiver will not affect the sequence after it's been created.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACSequenceAdditions.m",
    "content": "//\n//  NSString+RACSequenceAdditions.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"NSString+RACSequenceAdditions.h\"\n#import \"RACStringSequence.h\"\n\n@implementation NSString (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\treturn [RACStringSequence sequenceWithString:self offset:0];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACSupport.h",
    "content": "//\n//  NSString+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACScheduler;\n@class RACSignal;\n\n@interface NSString (RACSupport)\n\n// Reads in the contents of the file using +[NSString stringWithContentsOfURL:usedEncoding:error:].\n// Note that encoding won't be valid until the signal completes successfully.\n//\n// scheduler - cannot be nil.\n+ (RACSignal *)rac_readContentsOfURL:(NSURL *)URL usedEncoding:(NSStringEncoding *)encoding scheduler:(RACScheduler *)scheduler;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSString+RACSupport.m",
    "content": "//\n//  NSString+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSString+RACSupport.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n\n@implementation NSString (RACSupport)\n\n+ (RACSignal *)rac_readContentsOfURL:(NSURL *)URL usedEncoding:(NSStringEncoding *)encoding scheduler:(RACScheduler *)scheduler {\n\tNSCParameterAssert(scheduler != nil);\n\t\n\tRACReplaySubject *subject = [RACReplaySubject subject];\n\t[subject setNameWithFormat:@\"+rac_readContentsOfURL: %@ usedEncoding:scheduler: %@\", URL, scheduler];\n\t\n\t[scheduler schedule:^{\n\t\tNSError *error = nil;\n\t\tNSString *string = [NSString stringWithContentsOfURL:URL usedEncoding:encoding error:&error];\n\t\tif (string == nil) {\n\t\t\t[subject sendError:error];\n\t\t} else {\n\t\t\t[subject sendNext:string];\n\t\t\t[subject sendCompleted];\n\t\t}\n\t}];\n\t\n\treturn subject;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSText+RACSignalSupport.h",
    "content": "//\n//  NSText+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-03-08.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@class RACSignal;\n\n@interface NSText (RACSignalSupport)\n\n/// Returns a signal which sends the current `string` of the receiver, then the\n/// new value any time it changes.\n- (RACSignal *)rac_textSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSText+RACSignalSupport.m",
    "content": "//\n//  NSText+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-03-08.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSText+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDescription.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n\n@implementation NSText (RACSignalSupport)\n\n- (RACSignal *)rac_textSignal {\n\t@unsafeify(self);\n\treturn [[[[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t@strongify(self);\n\t\t\tid observer = [NSNotificationCenter.defaultCenter addObserverForName:NSTextDidChangeNotification object:self queue:nil usingBlock:^(NSNotification *note) {\n\t\t\t\t[subscriber sendNext:note.object];\n\t\t\t}];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t[NSNotificationCenter.defaultCenter removeObserver:observer];\n\t\t\t}];\n\t\t}]\n\t\tmap:^(NSText *text) {\n\t\t\treturn [text.string copy];\n\t\t}]\n\t\tstartWith:[self.string copy]]\n\t\tsetNameWithFormat:@\"%@ -rac_textSignal\", RACDescription(self)];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSURLConnection+RACSupport.h",
    "content": "//\n//  NSURLConnection+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n@interface NSURLConnection (RACSupport)\n\n// Lazily loads data for the given request in the background.\n//\n// request - The URL request to load. This must not be nil.\n//\n// Returns a signal which will begin loading the request upon each subscription,\n// then send a `RACTuple` of the received `NSURLResponse` and downloaded\n// `NSData`, and complete on a background thread. If any errors occur, the\n// returned signal will error out.\n+ (RACSignal *)rac_sendAsynchronousRequest:(NSURLRequest *)request;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSURLConnection+RACSupport.m",
    "content": "//\n//  NSURLConnection+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSURLConnection+RACSupport.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n#import \"RACTuple.h\"\n\n@implementation NSURLConnection (RACSupport)\n\n+ (RACSignal *)rac_sendAsynchronousRequest:(NSURLRequest *)request {\n\tNSCParameterAssert(request != nil);\n\n\treturn [[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\tNSOperationQueue *queue = [[NSOperationQueue alloc] init];\n\t\t\tqueue.name = @\"org.reactivecocoa.ReactiveCocoa.NSURLConnectionRACSupport\";\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-declarations\"\n\t\t\t[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {\n\t\t\t\t// The docs say that `nil` data means an error occurred, but\n\t\t\t\t// `nil` responses can also occur in practice (circumstances\n\t\t\t\t// unknown). Consider either to be an error.\n\t\t\t\t//\n\t\t\t\t// Note that _empty_ data is not necessarily erroneous, as there\n\t\t\t\t// may be headers but no HTTP body.\n\t\t\t\tif (response == nil || data == nil) {\n\t\t\t\t\t[subscriber sendError:error];\n\t\t\t\t} else {\n\t\t\t\t\t[subscriber sendNext:RACTuplePack(response, data)];\n\t\t\t\t\t[subscriber sendCompleted];\n\t\t\t\t}\n\t\t\t}];\n#pragma clang diagnostic pop\n\t\t\t\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t// It's not clear if this will actually cancel the connection,\n\t\t\t\t// but we can at least prevent _some_ unnecessary work --\n\t\t\t\t// without writing all the code for a proper delegate, which\n\t\t\t\t// doesn't really belong in RAC.\n\t\t\t\tqueue.suspended = YES;\n\t\t\t\t[queue cancelAllOperations];\n\t\t\t}];\n\t\t}]\n\t\tsetNameWithFormat:@\"+rac_sendAsynchronousRequest: %@\", request];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSUserDefaults+RACSupport.h",
    "content": "//\n//  NSUserDefaults+RACSupport.h\n//  ReactiveCocoa\n//\n//  Created by Matt Diephouse on 12/19/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACChannelTerminal;\n\n@interface NSUserDefaults (RACSupport)\n\n/// Creates and returns a terminal for binding the user defaults key.\n///\n/// **Note:** The value in the user defaults is *asynchronously* updated with\n/// values sent to the channel.\n///\n/// key - The user defaults key to create the channel terminal for.\n///\n/// Returns a channel terminal that sends the value of the user defaults key\n/// upon subscription, sends an updated value whenever the default changes, and\n/// updates the default asynchronously with values it receives.\n- (RACChannelTerminal *)rac_channelTerminalForKey:(NSString *)key;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/NSUserDefaults+RACSupport.m",
    "content": "//\n//  NSUserDefaults+RACSupport.m\n//  ReactiveCocoa\n//\n//  Created by Matt Diephouse on 12/19/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"NSUserDefaults+RACSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSNotificationCenter+RACSupport.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACChannel.h\"\n#import \"RACScheduler.h\"\n#import \"RACSignal+Operations.h\"\n\n@implementation NSUserDefaults (RACSupport)\n\n- (RACChannelTerminal *)rac_channelTerminalForKey:(NSString *)key {\n\tRACChannel *channel = [RACChannel new];\n\t\n\tRACScheduler *scheduler = [RACScheduler scheduler];\n\t__block BOOL ignoreNextValue = NO;\n\t\n\t@weakify(self);\n\t[[[[[[[NSNotificationCenter.defaultCenter\n\t\trac_addObserverForName:NSUserDefaultsDidChangeNotification object:self]\n\t\tmap:^(id _) {\n\t\t\t@strongify(self);\n\t\t\treturn [self objectForKey:key];\n\t\t}]\n\t\tstartWith:[self objectForKey:key]]\n\t\t// Don't send values that were set on the other side of the terminal.\n\t\tfilter:^ BOOL (id _) {\n\t\t\tif (RACScheduler.currentScheduler == scheduler && ignoreNextValue) {\n\t\t\t\tignoreNextValue = NO;\n\t\t\t\treturn NO;\n\t\t\t}\n\t\t\treturn YES;\n\t\t}]\n\t\tdistinctUntilChanged]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsubscribe:channel.leadingTerminal];\n\t\n\t[[channel.leadingTerminal\n\t\tdeliverOn:scheduler]\n\t\tsubscribeNext:^(id value) {\n\t\t\t@strongify(self);\n\t\t\tignoreNextValue = YES;\n\t\t\t[self setObject:value forKey:key];\n\t\t}];\n\t\n\treturn channel.followingTerminal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACArraySequence.h",
    "content": "//\n//  RACArraySequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class that adapts an array to the RACSequence interface.\n@interface RACArraySequence : RACSequence\n\n// Returns a sequence for enumerating over the given array, starting from the\n// given offset. The array will be copied to prevent mutation.\n+ (instancetype)sequenceWithArray:(NSArray *)array offset:(NSUInteger)offset;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACArraySequence.m",
    "content": "//\n//  RACArraySequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACArraySequence.h\"\n\n@interface RACArraySequence ()\n\n// Redeclared from the superclass and marked deprecated to prevent using `array`\n// where `backingArray` is intended.\n@property (nonatomic, copy, readonly) NSArray *array __attribute__((deprecated));\n\n// The array being sequenced.\n@property (nonatomic, copy, readonly) NSArray *backingArray;\n\n// The index in the array from which the sequence starts.\n@property (nonatomic, assign, readonly) NSUInteger offset;\n\n@end\n\n@implementation RACArraySequence\n\n#pragma mark Lifecycle\n\n+ (instancetype)sequenceWithArray:(NSArray *)array offset:(NSUInteger)offset {\n\tNSCParameterAssert(offset <= array.count);\n\n\tif (offset == array.count) return self.empty;\n\n\tRACArraySequence *seq = [[self alloc] init];\n\tseq->_backingArray = [array copy];\n\tseq->_offset = offset;\n\treturn seq;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\treturn self.backingArray[self.offset];\n}\n\n- (RACSequence *)tail {\n\tRACSequence *sequence = [self.class sequenceWithArray:self.backingArray offset:self.offset + 1];\n\tsequence.name = self.name;\n\treturn sequence;\n}\n\n#pragma mark NSFastEnumeration\n\n- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(__unsafe_unretained id[])stackbuf count:(NSUInteger)len {\n\tNSCParameterAssert(len > 0);\n\n\tif (state->state >= self.backingArray.count) {\n\t\t// Enumeration has completed.\n\t\treturn 0;\n\t}\n\n\tif (state->state == 0) {\n\t\tstate->state = self.offset;\n\n\t\t// Since a sequence doesn't mutate, this just needs to be set to\n\t\t// something non-NULL.\n\t\tstate->mutationsPtr = state->extra;\n\t}\n\n\tstate->itemsPtr = stackbuf;\n\n\tNSUInteger startIndex = state->state;\n\tNSUInteger index = 0;\n\n\tfor (id value in self.backingArray) {\n\t\t// Constructing an index set for -enumerateObjectsAtIndexes: can actually be\n\t\t// slower than just skipping the items we don't care about.\n\t\tif (index < startIndex) {\n\t\t\t++index;\n\t\t\tcontinue;\n\t\t}\n\n\t\tstackbuf[index - startIndex] = value;\n\n\t\t++index;\n\t\tif (index - startIndex >= len) break;\n\t}\n\n\tNSCAssert(index > startIndex, @\"Final index (%lu) should be greater than start index (%lu)\", (unsigned long)index, (unsigned long)startIndex);\n\n\tstate->state = index;\n\treturn index - startIndex;\n}\n\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wdeprecated-implementations\"\n- (NSArray *)array {\n\treturn [self.backingArray subarrayWithRange:NSMakeRange(self.offset, self.backingArray.count - self.offset)];\n}\n#pragma clang diagnostic pop\n\n#pragma mark NSCoding\n\n- (id)initWithCoder:(NSCoder *)coder {\n\tself = [super initWithCoder:coder];\n\tif (self == nil) return nil;\n\n\t_backingArray = [coder decodeObjectForKey:@\"array\"];\n\t_offset = 0;\n\n\treturn self;\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n\t// Encoding is handled in RACSequence.\n\t[super encodeWithCoder:coder];\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, array = %@ }\", self.class, self, self.name, self.backingArray];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACBehaviorSubject.h",
    "content": "//\n//  RACBehaviorSubject.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubject.h\"\n\n/// A behavior subject sends the last value it received when it is subscribed to.\n@interface RACBehaviorSubject : RACSubject\n\n/// Creates a new behavior subject with a default value. If it hasn't received\n/// any values when it gets subscribed to, it sends the default value.\n+ (instancetype)behaviorSubjectWithDefaultValue:(id)value;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACBehaviorSubject.m",
    "content": "//\n//  RACBehaviorSubject.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACBehaviorSubject.h\"\n#import \"RACDisposable.h\"\n#import \"RACScheduler+Private.h\"\n\n@interface RACBehaviorSubject ()\n\n// This property should only be used while synchronized on self.\n@property (nonatomic, strong) id currentValue;\n\n@end\n\n@implementation RACBehaviorSubject\n\n#pragma mark Lifecycle\n\n+ (instancetype)behaviorSubjectWithDefaultValue:(id)value {\n\tRACBehaviorSubject *subject = [self subject];\n\tsubject.currentValue = value;\n\treturn subject;\n}\n\n#pragma mark RACSignal\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tRACDisposable *subscriptionDisposable = [super subscribe:subscriber];\n\n\tRACDisposable *schedulingDisposable = [RACScheduler.subscriptionScheduler schedule:^{\n\t\t@synchronized (self) {\n\t\t\t[subscriber sendNext:self.currentValue];\n\t\t}\n\t}];\n\t\n\treturn [RACDisposable disposableWithBlock:^{\n\t\t[subscriptionDisposable dispose];\n\t\t[schedulingDisposable dispose];\n\t}];\n}\n\n#pragma mark RACSubscriber\n\n- (void)sendNext:(id)value {\n\t@synchronized (self) {\n\t\tself.currentValue = value;\n\t\t[super sendNext:value];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACBlockTrampoline.h",
    "content": "//\n//  RACBlockTrampoline.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/21/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACTuple;\n\n// A private class that allows a limited type of dynamic block invocation.\n@interface RACBlockTrampoline : NSObject\n\n// Invokes the given block with the given arguments. All of the block's\n// argument types must be objects and it must be typed to return an object.\n//\n// At this time, it only supports blocks that take up to 15 arguments. Any more\n// is just cray.\n//\n// block     - The block to invoke. Must accept as many arguments as are given in\n//             the arguments array. Cannot be nil.\n// arguments - The arguments with which to invoke the block. `RACTupleNil`s will\n//             be passed as nils.\n//\n// Returns the return value of invoking the block.\n+ (id)invokeBlock:(id)block withArguments:(RACTuple *)arguments;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACBlockTrampoline.m",
    "content": "//\n//  RACBlockTrampoline.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/21/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACBlockTrampoline.h\"\n#import \"RACTuple.h\"\n\n@interface RACBlockTrampoline ()\n@property (nonatomic, readonly, copy) id block;\n@end\n\n@implementation RACBlockTrampoline\n\n#pragma mark API\n\n- (id)initWithBlock:(id)block {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_block = [block copy];\n\n\treturn self;\n}\n\n+ (id)invokeBlock:(id)block withArguments:(RACTuple *)arguments {\n\tNSCParameterAssert(block != NULL);\n\n\tRACBlockTrampoline *trampoline = [[self alloc] initWithBlock:block];\n\treturn [trampoline invokeWithArguments:arguments];\n}\n\n- (id)invokeWithArguments:(RACTuple *)arguments {\n\tSEL selector = [self selectorForArgumentCount:arguments.count];\n\tNSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[self methodSignatureForSelector:selector]];\n\tinvocation.selector = selector;\n\tinvocation.target = self;\n\n\tfor (NSUInteger i = 0; i < arguments.count; i++) {\n\t\tid arg = arguments[i];\n\t\tNSInteger argIndex = (NSInteger)(i + 2);\n\t\t[invocation setArgument:&arg atIndex:argIndex];\n\t}\n\n\t[invocation invoke];\n\t\n\t__unsafe_unretained id returnVal;\n\t[invocation getReturnValue:&returnVal];\n\treturn returnVal;\n}\n\n- (SEL)selectorForArgumentCount:(NSUInteger)count {\n\tNSCParameterAssert(count > 0);\n\n\tswitch (count) {\n\t\tcase 0: return NULL;\n\t\tcase 1: return @selector(performWith:);\n\t\tcase 2: return @selector(performWith::);\n\t\tcase 3: return @selector(performWith:::);\n\t\tcase 4: return @selector(performWith::::);\n\t\tcase 5: return @selector(performWith:::::);\n\t\tcase 6: return @selector(performWith::::::);\n\t\tcase 7: return @selector(performWith:::::::);\n\t\tcase 8: return @selector(performWith::::::::);\n\t\tcase 9: return @selector(performWith:::::::::);\n\t\tcase 10: return @selector(performWith::::::::::);\n\t\tcase 11: return @selector(performWith:::::::::::);\n\t\tcase 12: return @selector(performWith::::::::::::);\n\t\tcase 13: return @selector(performWith:::::::::::::);\n\t\tcase 14: return @selector(performWith::::::::::::::);\n\t\tcase 15: return @selector(performWith:::::::::::::::);\n\t}\n\n\tNSCAssert(NO, @\"The argument count is too damn high! Only blocks of up to 15 arguments are currently supported.\");\n\treturn NULL;\n}\n\n- (id)performWith:(id)obj1 {\n\tid (^block)(id) = self.block;\n\treturn block(obj1);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 {\n\tid (^block)(id, id) = self.block;\n\treturn block(obj1, obj2);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 {\n\tid (^block)(id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 {\n\tid (^block)(id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 {\n\tid (^block)(id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 {\n\tid (^block)(id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 {\n\tid (^block)(id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 {\n\tid (^block)(id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 {\n\tid (^block)(id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 :(id)obj11 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 :(id)obj11 :(id)obj12 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 :(id)obj11 :(id)obj12 :(id)obj13 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 :(id)obj11 :(id)obj12 :(id)obj13 :(id)obj14 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14);\n}\n\n- (id)performWith:(id)obj1 :(id)obj2 :(id)obj3 :(id)obj4 :(id)obj5 :(id)obj6 :(id)obj7 :(id)obj8 :(id)obj9 :(id)obj10 :(id)obj11 :(id)obj12 :(id)obj13 :(id)obj14 :(id)obj15 {\n\tid (^block)(id, id, id, id, id, id, id, id, id, id, id, id, id, id, id) = self.block;\n\treturn block(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14, obj15);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACChannel.h",
    "content": "//\n//  RACChannel.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 01/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n\n@class RACChannelTerminal;\n\n/// A two-way channel.\n///\n/// Conceptually, RACChannel can be thought of as a bidirectional connection,\n/// composed of two controllable signals that work in parallel.\n///\n/// For example, when connecting between a view and a model:\n///\n///        Model                      View\n///  `leadingTerminal` ------> `followingTerminal`\n///  `leadingTerminal` <------ `followingTerminal`\n///\n/// The initial value of the model and all future changes to it are _sent on_ the\n/// `leadingTerminal`, and _received by_ subscribers of the `followingTerminal`.\n///\n/// Likewise, whenever the user changes the value of the view, that value is sent\n/// on the `followingTerminal`, and received in the model from the\n/// `leadingTerminal`. However, the initial value of the view is not received\n/// from the `leadingTerminal` (only future changes).\n@interface RACChannel : NSObject\n\n/// The terminal which \"leads\" the channel, by sending its latest value\n/// immediately to new subscribers of the `followingTerminal`.\n///\n/// New subscribers to this terminal will not receive a starting value, but will\n/// receive all future values that are sent to the `followingTerminal`.\n@property (nonatomic, strong, readonly) RACChannelTerminal *leadingTerminal;\n\n/// The terminal which \"follows\" the lead of the other terminal, only sending\n/// _future_ values to the subscribers of the `leadingTerminal`.\n///\n/// The latest value sent to the `leadingTerminal` (if any) will be sent\n/// immediately to new subscribers of this terminal, and then all future values\n/// as well.\n@property (nonatomic, strong, readonly) RACChannelTerminal *followingTerminal;\n\n@end\n\n/// Represents one end of a RACChannel.\n///\n/// An terminal is similar to a socket or pipe -- it represents one end of\n/// a connection (the RACChannel, in this case). Values sent to this terminal\n/// will _not_ be received by its subscribers. Instead, the values will be sent\n/// to the subscribers of the RACChannel's _other_ terminal.\n///\n/// For example, when using the `followingTerminal`, _sent_ values can only be\n/// _received_ from the `leadingTerminal`, and vice versa.\n///\n/// To make it easy to terminate a RACChannel, `error` and `completed` events\n/// sent to either terminal will be received by the subscribers of _both_\n/// terminals.\n///\n/// Do not instantiate this class directly. Create a RACChannel instead.\n@interface RACChannelTerminal : RACSignal <RACSubscriber>\n\n- (id)init __attribute__((unavailable(\"Instantiate a RACChannel instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACChannel.m",
    "content": "//\n//  RACChannel.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 01/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACChannel.h\"\n#import \"RACDisposable.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACSignal+Operations.h\"\n\n@interface RACChannelTerminal ()\n\n// The values for this terminal.\n@property (nonatomic, strong, readonly) RACSignal *values;\n\n// A subscriber will will send values to the other terminal.\n@property (nonatomic, strong, readonly) id<RACSubscriber> otherTerminal;\n\n- (id)initWithValues:(RACSignal *)values otherTerminal:(id<RACSubscriber>)otherTerminal;\n\n@end\n\n@implementation RACChannel\n\n- (id)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t// We don't want any starting value from the leadingSubject, but we do want\n\t// error and completion to be replayed.\n\tRACReplaySubject *leadingSubject = [[RACReplaySubject replaySubjectWithCapacity:0] setNameWithFormat:@\"leadingSubject\"];\n\tRACReplaySubject *followingSubject = [[RACReplaySubject replaySubjectWithCapacity:1] setNameWithFormat:@\"followingSubject\"];\n\n\t// Propagate errors and completion to everything.\n\t[[leadingSubject ignoreValues] subscribe:followingSubject];\n\t[[followingSubject ignoreValues] subscribe:leadingSubject];\n\n\t_leadingTerminal = [[[RACChannelTerminal alloc] initWithValues:leadingSubject otherTerminal:followingSubject] setNameWithFormat:@\"leadingTerminal\"];\n\t_followingTerminal = [[[RACChannelTerminal alloc] initWithValues:followingSubject otherTerminal:leadingSubject] setNameWithFormat:@\"followingTerminal\"];\n\n\treturn self;\n}\n\n@end\n\n@implementation RACChannelTerminal\n\n#pragma mark Lifecycle\n\n- (id)initWithValues:(RACSignal *)values otherTerminal:(id<RACSubscriber>)otherTerminal {\n\tNSCParameterAssert(values != nil);\n\tNSCParameterAssert(otherTerminal != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_values = values;\n\t_otherTerminal = otherTerminal;\n\n\treturn self;\n}\n\n#pragma mark RACSignal\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\treturn [self.values subscribe:subscriber];\n}\n\n#pragma mark <RACSubscriber>\n\n- (void)sendNext:(id)value {\n\t[self.otherTerminal sendNext:value];\n}\n\n- (void)sendError:(NSError *)error {\n\t[self.otherTerminal sendError:error];\n}\n\n- (void)sendCompleted {\n\t[self.otherTerminal sendCompleted];\n}\n\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)disposable {\n\t[self.otherTerminal didSubscribeWithDisposable:disposable];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACCommand.h",
    "content": "//\n//  RACCommand.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/3/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n/// The domain for errors originating within `RACCommand`.\nextern NSString * const RACCommandErrorDomain;\n\n/// -execute: was invoked while the command was disabled.\nextern const NSInteger RACCommandErrorNotEnabled;\n\n/// A `userInfo` key for an error, associated with the `RACCommand` that the\n/// error originated from.\n///\n/// This is included only when the error code is `RACCommandErrorNotEnabled`.\nextern NSString * const RACUnderlyingCommandErrorKey;\n\n/// A command is a signal triggered in response to some action, typically\n/// UI-related.\n@interface RACCommand<__contravariant InputType> : NSObject\n\n/// A signal of the signals returned by successful invocations of -execute:\n/// (i.e., while the receiver is `enabled`).\n///\n/// Errors will be automatically caught upon the inner signals, and sent upon\n/// `errors` instead. If you _want_ to receive inner errors, use -execute: or\n/// -[RACSignal materialize].\n/// \n/// Only executions that begin _after_ subscription will be sent upon this\n/// signal. All inner signals will arrive upon the main thread.\n@property (nonatomic, strong, readonly) RACSignal *executionSignals;\n\n/// A signal of whether this command is currently executing.\n///\n/// This will send YES whenever -execute: is invoked and the created signal has\n/// not yet terminated. Once all executions have terminated, `executing` will\n/// send NO.\n///\n/// This signal will send its current value upon subscription, and then all\n/// future values on the main thread.\n@property (nonatomic, strong, readonly) RACSignal *executing;\n\n/// A signal of whether this command is able to execute.\n///\n/// This will send NO if:\n///\n///  - The command was created with an `enabledSignal`, and NO is sent upon that\n///    signal, or\n///  - `allowsConcurrentExecution` is NO and the command has started executing.\n///\n/// Once the above conditions are no longer met, the signal will send YES.\n///\n/// This signal will send its current value upon subscription, and then all\n/// future values on the main thread.\n@property (nonatomic, strong, readonly) RACSignal *enabled;\n\n/// Forwards any errors that occur within signals returned by -execute:.\n///\n/// When an error occurs on a signal returned from -execute:, this signal will\n/// send the associated NSError value as a `next` event (since an `error` event\n/// would terminate the stream).\n///\n/// After subscription, this signal will send all future errors on the main\n/// thread.\n@property (nonatomic, strong, readonly) RACSignal *errors;\n\n/// Whether the command allows multiple executions to proceed concurrently.\n///\n/// The default value for this property is NO.\n@property (atomic, assign) BOOL allowsConcurrentExecution;\n\n/// Invokes -initWithEnabled:signalBlock: with a nil `enabledSignal`.\n- (id)initWithSignalBlock:(RACSignal * (^)(InputType input))signalBlock;\n\n/// Initializes a command that is conditionally enabled.\n///\n/// This is the designated initializer for this class.\n///\n/// enabledSignal - A signal of BOOLs which indicate whether the command should\n///                 be enabled. `enabled` will be based on the latest value sent\n///                 from this signal. Before any values are sent, `enabled` will\n///                 default to YES. This argument may be nil.\n/// signalBlock   - A block which will map each input value (passed to -execute:)\n///                 to a signal of work. The returned signal will be multicasted\n///                 to a replay subject, sent on `executionSignals`, then\n///                 subscribed to synchronously. Neither the block nor the\n///                 returned signal may be nil.\n- (id)initWithEnabled:(RACSignal *)enabledSignal signalBlock:(RACSignal * (^)(InputType input))signalBlock;\n\n/// If the receiver is enabled, this method will:\n///\n///  1. Invoke the `signalBlock` given at the time of initialization.\n///  2. Multicast the returned signal to a RACReplaySubject.\n///  3. Send the multicasted signal on `executionSignals`.\n///  4. Subscribe (connect) to the original signal on the main thread.\n///\n/// input - The input value to pass to the receiver's `signalBlock`. This may be\n///         nil.\n///\n/// Returns the multicasted signal, after subscription. If the receiver is not\n/// enabled, returns a signal that will send an error with code\n/// RACCommandErrorNotEnabled.\n- (RACSignal *)execute:(InputType)input;\n\n@end\n\n@interface RACCommand (Unavailable)\n\n@property (atomic, readonly) BOOL canExecute __attribute__((unavailable(\"Use the 'enabled' signal instead\")));\n\n+ (instancetype)command __attribute__((unavailable(\"Use -initWithSignalBlock: instead\")));\n+ (instancetype)commandWithCanExecuteSignal:(RACSignal *)canExecuteSignal __attribute__((unavailable(\"Use -initWithEnabled:signalBlock: instead\")));\n- (id)initWithCanExecuteSignal:(RACSignal *)canExecuteSignal __attribute__((unavailable(\"Use -initWithEnabled:signalBlock: instead\")));\n- (RACSignal *)addSignalBlock:(RACSignal * (^)(id value))signalBlock __attribute__((unavailable(\"Pass the signalBlock to -initWithSignalBlock: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACCommand.m",
    "content": "//\n//  RACCommand.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/3/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACCommand.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACMulticastConnection.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n#import \"RACSequence.h\"\n#import \"RACSignal+Operations.h\"\n#import <libkern/OSAtomic.h>\n\nNSString * const RACCommandErrorDomain = @\"RACCommandErrorDomain\";\nNSString * const RACUnderlyingCommandErrorKey = @\"RACUnderlyingCommandErrorKey\";\n\nconst NSInteger RACCommandErrorNotEnabled = 1;\n\n@interface RACCommand () {\n\t// Atomic backing variable for `allowsConcurrentExecution`.\n\tvolatile uint32_t _allowsConcurrentExecution;\n}\n\n/// A subject that sends added execution signals.\n@property (nonatomic, strong, readonly) RACSubject *addedExecutionSignalsSubject;\n\n/// A subject that sends the new value of `allowsConcurrentExecution` whenever it changes.\n@property (nonatomic, strong, readonly) RACSubject *allowsConcurrentExecutionSubject;\n\n// `enabled`, but without a hop to the main thread.\n//\n// Values from this signal may arrive on any thread.\n@property (nonatomic, strong, readonly) RACSignal *immediateEnabled;\n\n// The signal block that the receiver was initialized with.\n@property (nonatomic, copy, readonly) RACSignal * (^signalBlock)(id input);\n\n@end\n\n@implementation RACCommand\n\n#pragma mark Properties\n\n- (BOOL)allowsConcurrentExecution {\n\treturn _allowsConcurrentExecution != 0;\n}\n\n- (void)setAllowsConcurrentExecution:(BOOL)allowed {\n\tif (allowed) {\n\t\tOSAtomicOr32Barrier(1, &_allowsConcurrentExecution);\n\t} else {\n\t\tOSAtomicAnd32Barrier(0, &_allowsConcurrentExecution);\n\t}\n\n\t[self.allowsConcurrentExecutionSubject sendNext:@(_allowsConcurrentExecution)];\n}\n\n#pragma mark Lifecycle\n\n- (id)init {\n\tNSCAssert(NO, @\"Use -initWithSignalBlock: instead\");\n\treturn nil;\n}\n\n- (id)initWithSignalBlock:(RACSignal * (^)(id input))signalBlock {\n\treturn [self initWithEnabled:nil signalBlock:signalBlock];\n}\n\n- (void)dealloc {\n\t[_addedExecutionSignalsSubject sendCompleted];\n\t[_allowsConcurrentExecutionSubject sendCompleted];\n}\n\n- (id)initWithEnabled:(RACSignal *)enabledSignal signalBlock:(RACSignal * (^)(id input))signalBlock {\n\tNSCParameterAssert(signalBlock != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_addedExecutionSignalsSubject = [RACSubject new];\n\t_allowsConcurrentExecutionSubject = [RACSubject new];\n\t_signalBlock = [signalBlock copy];\n\n\t_executionSignals = [[[self.addedExecutionSignalsSubject\n\t\tmap:^(RACSignal *signal) {\n\t\t\treturn [signal catchTo:[RACSignal empty]];\n\t\t}]\n\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\tsetNameWithFormat:@\"%@ -executionSignals\", self];\n\t\n\t// `errors` needs to be multicasted so that it picks up all\n\t// `activeExecutionSignals` that are added.\n\t//\n\t// In other words, if someone subscribes to `errors` _after_ an execution\n\t// has started, it should still receive any error from that execution.\n\tRACMulticastConnection *errorsConnection = [[[self.addedExecutionSignalsSubject\n\t\tflattenMap:^(RACSignal *signal) {\n\t\t\treturn [[signal\n\t\t\t\tignoreValues]\n\t\t\t\tcatch:^(NSError *error) {\n\t\t\t\t\treturn [RACSignal return:error];\n\t\t\t\t}];\n\t\t}]\n\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\tpublish];\n\t\n\t_errors = [errorsConnection.signal setNameWithFormat:@\"%@ -errors\", self];\n\t[errorsConnection connect];\n\n\tRACSignal *immediateExecuting = [[[[self.addedExecutionSignalsSubject\n\t\tflattenMap:^(RACSignal *signal) {\n\t\t\treturn [[[signal\n\t\t\t\tcatchTo:[RACSignal empty]]\n\t\t\t\tthen:^{\n\t\t\t\t\treturn [RACSignal return:@-1];\n\t\t\t\t}]\n\t\t\t\tstartWith:@1];\n\t\t}]\n\t\tscanWithStart:@0 reduce:^(NSNumber *running, NSNumber *next) {\n\t\t\treturn @(running.integerValue + next.integerValue);\n\t\t}]\n\t\tmap:^(NSNumber *count) {\n\t\t\treturn @(count.integerValue > 0);\n\t\t}]\n\t\tstartWith:@NO];\n\n\t_executing = [[[[[immediateExecuting\n\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\t// This is useful before the first value arrives on the main thread.\n\t\tstartWith:@NO]\n\t\tdistinctUntilChanged]\n\t\treplayLast]\n\t\tsetNameWithFormat:@\"%@ -executing\", self];\n\t\n\tRACSignal *moreExecutionsAllowed = [RACSignal\n\t\tif:[self.allowsConcurrentExecutionSubject startWith:@NO]\n\t\tthen:[RACSignal return:@YES]\n\t\telse:[immediateExecuting not]];\n\t\n\tif (enabledSignal == nil) {\n\t\tenabledSignal = [RACSignal return:@YES];\n\t} else {\n\t\tenabledSignal = [enabledSignal startWith:@YES];\n\t}\n\t\n\t_immediateEnabled = [[[[RACSignal\n\t\tcombineLatest:@[ enabledSignal, moreExecutionsAllowed ]]\n\t\tand]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\treplayLast];\n\t\n\t_enabled = [[[[[self.immediateEnabled\n\t\ttake:1]\n\t\tconcat:[[self.immediateEnabled skip:1] deliverOn:RACScheduler.mainThreadScheduler]]\n\t\tdistinctUntilChanged]\n\t\treplayLast]\n\t\tsetNameWithFormat:@\"%@ -enabled\", self];\n\n\treturn self;\n}\n\n#pragma mark Execution\n\n- (RACSignal *)execute:(id)input {\n\t// `immediateEnabled` is guaranteed to send a value upon subscription, so\n\t// -first is acceptable here.\n\tBOOL enabled = [[self.immediateEnabled first] boolValue];\n\tif (!enabled) {\n\t\tNSError *error = [NSError errorWithDomain:RACCommandErrorDomain code:RACCommandErrorNotEnabled userInfo:@{\n\t\t\tNSLocalizedDescriptionKey: NSLocalizedString(@\"The command is disabled and cannot be executed\", nil),\n\t\t\tRACUnderlyingCommandErrorKey: self\n\t\t}];\n\n\t\treturn [RACSignal error:error];\n\t}\n\n\tRACSignal *signal = self.signalBlock(input);\n\tNSCAssert(signal != nil, @\"nil signal returned from signal block for value: %@\", input);\n\n\t// We subscribe to the signal on the main thread so that it occurs _after_\n\t// -addActiveExecutionSignal: completes below.\n\t//\n\t// This means that `executing` and `enabled` will send updated values before\n\t// the signal actually starts performing work.\n\tRACMulticastConnection *connection = [[signal\n\t\tsubscribeOn:RACScheduler.mainThreadScheduler]\n\t\tmulticast:[RACReplaySubject subject]];\n\t\n\t[self.addedExecutionSignalsSubject sendNext:connection.signal];\n\n\t[connection connect];\n\treturn [connection.signal setNameWithFormat:@\"%@ -execute: %@\", self, RACDescription(input)];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACCompoundDisposable.h",
    "content": "//\n//  RACCompoundDisposable.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDisposable.h\"\n\n/// A disposable of disposables. When it is disposed, it disposes of all its\n/// contained disposables.\n///\n/// If -addDisposable: is called after the compound disposable has been disposed\n/// of, the given disposable is immediately disposed. This allows a compound\n/// disposable to act as a stand-in for a disposable that will be delivered\n/// asynchronously.\n@interface RACCompoundDisposable : RACDisposable\n\n/// Creates and returns a new compound disposable.\n+ (instancetype)compoundDisposable;\n\n/// Creates and returns a new compound disposable containing the given\n/// disposables.\n+ (instancetype)compoundDisposableWithDisposables:(NSArray *)disposables;\n\n/// Adds the given disposable. If the receiving disposable has already been\n/// disposed of, the given disposable is disposed immediately.\n///\n/// This method is thread-safe.\n///\n/// disposable - The disposable to add. This may be nil, in which case nothing\n///              happens.\n- (void)addDisposable:(RACDisposable *)disposable;\n\n/// Removes the specified disposable from the compound disposable (regardless of\n/// its disposed status), or does nothing if it's not in the compound disposable.\n///\n/// This is mainly useful for limiting the memory usage of the compound\n/// disposable for long-running operations.\n///\n/// This method is thread-safe.\n///\n/// disposable - The disposable to remove. This argument may be nil (to make the\n///              use of weak references easier).\n- (void)removeDisposable:(RACDisposable *)disposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACCompoundDisposable.m",
    "content": "//\n//  RACCompoundDisposable.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACCompoundDisposable.h\"\n#import \"RACCompoundDisposableProvider.h\"\n#import <pthread/pthread.h>\n\n// The number of child disposables for which space will be reserved directly in\n// `RACCompoundDisposable`.\n//\n// This number has been empirically determined to provide a good tradeoff\n// between performance, memory usage, and `RACCompoundDisposable` instance size\n// in a moderately complex GUI application.\n//\n// Profile any change!\n#define RACCompoundDisposableInlineCount 2\n\nstatic CFMutableArrayRef RACCreateDisposablesArray(void) {\n\t// Compare values using only pointer equality.\n\tCFArrayCallBacks callbacks = kCFTypeArrayCallBacks;\n\tcallbacks.equal = NULL;\n\n\treturn CFArrayCreateMutable(NULL, 0, &callbacks);\n}\n\n@interface RACCompoundDisposable () {\n\t// Used for synchronization.\n\tpthread_mutex_t _mutex;\n\n\t#if RACCompoundDisposableInlineCount\n\t// A fast array to the first N of the receiver's disposables.\n\t//\n\t// Once this is full, `_disposables` will be created and used for additional\n\t// disposables.\n\t//\n\t// This array should only be manipulated while _mutex is held.\n\tRACDisposable *_inlineDisposables[RACCompoundDisposableInlineCount];\n\t#endif\n\n\t// Contains the receiver's disposables.\n\t//\n\t// This array should only be manipulated while _mutex is held. If\n\t// `_disposed` is YES, this may be NULL.\n\tCFMutableArrayRef _disposables;\n\n\t// Whether the receiver has already been disposed.\n\t//\n\t// This ivar should only be accessed while _mutex is held.\n\tBOOL _disposed;\n}\n\n@end\n\n@implementation RACCompoundDisposable\n\n#pragma mark Properties\n\n- (BOOL)isDisposed {\n\tpthread_mutex_lock(&_mutex);\n\tBOOL disposed = _disposed;\n\tpthread_mutex_unlock(&_mutex);\n\n\treturn disposed;\n}\n\n#pragma mark Lifecycle\n\n+ (instancetype)compoundDisposable {\n\treturn [[self alloc] initWithDisposables:nil];\n}\n\n+ (instancetype)compoundDisposableWithDisposables:(NSArray *)disposables {\n\treturn [[self alloc] initWithDisposables:disposables];\n}\n\n- (instancetype)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\tconst int result = pthread_mutex_init(&_mutex, NULL);\n\tNSCAssert(0 == result, @\"Failed to initialize mutex with error %d.\", result);\n\n\treturn self;\n}\n\n- (instancetype)initWithDisposables:(NSArray *)otherDisposables {\n\tself = [self init];\n\tif (self == nil) return nil;\n\n\t#if RACCompoundDisposableInlineCount\n\t[otherDisposables enumerateObjectsUsingBlock:^(RACDisposable *disposable, NSUInteger index, BOOL *stop) {\n\t\t_inlineDisposables[index] = disposable;\n\n\t\t// Stop after this iteration if we've reached the end of the inlined\n\t\t// array.\n\t\tif (index == RACCompoundDisposableInlineCount - 1) *stop = YES;\n\t}];\n\t#endif\n\n\tif (otherDisposables.count > RACCompoundDisposableInlineCount) {\n\t\t_disposables = RACCreateDisposablesArray();\n\n\t\tCFRange range = CFRangeMake(RACCompoundDisposableInlineCount, (CFIndex)otherDisposables.count - RACCompoundDisposableInlineCount);\n\t\tCFArrayAppendArray(_disposables, (__bridge CFArrayRef)otherDisposables, range);\n\t}\n\n\treturn self;\n}\n\n- (instancetype)initWithBlock:(void (^)(void))block {\n\tRACDisposable *disposable = [RACDisposable disposableWithBlock:block];\n\treturn [self initWithDisposables:@[ disposable ]];\n}\n\n- (void)dealloc {\n\t#if RACCompoundDisposableInlineCount\n\tfor (unsigned i = 0; i < RACCompoundDisposableInlineCount; i++) {\n\t\t_inlineDisposables[i] = nil;\n\t}\n\t#endif\n\n\tif (_disposables != NULL) {\n\t\tCFRelease(_disposables);\n\t\t_disposables = NULL;\n\t}\n\n\tconst int result = pthread_mutex_destroy(&_mutex);\n\tNSCAssert(0 == result, @\"Failed to destroy mutex with error %d.\", result);\n}\n\n#pragma mark Addition and Removal\n\n- (void)addDisposable:(RACDisposable *)disposable {\n\tNSCParameterAssert(disposable != self);\n\tif (disposable == nil || disposable.disposed) return;\n\n\tBOOL shouldDispose = NO;\n\n\tpthread_mutex_lock(&_mutex);\n\t{\n\t\tif (_disposed) {\n\t\t\tshouldDispose = YES;\n\t\t} else {\n\t\t\t#if RACCompoundDisposableInlineCount\n\t\t\tfor (unsigned i = 0; i < RACCompoundDisposableInlineCount; i++) {\n\t\t\t\tif (_inlineDisposables[i] == nil) {\n\t\t\t\t\t_inlineDisposables[i] = disposable;\n\t\t\t\t\tgoto foundSlot;\n\t\t\t\t}\n\t\t\t}\n\t\t\t#endif\n\n\t\t\tif (_disposables == NULL) _disposables = RACCreateDisposablesArray();\n\t\t\tCFArrayAppendValue(_disposables, (__bridge void *)disposable);\n\n\t\t\tif (RACCOMPOUNDDISPOSABLE_ADDED_ENABLED()) {\n\t\t\t\tRACCOMPOUNDDISPOSABLE_ADDED(self.description.UTF8String, disposable.description.UTF8String, CFArrayGetCount(_disposables) + RACCompoundDisposableInlineCount);\n\t\t\t}\n\n\t\t#if RACCompoundDisposableInlineCount\n\t\tfoundSlot:;\n\t\t#endif\n\t\t}\n\t}\n\tpthread_mutex_unlock(&_mutex);\n\n\t// Performed outside of the lock in case the compound disposable is used\n\t// recursively.\n\tif (shouldDispose) [disposable dispose];\n}\n\n- (void)removeDisposable:(RACDisposable *)disposable {\n\tif (disposable == nil) return;\n\n\tpthread_mutex_lock(&_mutex);\n\t{\n\t\tif (!_disposed) {\n\t\t\t#if RACCompoundDisposableInlineCount\n\t\t\tfor (unsigned i = 0; i < RACCompoundDisposableInlineCount; i++) {\n\t\t\t\tif (_inlineDisposables[i] == disposable) _inlineDisposables[i] = nil;\n\t\t\t}\n\t\t\t#endif\n\n\t\t\tif (_disposables != NULL) {\n\t\t\t\tCFIndex count = CFArrayGetCount(_disposables);\n\t\t\t\tfor (CFIndex i = count - 1; i >= 0; i--) {\n\t\t\t\t\tconst void *item = CFArrayGetValueAtIndex(_disposables, i);\n\t\t\t\t\tif (item == (__bridge void *)disposable) {\n\t\t\t\t\t\tCFArrayRemoveValueAtIndex(_disposables, i);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (RACCOMPOUNDDISPOSABLE_REMOVED_ENABLED()) {\n\t\t\t\t\tRACCOMPOUNDDISPOSABLE_REMOVED(self.description.UTF8String, disposable.description.UTF8String, CFArrayGetCount(_disposables) + RACCompoundDisposableInlineCount);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tpthread_mutex_unlock(&_mutex);\n}\n\n#pragma mark RACDisposable\n\nstatic void disposeEach(const void *value, void *context) {\n\tRACDisposable *disposable = (__bridge id)value;\n\t[disposable dispose];\n}\n\n- (void)dispose {\n\t#if RACCompoundDisposableInlineCount\n\tRACDisposable *inlineCopy[RACCompoundDisposableInlineCount];\n\t#endif\n\n\tCFArrayRef remainingDisposables = NULL;\n\n\tpthread_mutex_lock(&_mutex);\n\t{\n\t\t_disposed = YES;\n\n\t\t#if RACCompoundDisposableInlineCount\n\t\tfor (unsigned i = 0; i < RACCompoundDisposableInlineCount; i++) {\n\t\t\tinlineCopy[i] = _inlineDisposables[i];\n\t\t\t_inlineDisposables[i] = nil;\n\t\t}\n\t\t#endif\n\n\t\tremainingDisposables = _disposables;\n\t\t_disposables = NULL;\n\t}\n\tpthread_mutex_unlock(&_mutex);\n\n\t#if RACCompoundDisposableInlineCount\n\t// Dispose outside of the lock in case the compound disposable is used\n\t// recursively.\n\tfor (unsigned i = 0; i < RACCompoundDisposableInlineCount; i++) {\n\t\t[inlineCopy[i] dispose];\n\t}\n\t#endif\n\n\tif (remainingDisposables == NULL) return;\n\n\tCFIndex count = CFArrayGetCount(remainingDisposables);\n\tCFArrayApplyFunction(remainingDisposables, CFRangeMake(0, count), &disposeEach, NULL);\n\tCFRelease(remainingDisposables);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACCompoundDisposableProvider.d",
    "content": "provider RACCompoundDisposable {\n    probe added(char *compoundDisposable, char *disposable, long newTotal);\n    probe removed(char *compoundDisposable, char *disposable, long newTotal);\n};\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDelegateProxy.h",
    "content": "//\n//  RACDelegateProxy.h\n//  ReactiveCocoa\n//\n//  Created by Cody Krieger on 5/19/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACSignal;\n\n// A private delegate object suitable for using\n// -rac_signalForSelector:fromProtocol: upon.\n@interface RACDelegateProxy : NSObject\n\n// The delegate to which messages should be forwarded if not handled by\n// any -signalForSelector: applications.\n@property (nonatomic, unsafe_unretained) id rac_proxiedDelegate;\n\n// Creates a delegate proxy capable of responding to selectors from `protocol`.\n- (instancetype)initWithProtocol:(Protocol *)protocol;\n\n// Calls -rac_signalForSelector:fromProtocol: using the `protocol` specified\n// during initialization.\n- (RACSignal *)signalForSelector:(SEL)selector;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDelegateProxy.m",
    "content": "//\n//  RACDelegateProxy.m\n//  ReactiveCocoa\n//\n//  Created by Cody Krieger on 5/19/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDelegateProxy.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import <objc/runtime.h>\n\n@interface RACDelegateProxy () {\n\t// Declared as an ivar to avoid method naming conflicts.\n\tProtocol *_protocol;\n}\n\n@end\n\n@implementation RACDelegateProxy\n\n#pragma mark Lifecycle\n\n- (instancetype)initWithProtocol:(Protocol *)protocol {\n\tNSCParameterAssert(protocol != NULL);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\tclass_addProtocol(self.class, protocol);\n\n\t_protocol = protocol;\n\n\treturn self;\n}\n\n#pragma mark API\n\n- (RACSignal *)signalForSelector:(SEL)selector {\n\treturn [self rac_signalForSelector:selector fromProtocol:_protocol];\n}\n\n#pragma mark NSObject\n\n- (BOOL)isProxy {\n\treturn YES;\n}\n\n- (void)forwardInvocation:(NSInvocation *)invocation {\n\t[invocation invokeWithTarget:self.rac_proxiedDelegate];\n}\n\n- (NSMethodSignature *)methodSignatureForSelector:(SEL)selector {\n\t// Look for the selector as an optional instance method.\n\tstruct objc_method_description methodDescription = protocol_getMethodDescription(_protocol, selector, NO, YES);\n\n\tif (methodDescription.name == NULL) {\n\t\t// Then fall back to looking for a required instance\n\t\t// method.\n\t\tmethodDescription = protocol_getMethodDescription(_protocol, selector, YES, YES);\n\t\tif (methodDescription.name == NULL) return [super methodSignatureForSelector:selector];\n\t}\n\n\treturn [NSMethodSignature signatureWithObjCTypes:methodDescription.types];\n}\n\n- (BOOL)respondsToSelector:(SEL)selector {\n\t// Add the delegate to the autorelease pool, so it doesn't get deallocated\n\t// between this method call and -forwardInvocation:.\n\t__autoreleasing id delegate = self.rac_proxiedDelegate;\n\tif ([delegate respondsToSelector:selector]) return YES;\n    \n\treturn [super respondsToSelector:selector];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDisposable.h",
    "content": "//\n//  RACDisposable.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACScopedDisposable;\n\n/// A disposable encapsulates the work necessary to tear down and cleanup a\n/// subscription.\n@interface RACDisposable : NSObject\n\n/// Whether the receiver has been disposed.\n///\n/// Use of this property is discouraged, since it may be set to `YES`\n/// concurrently at any time.\n///\n/// This property is not KVO-compliant.\n@property (atomic, assign, getter = isDisposed, readonly) BOOL disposed;\n\n+ (instancetype)disposableWithBlock:(void (^)(void))block;\n\n/// Performs the disposal work. Can be called multiple times, though subsequent\n/// calls won't do anything.\n- (void)dispose;\n\n/// Returns a new disposable which will dispose of this disposable when it gets\n/// dealloc'd.\n- (RACScopedDisposable *)asScopedDisposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDisposable.m",
    "content": "//\n//  RACDisposable.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDisposable.h\"\n#import \"RACScopedDisposable.h\"\n#import <libkern/OSAtomic.h>\n\n@interface RACDisposable () {\n\t// A copied block of type void (^)(void) containing the logic for disposal,\n\t// a pointer to `self` if no logic should be performed upon disposal, or\n\t// NULL if the receiver is already disposed.\n\t//\n\t// This should only be used atomically.\n\tvoid * volatile _disposeBlock;\n}\n\n@end\n\n@implementation RACDisposable\n\n#pragma mark Properties\n\n- (BOOL)isDisposed {\n\treturn _disposeBlock == NULL;\n}\n\n#pragma mark Lifecycle\n\n- (id)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_disposeBlock = (__bridge void *)self;\n\tOSMemoryBarrier();\n\n\treturn self;\n}\n\n- (id)initWithBlock:(void (^)(void))block {\n\tNSCParameterAssert(block != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_disposeBlock = (void *)CFBridgingRetain([block copy]); \n\tOSMemoryBarrier();\n\n\treturn self;\n}\n\n+ (instancetype)disposableWithBlock:(void (^)(void))block {\n\treturn [[self alloc] initWithBlock:block];\n}\n\n- (void)dealloc {\n\tif (_disposeBlock == NULL || _disposeBlock == (__bridge void *)self) return;\n\n\tCFRelease(_disposeBlock);\n\t_disposeBlock = NULL;\n}\n\n#pragma mark Disposal\n\n- (void)dispose {\n\tvoid (^disposeBlock)(void) = NULL;\n\n\twhile (YES) {\n\t\tvoid *blockPtr = _disposeBlock;\n\t\tif (OSAtomicCompareAndSwapPtrBarrier(blockPtr, NULL, &_disposeBlock)) {\n\t\t\tif (blockPtr != (__bridge void *)self) {\n\t\t\t\tdisposeBlock = CFBridgingRelease(blockPtr);\n\t\t\t}\n\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tif (disposeBlock != nil) disposeBlock();\n}\n\n#pragma mark Scoped Disposables\n\n- (RACScopedDisposable *)asScopedDisposable {\n\treturn [RACScopedDisposable scopedDisposableWithDisposable:self];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicPropertySuperclass.h",
    "content": "//  Copyright (c) 2015 GitHub. All rights reserved.\n\n#import <Foundation/Foundation.h>\n\n/// This superclass is an implementation detail of DynamicProperty. Do\n/// not use it.\n@interface RACDynamicPropertySuperclass : NSObject\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicPropertySuperclass.m",
    "content": "//  Copyright (c) 2015 GitHub. All rights reserved.\n\n#import \"RACDynamicPropertySuperclass.h\"\n\n@interface RACDynamicPropertySuperclass ()\n\n@property id value;\n@property id rac_value;\n\n@end\n\n@implementation RACDynamicPropertySuperclass\n\n- (id)value {\n\treturn self.rac_value;\n}\n\n- (void)setValue:(id)value {\n\tself.rac_value = value;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicSequence.h",
    "content": "//\n//  RACDynamicSequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class that implements a sequence dynamically using blocks.\n@interface RACDynamicSequence : RACSequence\n\n// Returns a sequence which evaluates `dependencyBlock` only once, the first\n// time either `headBlock` or `tailBlock` is evaluated. The result of\n// `dependencyBlock` will be passed into `headBlock` and `tailBlock` when\n// invoked.\n+ (RACSequence *)sequenceWithLazyDependency:(id (^)(void))dependencyBlock headBlock:(id (^)(id dependency))headBlock tailBlock:(RACSequence *(^)(id dependency))tailBlock;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicSequence.m",
    "content": "//\n//  RACDynamicSequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACDynamicSequence.h\"\n#import <libkern/OSAtomic.h>\n\n// Determines how RACDynamicSequences will be deallocated before the next one is\n// shifted onto the autorelease pool.\n//\n// This avoids stack overflows when deallocating long chains of dynamic\n// sequences.\n#define DEALLOC_OVERFLOW_GUARD 100\n\n@interface RACDynamicSequence () {\n\t// The value for the \"head\" property, if it's been evaluated already.\n\t//\n\t// Because it's legal for head to be nil, this ivar is valid any time\n\t// headBlock is nil.\n\t//\n\t// This ivar should only be accessed while synchronized on self.\n\tid _head;\n\n\t// The value for the \"tail\" property, if it's been evaluated already.\n\t//\n\t// Because it's legal for tail to be nil, this ivar is valid any time\n\t// tailBlock is nil.\n\t//\n\t// This ivar should only be accessed while synchronized on self.\n\tRACSequence *_tail;\n\n\t// The result of an evaluated `dependencyBlock`.\n\t//\n\t// This ivar is valid any time `hasDependency` is YES and `dependencyBlock`\n\t// is nil.\n\t//\n\t// This ivar should only be accessed while synchronized on self.\n\tid _dependency;\n}\n\n// A block used to evaluate head. This should be set to nil after `_head` has been\n// initialized.\n//\n// This is marked `strong` instead of `copy` because of some bizarre block\n// copying bug. See https://github.com/ReactiveCocoa/ReactiveCocoa/pull/506.\n//\n// The signature of this block varies based on the value of `hasDependency`:\n//\n//  - If YES, this block is of type `id (^)(id)`.\n//  - If NO, this block is of type `id (^)(void)`.\n//\n// This property should only be accessed while synchronized on self.\n@property (nonatomic, strong) id headBlock;\n\n// A block used to evaluate tail. This should be set to nil after `_tail` has been\n// initialized.\n//\n// This is marked `strong` instead of `copy` because of some bizarre block\n// copying bug. See https://github.com/ReactiveCocoa/ReactiveCocoa/pull/506.\n//\n// The signature of this block varies based on the value of `hasDependency`:\n//\n//  - If YES, this block is of type `RACSequence * (^)(id)`.\n//  - If NO, this block is of type `RACSequence * (^)(void)`.\n//\n// This property should only be accessed while synchronized on self.\n@property (nonatomic, strong) id tailBlock;\n\n// Whether the receiver was initialized with a `dependencyBlock`.\n//\n// This property should only be accessed while synchronized on self.\n@property (nonatomic, assign) BOOL hasDependency;\n\n// A dependency which must be evaluated before `headBlock` and `tailBlock`. This\n// should be set to nil after `_dependency` and `dependencyBlockExecuted` have\n// been set.\n//\n// This is marked `strong` instead of `copy` because of some bizarre block\n// copying bug. See https://github.com/ReactiveCocoa/ReactiveCocoa/pull/506.\n//\n// This property should only be accessed while synchronized on self.\n@property (nonatomic, strong) id (^dependencyBlock)(void);\n\n@end\n\n@implementation RACDynamicSequence\n\n#pragma mark Lifecycle\n\n+ (RACSequence *)sequenceWithHeadBlock:(id (^)(void))headBlock tailBlock:(RACSequence *(^)(void))tailBlock {\n\tNSCParameterAssert(headBlock != nil);\n\n\tRACDynamicSequence *seq = [[RACDynamicSequence alloc] init];\n\tseq.headBlock = [headBlock copy];\n\tseq.tailBlock = [tailBlock copy];\n\tseq.hasDependency = NO;\n\treturn seq;\n}\n\n+ (RACSequence *)sequenceWithLazyDependency:(id (^)(void))dependencyBlock headBlock:(id (^)(id dependency))headBlock tailBlock:(RACSequence *(^)(id dependency))tailBlock {\n\tNSCParameterAssert(dependencyBlock != nil);\n\tNSCParameterAssert(headBlock != nil);\n\n\tRACDynamicSequence *seq = [[RACDynamicSequence alloc] init];\n\tseq.headBlock = [headBlock copy];\n\tseq.tailBlock = [tailBlock copy];\n\tseq.dependencyBlock = [dependencyBlock copy];\n\tseq.hasDependency = YES;\n\treturn seq;\n}\n\n- (void)dealloc {\n\tstatic volatile int32_t directDeallocCount = 0;\n\n\tif (OSAtomicIncrement32(&directDeallocCount) >= DEALLOC_OVERFLOW_GUARD) {\n\t\tOSAtomicAdd32(-DEALLOC_OVERFLOW_GUARD, &directDeallocCount);\n\n\t\t// Put this sequence's tail onto the autorelease pool so we stop\n\t\t// recursing.\n\t\t__autoreleasing RACSequence *tail __attribute__((unused)) = _tail;\n\t}\n\t\n\t_tail = nil;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\t@synchronized (self) {\n\t\tid untypedHeadBlock = self.headBlock;\n\t\tif (untypedHeadBlock == nil) return _head;\n\n\t\tif (self.hasDependency) {\n\t\t\tif (self.dependencyBlock != nil) {\n\t\t\t\t_dependency = self.dependencyBlock();\n\t\t\t\tself.dependencyBlock = nil;\n\t\t\t}\n\n\t\t\tid (^headBlock)(id) = untypedHeadBlock;\n\t\t\t_head = headBlock(_dependency);\n\t\t} else {\n\t\t\tid (^headBlock)(void) = untypedHeadBlock;\n\t\t\t_head = headBlock();\n\t\t}\n\n\t\tself.headBlock = nil;\n\t\treturn _head;\n\t}\n}\n\n- (RACSequence *)tail {\n\t@synchronized (self) {\n\t\tid untypedTailBlock = self.tailBlock;\n\t\tif (untypedTailBlock == nil) return _tail;\n\n\t\tif (self.hasDependency) {\n\t\t\tif (self.dependencyBlock != nil) {\n\t\t\t\t_dependency = self.dependencyBlock();\n\t\t\t\tself.dependencyBlock = nil;\n\t\t\t}\n\n\t\t\tRACSequence * (^tailBlock)(id) = untypedTailBlock;\n\t\t\t_tail = tailBlock(_dependency);\n\t\t} else {\n\t\t\tRACSequence * (^tailBlock)(void) = untypedTailBlock;\n\t\t\t_tail = tailBlock();\n\t\t}\n\n\t\tif (_tail.name == nil) _tail.name = self.name;\n\n\t\tself.tailBlock = nil;\n\t\treturn _tail;\n\t}\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\tid head = @\"(unresolved)\";\n\tid tail = @\"(unresolved)\";\n\n\t@synchronized (self) {\n\t\tif (self.headBlock == nil) head = _head;\n\t\tif (self.tailBlock == nil) {\n\t\t\ttail = _tail;\n\t\t\tif (tail == self) tail = @\"(self)\";\n\t\t}\n\t}\n\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, head = %@, tail = %@ }\", self.class, self, self.name, head, tail];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicSignal.h",
    "content": "//\n//  RACDynamicSignal.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n\n// A private `RACSignal` subclasses that implements its subscription behavior\n// using a block.\n@interface RACDynamicSignal : RACSignal\n\n+ (RACSignal *)createSignal:(RACDisposable * (^)(id<RACSubscriber> subscriber))didSubscribe;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACDynamicSignal.m",
    "content": "//\n//  RACDynamicSignal.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDynamicSignal.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACCompoundDisposable.h\"\n#import \"RACPassthroughSubscriber.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriber.h\"\n#import <libkern/OSAtomic.h>\n\n@interface RACDynamicSignal ()\n\n// The block to invoke for each subscriber.\n@property (nonatomic, copy, readonly) RACDisposable * (^didSubscribe)(id<RACSubscriber> subscriber);\n\n@end\n\n@implementation RACDynamicSignal\n\n#pragma mark Lifecycle\n\n+ (RACSignal *)createSignal:(RACDisposable * (^)(id<RACSubscriber> subscriber))didSubscribe {\n\tRACDynamicSignal *signal = [[self alloc] init];\n\tsignal->_didSubscribe = [didSubscribe copy];\n\treturn [signal setNameWithFormat:@\"+createSignal:\"];\n}\n\n#pragma mark Managing Subscribers\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCParameterAssert(subscriber != nil);\n\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\tsubscriber = [[RACPassthroughSubscriber alloc] initWithSubscriber:subscriber signal:self disposable:disposable];\n\n\tif (self.didSubscribe != NULL) {\n\t\tRACDisposable *schedulingDisposable = [RACScheduler.subscriptionScheduler schedule:^{\n\t\t\tRACDisposable *innerDisposable = self.didSubscribe(subscriber);\n\t\t\t[disposable addDisposable:innerDisposable];\n\t\t}];\n\n\t\t[disposable addDisposable:schedulingDisposable];\n\t}\n\t\n\treturn disposable;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEagerSequence.h",
    "content": "//\n//  RACEagerSequence.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 02/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACArraySequence.h\"\n\n// Private class that implements an eager sequence.\n@interface RACEagerSequence : RACArraySequence\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEagerSequence.m",
    "content": "//\n//  RACEagerSequence.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 02/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACEagerSequence.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACArraySequence.h\"\n\n@implementation RACEagerSequence\n\n#pragma mark RACStream\n\n+ (instancetype)return:(id)value {\n\treturn [[self sequenceWithArray:@[ value ] offset:0] setNameWithFormat:@\"+return: %@\", RACDescription(value)];\n}\n\n- (instancetype)bind:(RACStreamBindBlock (^)(void))block {\n\tNSCParameterAssert(block != nil);\n\tRACStreamBindBlock bindBlock = block();\n\tNSArray *currentArray = self.array;\n\tNSMutableArray *resultArray = [NSMutableArray arrayWithCapacity:currentArray.count];\n\t\n\tfor (id value in currentArray) {\n\t\tBOOL stop = NO;\n\t\tRACSequence *boundValue = (id)bindBlock(value, &stop);\n\t\tif (boundValue == nil) break;\n\n\t\tfor (id x in boundValue) {\n\t\t\t[resultArray addObject:x];\n\t\t}\n\n\t\tif (stop) break;\n\t}\n\t\n\treturn [[self.class sequenceWithArray:resultArray offset:0] setNameWithFormat:@\"[%@] -bind:\", self.name];\n}\n\n- (instancetype)concat:(RACSequence *)sequence {\n\tNSCParameterAssert(sequence != nil);\n\tNSCParameterAssert([sequence isKindOfClass:RACSequence.class]);\n\n\tNSArray *array = [self.array arrayByAddingObjectsFromArray:sequence.array];\n\treturn [[self.class sequenceWithArray:array offset:0] setNameWithFormat:@\"[%@] -concat: %@\", self.name, sequence];\n}\n\n#pragma mark Extended methods\n\n- (RACSequence *)eagerSequence {\n\treturn self;\n}\n\n- (RACSequence *)lazySequence {\n\treturn [RACArraySequence sequenceWithArray:self.array offset:0];\n}\n\n- (id)foldRightWithStart:(id)start reduce:(id (^)(id, RACSequence *rest))reduce {\n\treturn [super foldRightWithStart:start reduce:^(id first, RACSequence *rest) {\n\t\treturn reduce(first, rest.eagerSequence);\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEmptySequence.h",
    "content": "//\n//  RACEmptySequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class representing an empty sequence.\n@interface RACEmptySequence : RACSequence\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEmptySequence.m",
    "content": "//\n//  RACEmptySequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACEmptySequence.h\"\n\n@implementation RACEmptySequence\n\n#pragma mark Lifecycle\n\n+ (instancetype)empty {\n\tstatic id singleton;\n\tstatic dispatch_once_t pred;\n\n\tdispatch_once(&pred, ^{\n\t\tsingleton = [[self alloc] init];\n\t});\n\n\treturn singleton;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\treturn nil;\n}\n\n- (RACSequence *)tail {\n\treturn nil;\n}\n\n- (RACSequence *)bind:(RACStreamBindBlock)bindBlock passingThroughValuesFromSequence:(RACSequence *)passthroughSequence {\n\treturn passthroughSequence ?: self;\n}\n\n#pragma mark NSCoding\n\n- (Class)classForCoder {\n\t// Empty sequences should be encoded as themselves, not array sequences.\n\treturn self.class;\n}\n\n- (id)initWithCoder:(NSCoder *)coder {\n\t// Return the singleton.\n\treturn self.class.empty;\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@ }\", self.class, self, self.name];\n}\n\n- (NSUInteger)hash {\n\t// This hash isn't ideal, but it's better than -[RACSequence hash], which\n\t// would just be zero because we have no head.\n\treturn (NSUInteger)(__bridge void *)self;\n}\n\n- (BOOL)isEqual:(RACSequence *)seq {\n\treturn (self == seq);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEmptySignal.h",
    "content": "//\n//  RACEmptySignal.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n\n// A private `RACSignal` subclasses that synchronously sends completed to any\n// subscribers.\n@interface RACEmptySignal : RACSignal\n\n+ (RACSignal *)empty;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEmptySignal.m",
    "content": "//\n//  RACEmptySignal.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACEmptySignal.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriber.h\"\n\n@implementation RACEmptySignal\n\n#pragma mark Properties\n\n// Only allow this signal's name to be customized in DEBUG, since it's\n// a singleton in release builds (see +empty).\n- (void)setName:(NSString *)name {\n#ifdef DEBUG\n\t[super setName:name];\n#endif\n}\n\n- (NSString *)name {\n#ifdef DEBUG\n\treturn super.name;\n#else\n\treturn @\"+empty\";\n#endif\n}\n\n#pragma mark Lifecycle\n\n+ (RACSignal *)empty {\n#ifdef DEBUG\n\t// Create multiple instances of this class in DEBUG so users can set custom\n\t// names on each.\n\treturn [[[self alloc] init] setNameWithFormat:@\"+empty\"];\n#else\n\tstatic id singleton;\n\tstatic dispatch_once_t pred;\n\n\tdispatch_once(&pred, ^{\n\t\tsingleton = [[self alloc] init];\n\t});\n\n\treturn singleton;\n#endif\n}\n\n#pragma mark Subscription\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCParameterAssert(subscriber != nil);\n\n\treturn [RACScheduler.subscriptionScheduler schedule:^{\n\t\t[subscriber sendCompleted];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACErrorSignal.h",
    "content": "//\n//  RACErrorSignal.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n\n// A private `RACSignal` subclasses that synchronously sends an error to any\n// subscribers.\n@interface RACErrorSignal : RACSignal\n\n+ (RACSignal *)error:(NSError *)error;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACErrorSignal.m",
    "content": "//\n//  RACErrorSignal.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACErrorSignal.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriber.h\"\n\n@interface RACErrorSignal ()\n\n// The error to send upon subscription.\n@property (nonatomic, strong, readonly) NSError *error;\n\n@end\n\n@implementation RACErrorSignal\n\n#pragma mark Lifecycle\n\n+ (RACSignal *)error:(NSError *)error {\n\tRACErrorSignal *signal = [[self alloc] init];\n\tsignal->_error = error;\n\n#ifdef DEBUG\n\t[signal setNameWithFormat:@\"+error: %@\", error];\n#else\n\tsignal.name = @\"+error:\";\n#endif\n\n\treturn signal;\n}\n\n#pragma mark Subscription\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCParameterAssert(subscriber != nil);\n\n\treturn [RACScheduler.subscriptionScheduler schedule:^{\n\t\t[subscriber sendError:self.error];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEvent.h",
    "content": "//\n//  RACEvent.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-01-07.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n/// Describes the type of a RACEvent.\n///\n/// RACEventTypeCompleted - A `completed` event.\n/// RACEventTypeError     - An `error` event.\n/// RACEventTypeNext      - A `next` event.\ntypedef NS_ENUM(NSUInteger, RACEventType) {\n    RACEventTypeCompleted,\n    RACEventTypeError,\n    RACEventTypeNext\n};\n\n/// Represents an event sent by a RACSignal.\n///\n/// This corresponds to the `Notification` class in Rx.\n@interface RACEvent : NSObject <NSCopying>\n\n/// Returns a singleton RACEvent representing the `completed` event.\n+ (instancetype)completedEvent;\n\n/// Returns a new event of type RACEventTypeError, containing the given error.\n+ (instancetype)eventWithError:(NSError *)error;\n\n/// Returns a new event of type RACEventTypeNext, containing the given value.\n+ (instancetype)eventWithValue:(id)value;\n\n/// The type of event represented by the receiver.\n@property (nonatomic, assign, readonly) RACEventType eventType;\n\n/// Returns whether the receiver is of type RACEventTypeCompleted or\n/// RACEventTypeError.\n@property (nonatomic, getter = isFinished, assign, readonly) BOOL finished;\n\n/// The error associated with an event of type RACEventTypeError. This will be\n/// nil for all other event types.\n@property (nonatomic, strong, readonly) NSError *error;\n\n/// The value associated with an event of type RACEventTypeNext. This will be\n/// nil for all other event types.\n@property (nonatomic, strong, readonly) id value;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACEvent.m",
    "content": "//\n//  RACEvent.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-01-07.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACEvent.h\"\n\n@interface RACEvent ()\n\n// An object associated with this event. This will be used for the error and\n// value properties.\n@property (nonatomic, strong, readonly) id object;\n\n// Initializes the receiver with the given type and object.\n- (id)initWithEventType:(RACEventType)type object:(id)object;\n\n@end\n\n@implementation RACEvent\n\n#pragma mark Properties\n\n- (BOOL)isFinished {\n\treturn self.eventType == RACEventTypeCompleted || self.eventType == RACEventTypeError;\n}\n\n- (NSError *)error {\n\treturn (self.eventType == RACEventTypeError ? self.object : nil);\n}\n\n- (id)value {\n\treturn (self.eventType == RACEventTypeNext ? self.object : nil);\n}\n\n#pragma mark Lifecycle\n\n+ (instancetype)completedEvent {\n\tstatic dispatch_once_t pred;\n\tstatic id singleton;\n\n\tdispatch_once(&pred, ^{\n\t\tsingleton = [[self alloc] initWithEventType:RACEventTypeCompleted object:nil];\n\t});\n\n\treturn singleton;\n}\n\n+ (instancetype)eventWithError:(NSError *)error {\n\treturn [[self alloc] initWithEventType:RACEventTypeError object:error];\n}\n\n+ (instancetype)eventWithValue:(id)value {\n\treturn [[self alloc] initWithEventType:RACEventTypeNext object:value];\n}\n\n- (id)initWithEventType:(RACEventType)type object:(id)object {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_eventType = type;\n\t_object = object;\n\n\treturn self;\n}\n\n#pragma mark NSCopying\n\n- (id)copyWithZone:(NSZone *)zone {\n\treturn self;\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\tNSString *eventDescription = nil;\n\n\tswitch (self.eventType) {\n\t\tcase RACEventTypeCompleted:\n\t\t\teventDescription = @\"completed\";\n\t\t\tbreak;\n\n\t\tcase RACEventTypeError:\n\t\t\teventDescription = [NSString stringWithFormat:@\"error = %@\", self.object];\n\t\t\tbreak;\n\n\t\tcase RACEventTypeNext:\n\t\t\teventDescription = [NSString stringWithFormat:@\"next = %@\", self.object];\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tNSCAssert(NO, @\"Unrecognized event type: %i\", (int)self.eventType);\n\t}\n\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ %@ }\", self.class, self, eventDescription];\n}\n\n- (NSUInteger)hash {\n\treturn self.eventType ^ [self.object hash];\n}\n\n- (BOOL)isEqual:(id)event {\n\tif (event == self) return YES;\n\tif (![event isKindOfClass:RACEvent.class]) return NO;\n\tif (self.eventType != [event eventType]) return NO;\n\n\t// Catches the nil case too.\n\treturn self.object == [event object] || [self.object isEqual:[event object]];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACGroupedSignal.h",
    "content": "//\n//  RACGroupedSignal.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubject.h\"\n\n/// A grouped signal is used by -[RACSignal groupBy:transform:].\n@interface RACGroupedSignal : RACSubject\n\n/// The key shared by the group.\n@property (nonatomic, readonly, copy) id<NSCopying> key;\n\n+ (instancetype)signalWithKey:(id<NSCopying>)key;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACGroupedSignal.m",
    "content": "//\n//  RACGroupedSignal.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 5/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACGroupedSignal.h\"\n\n@interface RACGroupedSignal ()\n@property (nonatomic, copy) id<NSCopying> key;\n@end\n\n@implementation RACGroupedSignal\n\n#pragma mark API\n\n+ (instancetype)signalWithKey:(id<NSCopying>)key {\n\tRACGroupedSignal *subject = [self subject];\n\tsubject.key = key;\n\treturn subject;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACImmediateScheduler.h",
    "content": "//\n//  RACImmediateScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n\n// A private scheduler which immediately executes its scheduled blocks.\n@interface RACImmediateScheduler : RACScheduler\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACImmediateScheduler.m",
    "content": "//\n//  RACImmediateScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACImmediateScheduler.h\"\n#import \"RACScheduler+Private.h\"\n\n@implementation RACImmediateScheduler\n\n#pragma mark Lifecycle\n\n- (id)init {\n\treturn [super initWithName:@\"com.ReactiveCocoa.RACScheduler.immediateScheduler\"];\n}\n\n#pragma mark RACScheduler\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\tblock();\n\treturn nil;\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(block != NULL);\n\n\t[NSThread sleepUntilDate:date];\n\tblock();\n\n\treturn nil;\n}\n\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {\n\tNSCAssert(NO, @\"+[RACScheduler immediateScheduler] does not support %@.\", NSStringFromSelector(_cmd));\n\treturn nil;\n}\n\n- (RACDisposable *)scheduleRecursiveBlock:(RACSchedulerRecursiveBlock)recursiveBlock {\n\tfor (__block NSUInteger remaining = 1; remaining > 0; remaining--) {\n\t\trecursiveBlock(^{\n\t\t\tremaining++;\n\t\t});\n\t}\n\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACIndexSetSequence.h",
    "content": "//\n//  RACIndexSetSequence.h\n//  ReactiveCocoa\n//\n//  Created by Sergey Gavrilyuk on 12/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class that adapts an array to the RACSequence interface.\n@interface RACIndexSetSequence : RACSequence\n\n+ (instancetype)sequenceWithIndexSet:(NSIndexSet *)indexSet;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACIndexSetSequence.m",
    "content": "//\n//  RACIndexSetSequence.m\n//  ReactiveCocoa\n//\n//  Created by Sergey Gavrilyuk on 12/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACIndexSetSequence.h\"\n\n@interface RACIndexSetSequence ()\n\n// A buffer holding the `NSUInteger` values to enumerate over.\n//\n// This is mostly used for memory management. Most access should go through\n// `indexes` instead.\n@property (nonatomic, strong, readonly) NSData *data;\n\n// The indexes that this sequence should enumerate.\n@property (nonatomic, readonly) const NSUInteger *indexes;\n\n// The number of indexes to enumerate.\n@property (nonatomic, readonly) NSUInteger count;\n\n@end\n\n@implementation RACIndexSetSequence\n\n#pragma mark Lifecycle\n\n+ (instancetype)sequenceWithIndexSet:(NSIndexSet *)indexSet {\n\tNSUInteger count = indexSet.count;\n\t\n\tif (count == 0) return self.empty;\n\t\n\tNSUInteger sizeInBytes = sizeof(NSUInteger) * count;\n\n\tNSMutableData *data = [[NSMutableData alloc] initWithCapacity:sizeInBytes];\n\t[indexSet getIndexes:data.mutableBytes maxCount:count inIndexRange:NULL];\n\n\tRACIndexSetSequence *seq = [[self alloc] init];\n\tseq->_data = data;\n\tseq->_indexes = data.bytes;\n\tseq->_count = count;\n\treturn seq;\n}\n\n+ (instancetype)sequenceWithIndexSetSequence:(RACIndexSetSequence *)indexSetSequence offset:(NSUInteger)offset {\n\tNSCParameterAssert(offset < indexSetSequence.count);\n\n\tRACIndexSetSequence *seq = [[self alloc] init];\n\tseq->_data = indexSetSequence.data;\n\tseq->_indexes = indexSetSequence.indexes + offset;\n\tseq->_count = indexSetSequence.count - offset;\n\treturn seq;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\treturn @(self.indexes[0]);\n}\n\n- (RACSequence *)tail {\n\tif (self.count <= 1) return [RACSequence empty];\n\n\treturn [self.class sequenceWithIndexSetSequence:self offset:1];\n}\n\n#pragma mark NSFastEnumeration\n\n- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(__unsafe_unretained id[])stackbuf count:(NSUInteger)len {\n\tNSCParameterAssert(len > 0);\n\n\tif (state->state >= self.count) {\n\t\t// Enumeration has completed.\n\t\treturn 0;\n\t}\n\t\n\tif (state->state == 0) {\n\t\t// Enumeration begun, mark the mutation flag.\n\t\tstate->mutationsPtr = state->extra;\n\t}\n\t\n\tstate->itemsPtr = stackbuf;\n\t\n\tunsigned long index = 0;\n\twhile (index < MIN(self.count - state->state, len)) {\n\t\tstackbuf[index] = @(self.indexes[index + state->state]);\n\t\t++index;\n\t}\n\t\n\tstate->state += index;\n\treturn index;\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\tNSMutableString *indexesStr = [NSMutableString string];\n\n\tfor (unsigned int i = 0; i < self.count; ++i) {\n\t\tif (i > 0) [indexesStr appendString:@\", \"];\n\n\t\t[indexesStr appendFormat:@\"%lu\", (unsigned long)self.indexes[i]];\n\t}\n\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, indexes = %@ }\", self.class, self, self.name, indexesStr];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOChannel.h",
    "content": "//\n//  RACKVOChannel.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 27/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACChannel.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"metamacros.h\"\n\n/// Creates a RACKVOChannel to the given key path. When the targeted object\n/// deallocates, the channel will complete.\n///\n/// If RACChannelTo() is used as an expression, it returns a RACChannelTerminal that\n/// can be used to watch the specified property for changes, and set new values\n/// for it. The terminal will start with the property's current value upon\n/// subscription.\n///\n/// If RACChannelTo() is used on the left-hand side of an assignment, there must a\n/// RACChannelTerminal on the right-hand side of the assignment. The two will be\n/// subscribed to one another: the property's value is immediately set to the\n/// value of the channel terminal on the right-hand side, and subsequent changes\n/// to either terminal will be reflected on the other.\n///\n/// There are two different versions of this macro:\n///\n///  - RACChannelTo(TARGET, KEYPATH, NILVALUE) will create a channel to the `KEYPATH`\n///    of `TARGET`. If the terminal is ever sent a `nil` value, the property will\n///    be set to `NILVALUE` instead. `NILVALUE` may itself be `nil` for object\n///    properties, but an NSValue should be used for primitive properties, to\n///    avoid an exception if `nil` is sent (which might occur if an intermediate\n///    object is set to `nil`).\n///  - RACChannelTo(TARGET, KEYPATH) is the same as the above, but `NILVALUE` defaults to\n///    `nil`.\n///\n/// Examples\n///\n///  RACChannelTerminal *integerChannel = RACChannelTo(self, integerProperty, @42);\n///\n///  // Sets self.integerProperty to 5.\n///  [integerChannel sendNext:@5];\n///\n///  // Logs the current value of self.integerProperty, and all future changes.\n///  [integerChannel subscribeNext:^(id value) {\n///      NSLog(@\"value: %@\", value);\n///  }];\n///\n///  // Binds properties to each other, taking the initial value from the right\n///  side.\n///  RACChannelTo(view, objectProperty) = RACChannelTo(model, objectProperty);\n///  RACChannelTo(view, integerProperty, @2) = RACChannelTo(model, integerProperty, @10);\n#define RACChannelTo(TARGET, ...) \\\n    metamacro_if_eq(1, metamacro_argcount(__VA_ARGS__)) \\\n        (RACChannelTo_(TARGET, __VA_ARGS__, nil)) \\\n        (RACChannelTo_(TARGET, __VA_ARGS__))\n\n/// Do not use this directly. Use the RACChannelTo macro above.\n#define RACChannelTo_(TARGET, KEYPATH, NILVALUE) \\\n    [[RACKVOChannel alloc] initWithTarget:(TARGET) keyPath:@keypath(TARGET, KEYPATH) nilValue:(NILVALUE)][@keypath(RACKVOChannel.new, followingTerminal)]\n\n/// A RACChannel that observes a KVO-compliant key path for changes.\n@interface RACKVOChannel : RACChannel\n\n/// Initializes a channel that will observe the given object and key path.\n///\n/// The current value of the key path, and future KVO notifications for the given\n/// key path, will be sent to subscribers of the channel's `followingTerminal`.\n/// Values sent to the `followingTerminal` will be set at the given key path using\n/// key-value coding.\n///\n/// When the target object deallocates, the channel will complete. Signal errors\n/// are considered undefined behavior.\n///\n/// This is the designated initializer for this class.\n///\n/// target   - The object to bind to.\n/// keyPath  - The key path to observe and set the value of.\n/// nilValue - The value to set at the key path whenever a `nil` value is\n///            received. This may be nil when connecting to object properties, but\n///            an NSValue should be used for primitive properties, to avoid an\n///            exception if `nil` is received (which might occur if an intermediate\n///            object is set to `nil`).\n#if OS_OBJECT_HAVE_OBJC_SUPPORT\n- (id)initWithTarget:(__weak NSObject *)target keyPath:(NSString *)keyPath nilValue:(id)nilValue;\n#else\n// Swift builds with OS_OBJECT_HAVE_OBJC_SUPPORT=0 for Playgrounds and LLDB :(\n- (id)initWithTarget:(NSObject *)target keyPath:(NSString *)keyPath nilValue:(id)nilValue;\n#endif\n\n- (id)init __attribute__((unavailable(\"Use -initWithTarget:keyPath:nilValue: instead\")));\n\n@end\n\n/// Methods needed for the convenience macro. Do not call explicitly.\n@interface RACKVOChannel (RACChannelTo)\n\n- (RACChannelTerminal *)objectForKeyedSubscript:(NSString *)key;\n- (void)setObject:(RACChannelTerminal *)otherTerminal forKeyedSubscript:(NSString *)key;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOChannel.m",
    "content": "//\n//  RACKVOChannel.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 27/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACKVOChannel.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACKVOWrapper.h\"\n#import \"NSString+RACKeyPathUtilities.h\"\n#import \"RACChannel.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n\n// Key for the array of RACKVOChannel's additional thread local\n// data in the thread dictionary.\nstatic NSString * const RACKVOChannelDataDictionaryKey = @\"RACKVOChannelKey\";\n\n// Wrapper class for additional thread local data.\n@interface RACKVOChannelData : NSObject\n\n// The flag used to ignore updates the channel itself has triggered.\n@property (nonatomic, assign) BOOL ignoreNextUpdate;\n\n// A pointer to the owner of the data. Only use this for pointer comparison,\n// never as an object reference.\n@property (nonatomic, assign) void *owner;\n\n+ (instancetype)dataForChannel:(RACKVOChannel *)channel;\n\n@end\n\n@interface RACKVOChannel ()\n\n// The object whose key path the channel is wrapping.\n@property (atomic, weak) NSObject *target;\n\n// The key path the channel is wrapping.\n@property (nonatomic, copy, readonly) NSString *keyPath;\n\n// Returns the existing thread local data container or nil if none exists.\n@property (nonatomic, strong, readonly) RACKVOChannelData *currentThreadData;\n\n// Creates the thread local data container for the channel.\n- (void)createCurrentThreadData;\n\n// Destroy the thread local data container for the channel.\n- (void)destroyCurrentThreadData;\n\n@end\n\n@implementation RACKVOChannel\n\n#pragma mark Properties\n\n- (RACKVOChannelData *)currentThreadData {\n\tNSMutableArray *dataArray = NSThread.currentThread.threadDictionary[RACKVOChannelDataDictionaryKey];\n\n\tfor (RACKVOChannelData *data in dataArray) {\n\t\tif (data.owner == (__bridge void *)self) return data;\n\t}\n\n\treturn nil;\n}\n\n#pragma mark Lifecycle\n\n- (id)initWithTarget:(__weak NSObject *)target keyPath:(NSString *)keyPath nilValue:(id)nilValue {\n\tNSCParameterAssert(keyPath.rac_keyPathComponents.count > 0);\n\n\tNSObject *strongTarget = target;\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_target = target;\n\t_keyPath = [keyPath copy];\n\n\t[self.leadingTerminal setNameWithFormat:@\"[-initWithTarget: %@ keyPath: %@ nilValue: %@] -leadingTerminal\", target, keyPath, nilValue];\n\t[self.followingTerminal setNameWithFormat:@\"[-initWithTarget: %@ keyPath: %@ nilValue: %@] -followingTerminal\", target, keyPath, nilValue];\n\n\tif (strongTarget == nil) {\n\t\t[self.leadingTerminal sendCompleted];\n\t\treturn self;\n\t}\n\n\t// Observe the key path on target for changes and forward the changes to the\n\t// terminal.\n\t//\n\t// Intentionally capturing `self` strongly in the blocks below, so the\n\t// channel object stays alive while observing.\n\tRACDisposable *observationDisposable = [strongTarget rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionInitial observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t// If the change wasn't triggered by deallocation, only affects the last\n\t\t// path component, and ignoreNextUpdate is set, then it was triggered by\n\t\t// this channel and should not be forwarded.\n\t\tif (!causedByDealloc && affectedOnlyLastComponent && self.currentThreadData.ignoreNextUpdate) {\n\t\t\t[self destroyCurrentThreadData];\n\t\t\treturn;\n\t\t}\n\n\t\t[self.leadingTerminal sendNext:value];\n\t}];\n\n\tNSString *keyPathByDeletingLastKeyPathComponent = keyPath.rac_keyPathByDeletingLastKeyPathComponent;\n\tNSArray *keyPathComponents = keyPath.rac_keyPathComponents;\n\tNSUInteger keyPathComponentsCount = keyPathComponents.count;\n\tNSString *lastKeyPathComponent = keyPathComponents.lastObject;\n\n\t// Update the value of the property with the values received.\n\t[[self.leadingTerminal\n\t\tfinally:^{\n\t\t\t[observationDisposable dispose];\n\t\t}]\n\t\tsubscribeNext:^(id x) {\n\t\t\t// Check the value of the second to last key path component. Since the\n\t\t\t// channel can only update the value of a property on an object, and not\n\t\t\t// update intermediate objects, it can only update the value of the whole\n\t\t\t// key path if this object is not nil.\n\t\t\tNSObject *object = (keyPathComponentsCount > 1 ? [self.target valueForKeyPath:keyPathByDeletingLastKeyPathComponent] : self.target);\n\t\t\tif (object == nil) return;\n\n\t\t\t// Set the ignoreNextUpdate flag before setting the value so this channel\n\t\t\t// ignores the value in the subsequent -didChangeValueForKey: callback.\n\t\t\t[self createCurrentThreadData];\n\t\t\tself.currentThreadData.ignoreNextUpdate = YES;\n\n\t\t\t[object setValue:x ?: nilValue forKey:lastKeyPathComponent];\n\t\t} error:^(NSError *error) {\n\t\t\tNSCAssert(NO, @\"Received error in %@: %@\", self, error);\n\n\t\t\t// Log the error if we're running with assertions disabled.\n\t\t\tNSLog(@\"Received error in %@: %@\", self, error);\n\t\t}];\n\n\t// Capture `self` weakly for the target's deallocation disposable, so we can\n\t// freely deallocate if we complete before then.\n\t@weakify(self);\n\n\t[strongTarget.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t@strongify(self);\n\t\t[self.leadingTerminal sendCompleted];\n\t\tself.target = nil;\n\t}]];\n\n\treturn self;\n}\n\n- (void)createCurrentThreadData {\n\tNSMutableArray *dataArray = NSThread.currentThread.threadDictionary[RACKVOChannelDataDictionaryKey];\n\tif (dataArray == nil) {\n\t\tdataArray = [NSMutableArray array];\n\t\tNSThread.currentThread.threadDictionary[RACKVOChannelDataDictionaryKey] = dataArray;\n\t\t[dataArray addObject:[RACKVOChannelData dataForChannel:self]];\n\t\treturn;\n\t}\n\n\tfor (RACKVOChannelData *data in dataArray) {\n\t\tif (data.owner == (__bridge void *)self) return;\n\t}\n\n\t[dataArray addObject:[RACKVOChannelData dataForChannel:self]];\n}\n\n- (void)destroyCurrentThreadData {\n\tNSMutableArray *dataArray = NSThread.currentThread.threadDictionary[RACKVOChannelDataDictionaryKey];\n\tNSUInteger index = [dataArray indexOfObjectPassingTest:^ BOOL (RACKVOChannelData *data, NSUInteger idx, BOOL *stop) {\n\t\treturn data.owner == (__bridge void *)self;\n\t}];\n\n\tif (index != NSNotFound) [dataArray removeObjectAtIndex:index];\n}\n\n@end\n\n@implementation RACKVOChannel (RACChannelTo)\n\n- (RACChannelTerminal *)objectForKeyedSubscript:(NSString *)key {\n\tNSCParameterAssert(key != nil);\n\n\tRACChannelTerminal *terminal = [self valueForKey:key];\n\tNSCAssert([terminal isKindOfClass:RACChannelTerminal.class], @\"Key \\\"%@\\\" does not identify a channel terminal\", key);\n\n\treturn terminal;\n}\n\n- (void)setObject:(RACChannelTerminal *)otherTerminal forKeyedSubscript:(NSString *)key {\n\tNSCParameterAssert(otherTerminal != nil);\n\n\tRACChannelTerminal *selfTerminal = [self objectForKeyedSubscript:key];\n\t[otherTerminal subscribe:selfTerminal];\n\t[[selfTerminal skip:1] subscribe:otherTerminal];\n}\n\n@end\n\n@implementation RACKVOChannelData\n\n+ (instancetype)dataForChannel:(RACKVOChannel *)channel {\n\tRACKVOChannelData *data = [[self alloc] init];\n\tdata->_owner = (__bridge void *)channel;\n\treturn data;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOProxy.h",
    "content": "//\n//  RACKVOProxy.h\n//  ReactiveCocoa\n//\n//  Created by Richard Speyer on 4/10/14.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n/// A singleton that can act as a proxy between a KVO observation and a RAC\n/// subscriber, in order to protect against KVO lifetime issues.\n@interface RACKVOProxy : NSObject\n\n/// Returns the singleton KVO proxy object.\n+ (instancetype)sharedProxy;\n\n/// Registers an observer with the proxy, such that when the proxy receives a\n/// KVO change with the given context, it forwards it to the observer.\n///\n/// observer - True observer of the KVO change. Must not be nil.\n/// context  - Arbitrary context object used to differentiate multiple\n///            observations of the same keypath. Must be unique, cannot be nil.\n- (void)addObserver:(__weak NSObject *)observer forContext:(void *)context;\n\n/// Removes an observer from the proxy. Parameters must match those passed to\n/// addObserver:forContext:.\n///\n/// observer - True observer of the KVO change. Must not be nil.\n/// context  - Arbitrary context object used to differentiate multiple\n///            observations of the same keypath. Must be unique, cannot be nil.\n- (void)removeObserver:(NSObject *)observer forContext:(void *)context;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOProxy.m",
    "content": "//\n//  RACKVOProxy.m\n//  ReactiveCocoa\n//\n//  Created by Richard Speyer on 4/10/14.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACKVOProxy.h\"\n\n@interface RACKVOProxy()\n\n@property (strong, nonatomic, readonly) NSMapTable *trampolines;\n@property (strong, nonatomic, readonly) dispatch_queue_t queue;\n\n@end\n\n@implementation RACKVOProxy\n\n+ (instancetype)sharedProxy {\n\tstatic RACKVOProxy *proxy;\n\tstatic dispatch_once_t onceToken;\n\n\tdispatch_once(&onceToken, ^{\n\t\tproxy = [[self alloc] init];\n\t});\n\n\treturn proxy;\n}\n\n- (instancetype)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_queue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.RACKVOProxy\", DISPATCH_QUEUE_SERIAL);\n\t_trampolines = [NSMapTable strongToWeakObjectsMapTable];\n\n\treturn self;\n}\n\n- (void)addObserver:(__weak NSObject *)observer forContext:(void *)context {\n\tNSValue *valueContext = [NSValue valueWithPointer:context];\n\n\tdispatch_sync(self.queue, ^{\n\t\t[self.trampolines setObject:observer forKey:valueContext];\n\t});\n}\n\n- (void)removeObserver:(NSObject *)observer forContext:(void *)context {\n\tNSValue *valueContext = [NSValue valueWithPointer:context];\n\n\tdispatch_sync(self.queue, ^{\n\t\t[self.trampolines removeObjectForKey:valueContext];\n\t});\n}\n\n- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {\n\tNSValue *valueContext = [NSValue valueWithPointer:context];\n\t__block NSObject *trueObserver;\n\n\tdispatch_sync(self.queue, ^{\n\t\ttrueObserver = [self.trampolines objectForKey:valueContext];\n\t});\n\n\tif (trueObserver != nil) {\n\t\t[trueObserver observeValueForKeyPath:keyPath ofObject:object change:change context:context];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOTrampoline.h",
    "content": "//\n//  RACKVOTrampoline.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 1/15/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"NSObject+RACKVOWrapper.h\"\n#import \"RACDisposable.h\"\n\n// A private trampoline object that represents a KVO observation.\n//\n// Disposing of the trampoline will stop observation.\n@interface RACKVOTrampoline : RACDisposable\n\n// Initializes the receiver with the given parameters.\n//\n// target   - The object whose key path should be observed. Cannot be nil.\n// observer - The object that gets notified when the value at the key path\n//            changes. Can be nil.\n// keyPath  - The key path on `target` to observe. Cannot be nil.\n// options  - Any key value observing options to use in the observation.\n// block    - The block to call when the value at the observed key path changes.\n//            Cannot be nil.\n//\n// Returns the initialized object.\n- (id)initWithTarget:(__weak NSObject *)target observer:(__weak NSObject *)observer keyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options block:(RACKVOBlock)block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACKVOTrampoline.m",
    "content": "//\n//  RACKVOTrampoline.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 1/15/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACKVOTrampoline.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACKVOProxy.h\"\n\n@interface RACKVOTrampoline ()\n\n// The keypath which the trampoline is observing.\n@property (nonatomic, readonly, copy) NSString *keyPath;\n\n// These properties should only be manipulated while synchronized on the\n// receiver.\n@property (nonatomic, readonly, copy) RACKVOBlock block;\n@property (nonatomic, readonly, unsafe_unretained) NSObject *unsafeTarget;\n@property (nonatomic, readonly, weak) NSObject *weakTarget;\n@property (nonatomic, readonly, weak) NSObject *observer;\n\n@end\n\n@implementation RACKVOTrampoline\n\n#pragma mark Lifecycle\n\n- (id)initWithTarget:(__weak NSObject *)target observer:(__weak NSObject *)observer keyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options block:(RACKVOBlock)block {\n\tNSCParameterAssert(keyPath != nil);\n\tNSCParameterAssert(block != nil);\n\n\tNSObject *strongTarget = target;\n\tif (strongTarget == nil) return nil;\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_keyPath = [keyPath copy];\n\n\t_block = [block copy];\n\t_weakTarget = target;\n\t_unsafeTarget = strongTarget;\n\t_observer = observer;\n\n\t[RACKVOProxy.sharedProxy addObserver:self forContext:(__bridge void *)self];\n\t[strongTarget addObserver:RACKVOProxy.sharedProxy forKeyPath:self.keyPath options:options context:(__bridge void *)self];\n\n\t[strongTarget.rac_deallocDisposable addDisposable:self];\n\t[self.observer.rac_deallocDisposable addDisposable:self];\n\n\treturn self;\n}\n\n- (void)dealloc {\n\t[self dispose];\n}\n\n#pragma mark Observation\n\n- (void)dispose {\n\tNSObject *target;\n\tNSObject *observer;\n\n\t@synchronized (self) {\n\t\t_block = nil;\n\n\t\t// The target should still exist at this point, because we still need to\n\t\t// tear down its KVO observation. Therefore, we can use the unsafe\n\t\t// reference (and need to, because the weak one will have been zeroed by\n\t\t// now).\n\t\ttarget = self.unsafeTarget;\n\t\tobserver = self.observer;\n\n\t\t_unsafeTarget = nil;\n\t\t_observer = nil;\n\t}\n\n\t[target.rac_deallocDisposable removeDisposable:self];\n\t[observer.rac_deallocDisposable removeDisposable:self];\n\n\t[target removeObserver:RACKVOProxy.sharedProxy forKeyPath:self.keyPath context:(__bridge void *)self];\n\t[RACKVOProxy.sharedProxy removeObserver:self forContext:(__bridge void *)self];\n}\n\n- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {\n\tif (context != (__bridge void *)self) {\n\t\t[super observeValueForKeyPath:keyPath ofObject:object change:change context:context];\n\t\treturn;\n\t}\n\n\tRACKVOBlock block;\n\tid observer;\n\tid target;\n\n\t@synchronized (self) {\n\t\tblock = self.block;\n\t\tobserver = self.observer;\n\t\ttarget = self.weakTarget;\n\t}\n\n\tif (block == nil || target == nil) return;\n\n\tblock(target, observer, change);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACMulticastConnection+Private.h",
    "content": "//\n//  RACMulticastConnection+Private.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACMulticastConnection.h\"\n\n@class RACSubject;\n\n@interface RACMulticastConnection ()\n\n- (id)initWithSourceSignal:(RACSignal *)source subject:(RACSubject *)subject;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACMulticastConnection.h",
    "content": "//\n//  RACMulticastConnection.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACDisposable;\n@class RACSignal;\n\n/// A multicast connection encapsulates the idea of sharing one subscription to a\n/// signal to many subscribers. This is most often needed if the subscription to\n/// the underlying signal involves side-effects or shouldn't be called more than\n/// once.\n///\n/// The multicasted signal is only subscribed to when\n/// -[RACMulticastConnection connect] is called. Until that happens, no values\n/// will be sent on `signal`. See -[RACMulticastConnection autoconnect] for how\n/// -[RACMulticastConnection connect] can be called automatically.\n///\n/// Note that you shouldn't create RACMulticastConnection manually. Instead use\n/// -[RACSignal publish] or -[RACSignal multicast:].\n@interface RACMulticastConnection : NSObject\n\n/// The multicasted signal.\n@property (nonatomic, strong, readonly) RACSignal *signal;\n\n/// Connect to the underlying signal by subscribing to it. Calling this multiple\n/// times does nothing but return the existing connection's disposable.\n///\n/// Returns the disposable for the subscription to the multicasted signal.\n- (RACDisposable *)connect;\n\n/// Connects to the underlying signal when the returned signal is first\n/// subscribed to, and disposes of the subscription to the multicasted signal\n/// when the returned signal has no subscribers.\n///\n/// If new subscribers show up after being disposed, they'll subscribe and then\n/// be immediately disposed of. The returned signal will never re-connect to the\n/// multicasted signal.\n///\n/// Returns the autoconnecting signal.\n- (RACSignal *)autoconnect;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACMulticastConnection.m",
    "content": "//\n//  RACMulticastConnection.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/11/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACMulticastConnection.h\"\n#import \"RACMulticastConnection+Private.h\"\n#import \"RACDisposable.h\"\n#import \"RACSerialDisposable.h\"\n#import \"RACSubject.h\"\n#import <libkern/OSAtomic.h>\n\n@interface RACMulticastConnection () {\n\tRACSubject *_signal;\n\n\t// When connecting, a caller should attempt to atomically swap the value of this\n\t// from `0` to `1`.\n\t//\n\t// If the swap is successful the caller is resposible for subscribing `_signal`\n\t// to `sourceSignal` and storing the returned disposable in `serialDisposable`.\n\t//\n\t// If the swap is unsuccessful it means that `_sourceSignal` has already been\n\t// connected and the caller has no action to take.\n\tint32_t volatile _hasConnected;\n}\n\n@property (nonatomic, readonly, strong) RACSignal *sourceSignal;\n@property (strong) RACSerialDisposable *serialDisposable;\n@end\n\n@implementation RACMulticastConnection\n\n#pragma mark Lifecycle\n\n- (id)initWithSourceSignal:(RACSignal *)source subject:(RACSubject *)subject {\n\tNSCParameterAssert(source != nil);\n\tNSCParameterAssert(subject != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_sourceSignal = source;\n\t_serialDisposable = [[RACSerialDisposable alloc] init];\n\t_signal = subject;\n\t\n\treturn self;\n}\n\n#pragma mark Connecting\n\n- (RACDisposable *)connect {\n\tBOOL shouldConnect = OSAtomicCompareAndSwap32Barrier(0, 1, &_hasConnected);\n\n\tif (shouldConnect) {\n\t\tself.serialDisposable.disposable = [self.sourceSignal subscribe:_signal];\n\t}\n\n\treturn self.serialDisposable;\n}\n\n- (RACSignal *)autoconnect {\n\t__block volatile int32_t subscriberCount = 0;\n\n\treturn [[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\tOSAtomicIncrement32Barrier(&subscriberCount);\n\n\t\t\tRACDisposable *subscriptionDisposable = [self.signal subscribe:subscriber];\n\t\t\tRACDisposable *connectionDisposable = [self connect];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t[subscriptionDisposable dispose];\n\n\t\t\t\tif (OSAtomicDecrement32Barrier(&subscriberCount) == 0) {\n\t\t\t\t\t[connectionDisposable dispose];\n\t\t\t\t}\n\t\t\t}];\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -autoconnect\", self.signal.name];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACPassthroughSubscriber.h",
    "content": "//\n//  RACPassthroughSubscriber.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"RACSubscriber.h\"\n\n@class RACCompoundDisposable;\n@class RACSignal;\n\n// A private subscriber that passes through all events to another subscriber\n// while not disposed.\n@interface RACPassthroughSubscriber : NSObject <RACSubscriber>\n\n// Initializes the receiver to pass through events until disposed.\n//\n// subscriber - The subscriber to forward events to. This must not be nil.\n// signal     - The signal that will be sending events to the receiver.\n// disposable - When this disposable is disposed, no more events will be\n//              forwarded. This must not be nil.\n//\n// Returns an initialized passthrough subscriber.\n- (instancetype)initWithSubscriber:(id<RACSubscriber>)subscriber signal:(RACSignal *)signal disposable:(RACCompoundDisposable *)disposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACPassthroughSubscriber.m",
    "content": "//\n//  RACPassthroughSubscriber.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACPassthroughSubscriber.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSignalProvider.h\"\n\n#if !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED\n\nstatic const char *cleanedDTraceString(NSString *original) {\n\treturn [original stringByReplacingOccurrencesOfString:@\"\\\\s+\" withString:@\" \" options:NSRegularExpressionSearch range:NSMakeRange(0, original.length)].UTF8String;\n}\n\nstatic const char *cleanedSignalDescription(RACSignal *signal) {\n\tNSString *desc = signal.description;\n\n\tNSRange range = [desc rangeOfString:@\" name:\"];\n\tif (range.location != NSNotFound) {\n\t\tdesc = [desc stringByReplacingCharactersInRange:range withString:@\"\"];\n\t}\n\n\treturn cleanedDTraceString(desc);\n}\n\n#endif\n\n@interface RACPassthroughSubscriber ()\n\n// The subscriber to which events should be forwarded.\n@property (nonatomic, strong, readonly) id<RACSubscriber> innerSubscriber;\n\n// The signal sending events to this subscriber.\n//\n// This property isn't `weak` because it's only used for DTrace probes, so\n// a zeroing weak reference would incur an unnecessary performance penalty in\n// normal usage.\n@property (nonatomic, unsafe_unretained, readonly) RACSignal *signal;\n\n// A disposable representing the subscription. When disposed, no further events\n// should be sent to the `innerSubscriber`.\n@property (nonatomic, strong, readonly) RACCompoundDisposable *disposable;\n\n@end\n\n@implementation RACPassthroughSubscriber\n\n#pragma mark Lifecycle\n\n- (instancetype)initWithSubscriber:(id<RACSubscriber>)subscriber signal:(RACSignal *)signal disposable:(RACCompoundDisposable *)disposable {\n\tNSCParameterAssert(subscriber != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_innerSubscriber = subscriber;\n\t_signal = signal;\n\t_disposable = disposable;\n\n\t[self.innerSubscriber didSubscribeWithDisposable:self.disposable];\n\treturn self;\n}\n\n#pragma mark RACSubscriber\n\n- (void)sendNext:(id)value {\n\tif (self.disposable.disposed) return;\n\n\tif (RACSIGNAL_NEXT_ENABLED()) {\n\t\tRACSIGNAL_NEXT(cleanedSignalDescription(self.signal), cleanedDTraceString(self.innerSubscriber.description), cleanedDTraceString([value description]));\n\t}\n\n\t[self.innerSubscriber sendNext:value];\n}\n\n- (void)sendError:(NSError *)error {\n\tif (self.disposable.disposed) return;\n\n\tif (RACSIGNAL_ERROR_ENABLED()) {\n\t\tRACSIGNAL_ERROR(cleanedSignalDescription(self.signal), cleanedDTraceString(self.innerSubscriber.description), cleanedDTraceString(error.description));\n\t}\n\n\t[self.innerSubscriber sendError:error];\n}\n\n- (void)sendCompleted {\n\tif (self.disposable.disposed) return;\n\n\tif (RACSIGNAL_COMPLETED_ENABLED()) {\n\t\tRACSIGNAL_COMPLETED(cleanedSignalDescription(self.signal), cleanedDTraceString(self.innerSubscriber.description));\n\t}\n\n\t[self.innerSubscriber sendCompleted];\n}\n\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)disposable {\n\tif (disposable != self.disposable) {\n\t\t[self.disposable addDisposable:disposable];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACQueueScheduler+Subclass.h",
    "content": "//\n//  RACQueueScheduler+Subclass.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/6/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACQueueScheduler.h\"\n#import \"RACScheduler+Subclass.h\"\n\n/// An interface for use by GCD queue-based subclasses.\n///\n/// See RACScheduler+Subclass.h for subclassing notes.\n@interface RACQueueScheduler ()\n\n/// The queue on which blocks are enqueued.\n#if OS_OBJECT_USE_OBJC\n@property (nonatomic, strong, readonly) dispatch_queue_t queue;\n#else\n// Swift builds with OS_OBJECT_HAVE_OBJC_SUPPORT=0 for Playgrounds and LLDB :(\n@property (nonatomic, assign, readonly) dispatch_queue_t queue;\n#endif\n\n/// Initializes the receiver with the name of the scheduler and the queue which\n/// the scheduler should use.\n///\n/// name  - The name of the scheduler. If nil, a default name will be used.\n/// queue - The queue upon which the receiver should enqueue scheduled blocks.\n///         This argument must not be NULL.\n///\n/// Returns the initialized object.\n- (id)initWithName:(NSString *)name queue:(dispatch_queue_t)queue;\n\n/// Converts a date into a GCD time using dispatch_walltime().\n///\n/// date - The date to convert. This must not be nil.\n+ (dispatch_time_t)wallTimeWithDate:(NSDate *)date;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACQueueScheduler.h",
    "content": "//\n//  RACQueueScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n\n/// An abstract scheduler which asynchronously enqueues all its work to a Grand\n/// Central Dispatch queue.\n///\n/// Because RACQueueScheduler is abstract, it should not be instantiated\n/// directly. Create a subclass using the `RACQueueScheduler+Subclass.h`\n/// interface and use that instead.\n@interface RACQueueScheduler : RACScheduler\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACQueueScheduler.m",
    "content": "//\n//  RACQueueScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACQueueScheduler.h\"\n#import \"RACDisposable.h\"\n#import \"RACQueueScheduler+Subclass.h\"\n#import \"RACScheduler+Private.h\"\n\n@implementation RACQueueScheduler\n\n#pragma mark Lifecycle\n\n- (id)initWithName:(NSString *)name queue:(dispatch_queue_t)queue {\n\tNSCParameterAssert(queue != NULL);\n\n\tself = [super initWithName:name];\n\tif (self == nil) return nil;\n\n\t_queue = queue;\n#if !OS_OBJECT_USE_OBJC\n\tdispatch_retain(_queue);\n#endif\n\n\treturn self;\n}\n\n#if !OS_OBJECT_USE_OBJC\n\n- (void)dealloc {\n\tif (_queue != NULL) {\n\t\tdispatch_release(_queue);\n\t\t_queue = NULL;\n\t}\n}\n\n#endif\n\n#pragma mark Date Conversions\n\n+ (dispatch_time_t)wallTimeWithDate:(NSDate *)date {\n\tNSCParameterAssert(date != nil);\n\n\tdouble seconds = 0;\n\tdouble frac = modf(date.timeIntervalSince1970, &seconds);\n\n\tstruct timespec walltime = {\n\t\t.tv_sec = (time_t)fmin(fmax(seconds, LONG_MIN), LONG_MAX),\n\t\t.tv_nsec = (long)fmin(fmax(frac * NSEC_PER_SEC, LONG_MIN), LONG_MAX)\n\t};\n\n\treturn dispatch_walltime(&walltime, 0);\n}\n\n#pragma mark RACScheduler\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\tRACDisposable *disposable = [[RACDisposable alloc] init];\n\n\tdispatch_async(self.queue, ^{\n\t\tif (disposable.disposed) return;\n\t\t[self performAsCurrentScheduler:block];\n\t});\n\n\treturn disposable;\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(block != NULL);\n\n\tRACDisposable *disposable = [[RACDisposable alloc] init];\n\n\tdispatch_after([self.class wallTimeWithDate:date], self.queue, ^{\n\t\tif (disposable.disposed) return;\n\t\t[self performAsCurrentScheduler:block];\n\t});\n\n\treturn disposable;\n}\n\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(interval > 0.0 && interval < INT64_MAX / NSEC_PER_SEC);\n\tNSCParameterAssert(leeway >= 0.0 && leeway < INT64_MAX / NSEC_PER_SEC);\n\tNSCParameterAssert(block != NULL);\n\n\tuint64_t intervalInNanoSecs = (uint64_t)(interval * NSEC_PER_SEC);\n\tuint64_t leewayInNanoSecs = (uint64_t)(leeway * NSEC_PER_SEC);\n\n\tdispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, self.queue);\n\tdispatch_source_set_timer(timer, [self.class wallTimeWithDate:date], intervalInNanoSecs, leewayInNanoSecs);\n\tdispatch_source_set_event_handler(timer, block);\n\tdispatch_resume(timer);\n\n\treturn [RACDisposable disposableWithBlock:^{\n\t\tdispatch_source_cancel(timer);\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACReplaySubject.h",
    "content": "//\n//  RACReplaySubject.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/14/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubject.h\"\n\nextern const NSUInteger RACReplaySubjectUnlimitedCapacity;\n\n/// A replay subject saves the values it is sent (up to its defined capacity)\n/// and resends those to new subscribers. It will also replay an error or\n/// completion.\n@interface RACReplaySubject : RACSubject\n\n/// Creates a new replay subject with the given capacity. A capacity of\n/// RACReplaySubjectUnlimitedCapacity means values are never trimmed.\n+ (instancetype)replaySubjectWithCapacity:(NSUInteger)capacity;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACReplaySubject.m",
    "content": "//\n//  RACReplaySubject.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/14/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACReplaySubject.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriber.h\"\n#import \"RACTuple.h\"\n\nconst NSUInteger RACReplaySubjectUnlimitedCapacity = NSUIntegerMax;\n\n@interface RACReplaySubject ()\n\n@property (nonatomic, assign, readonly) NSUInteger capacity;\n\n// These properties should only be modified while synchronized on self.\n@property (nonatomic, strong, readonly) NSMutableArray *valuesReceived;\n@property (nonatomic, assign) BOOL hasCompleted;\n@property (nonatomic, assign) BOOL hasError;\n@property (nonatomic, strong) NSError *error;\n\n@end\n\n\n@implementation RACReplaySubject\n\n#pragma mark Lifecycle\n\n+ (instancetype)replaySubjectWithCapacity:(NSUInteger)capacity {\n\treturn [(RACReplaySubject *)[self alloc] initWithCapacity:capacity];\n}\n\n- (instancetype)init {\n\treturn [self initWithCapacity:RACReplaySubjectUnlimitedCapacity];\n}\n\n- (instancetype)initWithCapacity:(NSUInteger)capacity {\n\tself = [super init];\n\tif (self == nil) return nil;\n\t\n\t_capacity = capacity;\n\t_valuesReceived = (capacity == RACReplaySubjectUnlimitedCapacity ? [NSMutableArray array] : [NSMutableArray arrayWithCapacity:capacity]);\n\t\n\treturn self;\n}\n\n#pragma mark RACSignal\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tRACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n\tRACDisposable *schedulingDisposable = [RACScheduler.subscriptionScheduler schedule:^{\n\t\t@synchronized (self) {\n\t\t\tfor (id value in self.valuesReceived) {\n\t\t\t\tif (compoundDisposable.disposed) return;\n\n\t\t\t\t[subscriber sendNext:(value == RACTupleNil.tupleNil ? nil : value)];\n\t\t\t}\n\n\t\t\tif (compoundDisposable.disposed) return;\n\n\t\t\tif (self.hasCompleted) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t} else if (self.hasError) {\n\t\t\t\t[subscriber sendError:self.error];\n\t\t\t} else {\n\t\t\t\tRACDisposable *subscriptionDisposable = [super subscribe:subscriber];\n\t\t\t\t[compoundDisposable addDisposable:subscriptionDisposable];\n\t\t\t}\n\t\t}\n\t}];\n\n\t[compoundDisposable addDisposable:schedulingDisposable];\n\n\treturn compoundDisposable;\n}\n\n#pragma mark RACSubscriber\n\n- (void)sendNext:(id)value {\n\t@synchronized (self) {\n\t\t[self.valuesReceived addObject:value ?: RACTupleNil.tupleNil];\n\t\t[super sendNext:value];\n\t\t\n\t\tif (self.capacity != RACReplaySubjectUnlimitedCapacity && self.valuesReceived.count > self.capacity) {\n\t\t\t[self.valuesReceived removeObjectsInRange:NSMakeRange(0, self.valuesReceived.count - self.capacity)];\n\t\t}\n\t}\n}\n\n- (void)sendCompleted {\n\t@synchronized (self) {\n\t\tself.hasCompleted = YES;\n\t\t[super sendCompleted];\n\t}\n}\n\n- (void)sendError:(NSError *)e {\n\t@synchronized (self) {\n\t\tself.hasError = YES;\n\t\tself.error = e;\n\t\t[super sendError:e];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACReturnSignal.h",
    "content": "//\n//  RACReturnSignal.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n\n// A private `RACSignal` subclasses that synchronously sends a value to any\n// subscribers, then completes.\n@interface RACReturnSignal : RACSignal\n\n+ (RACSignal *)return:(id)value;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACReturnSignal.m",
    "content": "//\n//  RACReturnSignal.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-10.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACReturnSignal.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriber.h\"\n#import \"RACUnit.h\"\n\n@interface RACReturnSignal ()\n\n// The value to send upon subscription.\n@property (nonatomic, strong, readonly) id value;\n\n@end\n\n@implementation RACReturnSignal\n\n#pragma mark Properties\n\n// Only allow this signal's name to be customized in DEBUG, since it's\n// potentially a singleton in release builds (see +return:).\n- (void)setName:(NSString *)name {\n#ifdef DEBUG\n\t[super setName:name];\n#endif\n}\n\n- (NSString *)name {\n#ifdef DEBUG\n\treturn super.name;\n#else\n\treturn @\"+return:\";\n#endif\n}\n\n#pragma mark Lifecycle\n\n+ (RACSignal *)return:(id)value {\n#ifndef DEBUG\n\t// In release builds, use singletons for two very common cases.\n\tif (value == RACUnit.defaultUnit) {\n\t\tstatic RACReturnSignal *unitSingleton;\n\t\tstatic dispatch_once_t unitPred;\n\n\t\tdispatch_once(&unitPred, ^{\n\t\t\tunitSingleton = [[self alloc] init];\n\t\t\tunitSingleton->_value = RACUnit.defaultUnit;\n\t\t});\n\n\t\treturn unitSingleton;\n\t} else if (value == nil) {\n\t\tstatic RACReturnSignal *nilSingleton;\n\t\tstatic dispatch_once_t nilPred;\n\n\t\tdispatch_once(&nilPred, ^{\n\t\t\tnilSingleton = [[self alloc] init];\n\t\t\tnilSingleton->_value = nil;\n\t\t});\n\n\t\treturn nilSingleton;\n\t}\n#endif\n\n\tRACReturnSignal *signal = [[self alloc] init];\n\tsignal->_value = value;\n\n#ifdef DEBUG\n\t[signal setNameWithFormat:@\"+return: %@\", value];\n#endif\n\n\treturn signal;\n}\n\n#pragma mark Subscription\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCParameterAssert(subscriber != nil);\n\n\treturn [RACScheduler.subscriptionScheduler schedule:^{\n\t\t[subscriber sendNext:self.value];\n\t\t[subscriber sendCompleted];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScheduler+Private.h",
    "content": "//\n//  RACScheduler+Private.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/29/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n\n// The thread-specific current scheduler key.\nextern NSString * const RACSchedulerCurrentSchedulerKey;\n\n// A private interface for internal RAC use only.\n@interface RACScheduler ()\n\n// A dedicated scheduler that fills two requirements:\n//\n//   1. By the time subscription happens, we need a valid +currentScheduler.\n//   2. Subscription should happen as soon as possible.\n//\n// To fulfill those two, if we already have a valid +currentScheduler, it\n// immediately executes scheduled blocks. If we don't, it will execute scheduled\n// blocks with a private background scheduler.\n+ (instancetype)subscriptionScheduler;\n\n// Initializes the receiver with the given name.\n//\n// name - The name of the scheduler. If nil, a default name will be used.\n//\n// Returns the initialized object.\n- (id)initWithName:(NSString *)name;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScheduler+Subclass.h",
    "content": "//\n//  RACScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Miķelis Vindavs on 5/27/14.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"RACScheduler.h\"\n\n/// An interface for use by subclasses.\n///\n/// Subclasses should use `-performAsCurrentScheduler:` to do the actual block\n/// invocation so that +[RACScheduler currentScheduler] behaves as expected.\n///\n/// **Note that RACSchedulers are expected to be serial**. Subclasses must honor\n/// that contract. See `RACTargetQueueScheduler` for a queue-based scheduler\n/// which will enforce the serialization guarantee.\n@interface RACScheduler ()\n\n/// Performs the given block with the receiver as the current scheduler for\n/// its thread. This should only be called by subclasses to perform their\n/// scheduled blocks.\n///\n/// block - The block to execute. Cannot be NULL.\n- (void)performAsCurrentScheduler:(void (^)(void))block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScheduler.h",
    "content": "//\n//  RACScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n/// The priority for the scheduler.\n///\n/// RACSchedulerPriorityHigh       - High priority.\n/// RACSchedulerPriorityDefault    - Default priority.\n/// RACSchedulerPriorityLow        - Low priority.\n/// RACSchedulerPriorityBackground - Background priority.\ntypedef enum : long {\n\tRACSchedulerPriorityHigh = DISPATCH_QUEUE_PRIORITY_HIGH,\n\tRACSchedulerPriorityDefault = DISPATCH_QUEUE_PRIORITY_DEFAULT,\n\tRACSchedulerPriorityLow = DISPATCH_QUEUE_PRIORITY_LOW,\n\tRACSchedulerPriorityBackground = DISPATCH_QUEUE_PRIORITY_BACKGROUND,\n} RACSchedulerPriority;\n\n/// Scheduled with -scheduleRecursiveBlock:, this type of block is passed a block\n/// with which it can call itself recursively.\ntypedef void (^RACSchedulerRecursiveBlock)(void (^reschedule)(void));\n\n@class RACDisposable;\n\n/// Schedulers are used to control when and where work is performed.\n@interface RACScheduler : NSObject\n\n/// A singleton scheduler that immediately executes the blocks it is given.\n///\n/// **Note:** Unlike most other schedulers, this does not set the current\n/// scheduler. There may still be a valid +currentScheduler if this is used\n/// within a block scheduled on a different scheduler.\n+ (RACScheduler *)immediateScheduler;\n\n/// A singleton scheduler that executes blocks in the main thread.\n+ (RACScheduler *)mainThreadScheduler;\n\n/// Creates and returns a new background scheduler with the given priority and\n/// name. The name is for debug and instrumentation purposes only.\n///\n/// Scheduler creation is cheap. It's unnecessary to save the result of this\n/// method call unless you want to serialize some actions on the same background\n/// scheduler.\n+ (RACScheduler *)schedulerWithPriority:(RACSchedulerPriority)priority name:(NSString *)name;\n\n/// Invokes +schedulerWithPriority:name: with a default name.\n+ (RACScheduler *)schedulerWithPriority:(RACSchedulerPriority)priority;\n\n/// Invokes +schedulerWithPriority: with RACSchedulerPriorityDefault.\n+ (RACScheduler *)scheduler;\n\n/// The current scheduler. This will only be valid when used from within a\n/// -[RACScheduler schedule:] block or when on the main thread.\n+ (RACScheduler *)currentScheduler;\n\n/// Schedule the given block for execution on the scheduler.\n///\n/// Scheduled blocks will be executed in the order in which they were scheduled.\n///\n/// block - The block to schedule for execution. Cannot be nil.\n///\n/// Returns a disposable which can be used to cancel the scheduled block before\n/// it begins executing, or nil if cancellation is not supported.\n- (RACDisposable *)schedule:(void (^)(void))block;\n\n/// Schedule the given block for execution on the scheduler at or after\n/// a specific time.\n///\n/// Note that blocks scheduled for a certain time will not preempt any other\n/// scheduled work that is executing at the time.\n///\n/// When invoked on the +immediateScheduler, the calling thread **will block**\n/// until the specified time.\n///\n/// date  - The earliest time at which `block` should begin executing. The block\n///         may not execute immediately at this time, whether due to system load\n///         or another block on the scheduler currently being run. Cannot be nil.\n/// block - The block to schedule for execution. Cannot be nil.\n///\n/// Returns a disposable which can be used to cancel the scheduled block before\n/// it begins executing, or nil if cancellation is not supported.\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block;\n\n/// Schedule the given block for execution on the scheduler after the delay.\n///\n/// Converts the delay into an NSDate, then invokes `-after:schedule:`.\n- (RACDisposable *)afterDelay:(NSTimeInterval)delay schedule:(void (^)(void))block;\n\n/// Reschedule the given block at a particular interval, starting at a specific\n/// time, and with a given leeway for deferral.\n///\n/// Note that blocks scheduled for a certain time will not preempt any other\n/// scheduled work that is executing at the time.\n///\n/// Regardless of the value of `leeway`, the given block may not execute exactly\n/// at `when` or exactly on successive intervals, whether due to system load or\n/// because another block is currently being run on the scheduler.\n///\n/// It is considered undefined behavior to invoke this method on the\n/// +immediateScheduler.\n///\n/// date     - The earliest time at which `block` should begin executing. The\n///            block may not execute immediately at this time, whether due to\n///            system load or another block on the scheduler currently being\n///            run. Cannot be nil.\n/// interval - The interval at which the block should be rescheduled, starting\n///            from `date`. This will use the system wall clock, to avoid\n///            skew when the computer goes to sleep.\n/// leeway   - A hint to the system indicating the number of seconds that each\n///            scheduling can be deferred. Note that this is just a hint, and\n///            there may be some additional latency no matter what.\n/// block    - The block to repeatedly schedule for execution. Cannot be nil.\n///\n/// Returns a disposable which can be used to cancel the automatic scheduling and\n/// rescheduling, or nil if cancellation is not supported.\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block;\n\n/// Schedule the given recursive block for execution on the scheduler. The\n/// scheduler will automatically flatten any recursive scheduling into iteration\n/// instead, so this can be used without issue for blocks that may keep invoking\n/// themselves forever.\n///\n/// Scheduled blocks will be executed in the order in which they were scheduled.\n///\n/// recursiveBlock - The block to schedule for execution. When invoked, the\n///                  recursive block will be passed a `void (^)(void)` block\n///                  which will reschedule the recursive block at the end of the\n///                  receiver's queue. This passed-in block will automatically\n///                  skip scheduling if the scheduling of the `recursiveBlock`\n///                  was disposed in the meantime.\n///\n/// Returns a disposable which can be used to cancel the scheduled block before\n/// it begins executing, or to stop it from rescheduling if it's already begun\n/// execution.\n- (RACDisposable *)scheduleRecursiveBlock:(RACSchedulerRecursiveBlock)recursiveBlock;\n\n@end\n\n@interface RACScheduler (Unavailable)\n\n+ (RACScheduler *)schedulerWithQueue:(dispatch_queue_t)queue name:(NSString *)name __attribute__((unavailable(\"Use -[RACTargetQueueScheduler initWithName:targetQueue:] instead.\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScheduler.m",
    "content": "//\n//  RACScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/16/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACImmediateScheduler.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACSubscriptionScheduler.h\"\n#import \"RACTargetQueueScheduler.h\"\n\n// The key for the thread-specific current scheduler.\nNSString * const RACSchedulerCurrentSchedulerKey = @\"RACSchedulerCurrentSchedulerKey\";\n\n@interface RACScheduler ()\n@property (nonatomic, readonly, copy) NSString *name;\n@end\n\n@implementation RACScheduler\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p> %@\", self.class, self, self.name];\n}\n\n#pragma mark Initializers\n\n- (id)initWithName:(NSString *)name {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\tif (name == nil) {\n\t\t_name = [NSString stringWithFormat:@\"com.ReactiveCocoa.%@.anonymousScheduler\", self.class];\n\t} else {\n\t\t_name = [name copy];\n\t}\n\n\treturn self;\n}\n\n#pragma mark Schedulers\n\n+ (instancetype)immediateScheduler {\n\tstatic dispatch_once_t onceToken;\n\tstatic RACScheduler *immediateScheduler;\n\tdispatch_once(&onceToken, ^{\n\t\timmediateScheduler = [[RACImmediateScheduler alloc] init];\n\t});\n\t\n\treturn immediateScheduler;\n}\n\n+ (instancetype)mainThreadScheduler {\n\tstatic dispatch_once_t onceToken;\n\tstatic RACScheduler *mainThreadScheduler;\n\tdispatch_once(&onceToken, ^{\n\t\tmainThreadScheduler = [[RACTargetQueueScheduler alloc] initWithName:@\"com.ReactiveCocoa.RACScheduler.mainThreadScheduler\" targetQueue:dispatch_get_main_queue()];\n\t});\n\t\n\treturn mainThreadScheduler;\n}\n\n+ (instancetype)schedulerWithPriority:(RACSchedulerPriority)priority name:(NSString *)name {\n\treturn [[RACTargetQueueScheduler alloc] initWithName:name targetQueue:dispatch_get_global_queue(priority, 0)];\n}\n\n+ (instancetype)schedulerWithPriority:(RACSchedulerPriority)priority {\n\treturn [self schedulerWithPriority:priority name:@\"com.ReactiveCocoa.RACScheduler.backgroundScheduler\"];\n}\n\n+ (instancetype)scheduler {\n\treturn [self schedulerWithPriority:RACSchedulerPriorityDefault];\n}\n\n+ (instancetype)subscriptionScheduler {\n\tstatic dispatch_once_t onceToken;\n\tstatic RACScheduler *subscriptionScheduler;\n\tdispatch_once(&onceToken, ^{\n\t\tsubscriptionScheduler = [[RACSubscriptionScheduler alloc] init];\n\t});\n\n\treturn subscriptionScheduler;\n}\n\n+ (BOOL)isOnMainThread {\n\treturn [NSOperationQueue.currentQueue isEqual:NSOperationQueue.mainQueue] || [NSThread isMainThread];\n}\n\n+ (instancetype)currentScheduler {\n\tRACScheduler *scheduler = NSThread.currentThread.threadDictionary[RACSchedulerCurrentSchedulerKey];\n\tif (scheduler != nil) return scheduler;\n\tif ([self.class isOnMainThread]) return RACScheduler.mainThreadScheduler;\n\n\treturn nil;\n}\n\n#pragma mark Scheduling\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tNSCAssert(NO, @\"%@ must be implemented by subclasses.\", NSStringFromSelector(_cmd));\n\treturn nil;\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tNSCAssert(NO, @\"%@ must be implemented by subclasses.\", NSStringFromSelector(_cmd));\n\treturn nil;\n}\n\n- (RACDisposable *)afterDelay:(NSTimeInterval)delay schedule:(void (^)(void))block {\n\treturn [self after:[NSDate dateWithTimeIntervalSinceNow:delay] schedule:block];\n}\n\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {\n\tNSCAssert(NO, @\"%@ must be implemented by subclasses.\", NSStringFromSelector(_cmd));\n\treturn nil;\n}\n\n- (RACDisposable *)scheduleRecursiveBlock:(RACSchedulerRecursiveBlock)recursiveBlock {\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t[self scheduleRecursiveBlock:[recursiveBlock copy] addingToDisposable:disposable];\n\treturn disposable;\n}\n\n- (void)scheduleRecursiveBlock:(RACSchedulerRecursiveBlock)recursiveBlock addingToDisposable:(RACCompoundDisposable *)disposable {\n\t@autoreleasepool {\n\t\tRACCompoundDisposable *selfDisposable = [RACCompoundDisposable compoundDisposable];\n\t\t[disposable addDisposable:selfDisposable];\n\n\t\t__weak RACDisposable *weakSelfDisposable = selfDisposable;\n\n\t\tRACDisposable *schedulingDisposable = [self schedule:^{\n\t\t\t@autoreleasepool {\n\t\t\t\t// At this point, we've been invoked, so our disposable is now useless.\n\t\t\t\t[disposable removeDisposable:weakSelfDisposable];\n\t\t\t}\n\n\t\t\tif (disposable.disposed) return;\n\n\t\t\tvoid (^reallyReschedule)(void) = ^{\n\t\t\t\tif (disposable.disposed) return;\n\t\t\t\t[self scheduleRecursiveBlock:recursiveBlock addingToDisposable:disposable];\n\t\t\t};\n\n\t\t\t// Protects the variables below.\n\t\t\t//\n\t\t\t// This doesn't actually need to be __block qualified, but Clang\n\t\t\t// complains otherwise. :C\n\t\t\t__block NSLock *lock = [[NSLock alloc] init];\n\t\t\tlock.name = [NSString stringWithFormat:@\"%@ %s\", self, sel_getName(_cmd)];\n\n\t\t\t__block NSUInteger rescheduleCount = 0;\n\n\t\t\t// Set to YES once synchronous execution has finished. Further\n\t\t\t// rescheduling should occur immediately (rather than being\n\t\t\t// flattened).\n\t\t\t__block BOOL rescheduleImmediately = NO;\n\n\t\t\t@autoreleasepool {\n\t\t\t\trecursiveBlock(^{\n\t\t\t\t\t[lock lock];\n\t\t\t\t\tBOOL immediate = rescheduleImmediately;\n\t\t\t\t\tif (!immediate) ++rescheduleCount;\n\t\t\t\t\t[lock unlock];\n\n\t\t\t\t\tif (immediate) reallyReschedule();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t[lock lock];\n\t\t\tNSUInteger synchronousCount = rescheduleCount;\n\t\t\trescheduleImmediately = YES;\n\t\t\t[lock unlock];\n\n\t\t\tfor (NSUInteger i = 0; i < synchronousCount; i++) {\n\t\t\t\treallyReschedule();\n\t\t\t}\n\t\t}];\n\n\t\t[selfDisposable addDisposable:schedulingDisposable];\n\t}\n}\n\n- (void)performAsCurrentScheduler:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\t// If we're using a concurrent queue, we could end up in here concurrently,\n\t// in which case we *don't* want to clear the current scheduler immediately\n\t// after our block is done executing, but only *after* all our concurrent\n\t// invocations are done.\n\n\tRACScheduler *previousScheduler = RACScheduler.currentScheduler;\n\tNSThread.currentThread.threadDictionary[RACSchedulerCurrentSchedulerKey] = self;\n\n\t@autoreleasepool {\n\t\tblock();\n\t}\n\n\tif (previousScheduler != nil) {\n\t\tNSThread.currentThread.threadDictionary[RACSchedulerCurrentSchedulerKey] = previousScheduler;\n\t} else {\n\t\t[NSThread.currentThread.threadDictionary removeObjectForKey:RACSchedulerCurrentSchedulerKey];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScopedDisposable.h",
    "content": "//\n//  RACScopedDisposable.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDisposable.h\"\n\n/// A disposable that calls its own -dispose when it is dealloc'd.\n@interface RACScopedDisposable : RACDisposable\n\n/// Creates a new scoped disposable that will also dispose of the given\n/// disposable when it is dealloc'd.\n+ (instancetype)scopedDisposableWithDisposable:(RACDisposable *)disposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACScopedDisposable.m",
    "content": "//\n//  RACScopedDisposable.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScopedDisposable.h\"\n\n@implementation RACScopedDisposable\n\n#pragma mark Lifecycle\n\n+ (instancetype)scopedDisposableWithDisposable:(RACDisposable *)disposable {\n\treturn [self disposableWithBlock:^{\n\t\t[disposable dispose];\n\t}];\n}\n\n- (void)dealloc {\n\t[self dispose];\n}\n\n#pragma mark RACDisposable\n\n- (RACScopedDisposable *)asScopedDisposable {\n\t// totally already are\n\treturn self;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSequence.h",
    "content": "//\n//  RACSequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"RACStream.h\"\n\n@class RACScheduler;\n@class RACSignal;\n\n/// Represents an immutable sequence of values. Unless otherwise specified, the\n/// sequences' values are evaluated lazily on demand. Like Cocoa collections,\n/// sequences cannot contain nil.\n///\n/// Most inherited RACStream methods that accept a block will execute the block\n/// _at most_ once for each value that is evaluated in the returned sequence.\n/// Side effects are subject to the behavior described in\n/// +sequenceWithHeadBlock:tailBlock:.\n///\n/// Implemented as a class cluster. A minimal implementation for a subclass\n/// consists simply of -head and -tail.\n@interface RACSequence : RACStream <NSCoding, NSCopying, NSFastEnumeration>\n\n/// The first object in the sequence, or nil if the sequence is empty.\n///\n/// Subclasses must provide an implementation of this method.\n@property (nonatomic, strong, readonly) id head;\n\n/// All but the first object in the sequence, or nil if there are no other\n/// objects.\n///\n/// Subclasses must provide an implementation of this method.\n@property (nonatomic, strong, readonly) RACSequence *tail;\n\n/// Evaluates the full sequence to produce an equivalently-sized array.\n@property (nonatomic, copy, readonly) NSArray *array;\n\n/// Returns an enumerator of all objects in the sequence.\n@property (nonatomic, copy, readonly) NSEnumerator *objectEnumerator;\n\n/// Converts a sequence into an eager sequence.\n///\n/// An eager sequence fully evaluates all of its values immediately. Sequences\n/// derived from an eager sequence will also be eager.\n///\n/// Returns a new eager sequence, or the receiver if the sequence is already\n/// eager.\n@property (nonatomic, copy, readonly) RACSequence *eagerSequence;\n\n/// Converts a sequence into a lazy sequence.\n///\n/// A lazy sequence evaluates its values on demand, as they are accessed.\n/// Sequences derived from a lazy sequence will also be lazy.\n///\n/// Returns a new lazy sequence, or the receiver if the sequence is already lazy.\n@property (nonatomic, copy, readonly) RACSequence *lazySequence;\n\n/// Invokes -signalWithScheduler: with a new RACScheduler.\n- (RACSignal *)signal;\n\n/// Evaluates the full sequence on the given scheduler.\n///\n/// Each item is evaluated in its own scheduled block, such that control of the\n/// scheduler is yielded between each value.\n///\n/// Returns a signal which sends the receiver's values on the given scheduler as\n/// they're evaluated.\n- (RACSignal *)signalWithScheduler:(RACScheduler *)scheduler;\n\n/// Applies a left fold to the sequence.\n///\n/// This is the same as iterating the sequence along with a provided start value.\n/// This uses a constant amount of memory. A left fold is left-associative so in\n/// the sequence [1,2,3] the block would applied in the following order:\n///  reduce(reduce(reduce(start, 1), 2), 3)\n///\n/// start  - The starting value for the fold. Used as `accumulator` for the\n///          first fold.\n/// reduce - The block used to combine the accumulated value and the next value.\n///          Cannot be nil.\n///\n/// Returns a reduced value.\n- (id)foldLeftWithStart:(id)start reduce:(id (^)(id accumulator, id value))reduce;\n\n/// Applies a right fold to the sequence.\n///\n/// A right fold is equivalent to recursion on the list. The block is evaluated\n/// from the right to the left in list. It is right associative so it's applied\n/// to the rightmost elements first. For example, in the sequence [1,2,3] the\n/// block is applied in the order:\n///   reduce(1, reduce(2, reduce(3, start)))\n///\n/// start  - The starting value for the fold.\n/// reduce - The block used to combine the accumulated value and the next head.\n///          The block is given the accumulated value and the value of the rest\n///          of the computation (result of the recursion). This is computed when\n///          you retrieve its value using `rest.head`. This allows you to\n///          prevent unnecessary computation by not accessing `rest.head` if you\n///          don't need to.\n///\n/// Returns a reduced value.\n- (id)foldRightWithStart:(id)start reduce:(id (^)(id first, RACSequence *rest))reduce;\n\n/// Check if any value in sequence passes the block.\n///\n/// block - The block predicate used to check each item. Cannot be nil.\n///\n/// Returns a boolean indiciating if any value in the sequence passed.\n- (BOOL)any:(BOOL (^)(id value))block;\n\n/// Check if all values in the sequence pass the block.\n///\n/// block - The block predicate used to check each item. Cannot be nil.\n///\n/// Returns a boolean indicating if all values in the sequence passed.\n- (BOOL)all:(BOOL (^)(id value))block;\n\n/// Returns the first object that passes the block.\n///\n/// block - The block predicate used to check each item. Cannot be nil.\n///\n/// Returns an object that passes the block or nil if no objects passed.\n- (id)objectPassingTest:(BOOL (^)(id value))block;\n\n/// Creates a sequence that dynamically generates its values.\n///\n/// headBlock - Invoked the first time -head is accessed.\n/// tailBlock - Invoked the first time -tail is accessed.\n///\n/// The results from each block are memoized, so each block will be invoked at\n/// most once, no matter how many times the head and tail properties of the\n/// sequence are accessed.\n///\n/// Any side effects in `headBlock` or `tailBlock` should be thread-safe, since\n/// the sequence may be evaluated at any time from any thread. Not only that, but\n/// -tail may be accessed before -head, or both may be accessed simultaneously.\n/// As noted above, side effects will only be triggered the _first_ time -head or\n/// -tail is invoked.\n///\n/// Returns a sequence that lazily invokes the given blocks to provide head and\n/// tail. `headBlock` must not be nil.\n+ (RACSequence *)sequenceWithHeadBlock:(id (^)(void))headBlock tailBlock:(RACSequence *(^)(void))tailBlock;\n\n@end\n\n@interface RACSequence (Unavailable)\n\n- (id)foldLeftWithStart:(id)start combine:(id (^)(id accumulator, id value))combine __attribute__((unavailable(\"Renamed to -foldLeftWithStart:reduce:\")));\n- (id)foldRightWithStart:(id)start combine:(id (^)(id first, RACSequence *rest))combine __attribute__((unavailable(\"Renamed to -foldRightWithStart:reduce:\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSequence.m",
    "content": "//\n//  RACSequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n#import \"RACArraySequence.h\"\n#import \"RACDynamicSequence.h\"\n#import \"RACEagerSequence.h\"\n#import \"RACEmptySequence.h\"\n#import \"RACScheduler.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n#import \"RACTuple.h\"\n#import \"RACUnarySequence.h\"\n\n// An enumerator over sequences.\n@interface RACSequenceEnumerator : NSEnumerator\n\n// The sequence the enumerator is enumerating.\n//\n// This will change as the enumerator is exhausted. This property should only be\n// accessed while synchronized on self.\n@property (nonatomic, strong) RACSequence *sequence;\n\n@end\n\n@interface RACSequence ()\n\n// Performs one iteration of lazy binding, passing through values from `current`\n// until the sequence is exhausted, then recursively binding the remaining\n// values in the receiver.\n//\n// Returns a new sequence which contains `current`, followed by the combined\n// result of all applications of `block` to the remaining values in the receiver.\n- (instancetype)bind:(RACStreamBindBlock)block passingThroughValuesFromSequence:(RACSequence *)current;\n\n@end\n\n@implementation RACSequenceEnumerator\n\n- (id)nextObject {\n\tid object = nil;\n\t\n\t@synchronized (self) {\n\t\tobject = self.sequence.head;\n\t\tself.sequence = self.sequence.tail;\n\t}\n\t\n\treturn object;\n}\n\n@end\n\n@implementation RACSequence\n\n#pragma mark Lifecycle\n\n+ (RACSequence *)sequenceWithHeadBlock:(id (^)(void))headBlock tailBlock:(RACSequence *(^)(void))tailBlock {\n\treturn [[RACDynamicSequence sequenceWithHeadBlock:headBlock tailBlock:tailBlock] setNameWithFormat:@\"+sequenceWithHeadBlock:tailBlock:\"];\n}\n\n#pragma mark Class cluster primitives\n\n- (id)head {\n\tNSCAssert(NO, @\"%s must be overridden by subclasses\", __func__);\n\treturn nil;\n}\n\n- (RACSequence *)tail {\n\tNSCAssert(NO, @\"%s must be overridden by subclasses\", __func__);\n\treturn nil;\n}\n\n#pragma mark RACStream\n\n+ (instancetype)empty {\n\treturn RACEmptySequence.empty;\n}\n\n+ (instancetype)return:(id)value {\n\treturn [RACUnarySequence return:value];\n}\n\n- (instancetype)bind:(RACStreamBindBlock (^)(void))block {\n\tRACStreamBindBlock bindBlock = block();\n\treturn [[self bind:bindBlock passingThroughValuesFromSequence:nil] setNameWithFormat:@\"[%@] -bind:\", self.name];\n}\n\n- (instancetype)bind:(RACStreamBindBlock)bindBlock passingThroughValuesFromSequence:(RACSequence *)passthroughSequence {\n\t// Store values calculated in the dependency here instead, avoiding any kind\n\t// of temporary collection and boxing.\n\t//\n\t// This relies on the implementation of RACDynamicSequence synchronizing\n\t// access to its head, tail, and dependency, and we're only doing it because\n\t// we really need the performance.\n\t__block RACSequence *valuesSeq = self;\n\t__block RACSequence *current = passthroughSequence;\n\t__block BOOL stop = NO;\n\n\tRACSequence *sequence = [RACDynamicSequence sequenceWithLazyDependency:^ id {\n\t\twhile (current.head == nil) {\n\t\t\tif (stop) return nil;\n\n\t\t\t// We've exhausted the current sequence, create a sequence from the\n\t\t\t// next value.\n\t\t\tid value = valuesSeq.head;\n\n\t\t\tif (value == nil) {\n\t\t\t\t// We've exhausted all the sequences.\n\t\t\t\tstop = YES;\n\t\t\t\treturn nil;\n\t\t\t}\n\n\t\t\tcurrent = (id)bindBlock(value, &stop);\n\t\t\tif (current == nil) {\n\t\t\t\tstop = YES;\n\t\t\t\treturn nil;\n\t\t\t}\n\n\t\t\tvaluesSeq = valuesSeq.tail;\n\t\t}\n\n\t\tNSCAssert([current isKindOfClass:RACSequence.class], @\"-bind: block returned an object that is not a sequence: %@\", current);\n\t\treturn nil;\n\t} headBlock:^(id _) {\n\t\treturn current.head;\n\t} tailBlock:^ id (id _) {\n\t\tif (stop) return nil;\n\n\t\treturn [valuesSeq bind:bindBlock passingThroughValuesFromSequence:current.tail];\n\t}];\n\n\tsequence.name = self.name;\n\treturn sequence;\n}\n\n- (instancetype)concat:(RACStream *)stream {\n\tNSCParameterAssert(stream != nil);\n\n\treturn [[[RACArraySequence sequenceWithArray:@[ self, stream ] offset:0]\n\t\tflatten]\n\t\tsetNameWithFormat:@\"[%@] -concat: %@\", self.name, stream];\n}\n\n- (instancetype)zipWith:(RACSequence *)sequence {\n\tNSCParameterAssert(sequence != nil);\n\n\treturn [[RACSequence\n\t\tsequenceWithHeadBlock:^ id {\n\t\t\tif (self.head == nil || sequence.head == nil) return nil;\n\t\t\treturn RACTuplePack(self.head, sequence.head);\n\t\t} tailBlock:^ id {\n\t\t\tif (self.tail == nil || [[RACSequence empty] isEqual:self.tail]) return nil;\n\t\t\tif (sequence.tail == nil || [[RACSequence empty] isEqual:sequence.tail]) return nil;\n\n\t\t\treturn [self.tail zipWith:sequence.tail];\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -zipWith: %@\", self.name, sequence];\n}\n\n#pragma mark Extended methods\n\n- (NSArray *)array {\n\tNSMutableArray *array = [NSMutableArray array];\n\tfor (id obj in self) {\n\t\t[array addObject:obj];\n\t}\n\n\treturn [array copy];\n}\n\n- (NSEnumerator *)objectEnumerator {\n\tRACSequenceEnumerator *enumerator = [[RACSequenceEnumerator alloc] init];\n\tenumerator.sequence = self;\n\treturn enumerator;\n}\n\n- (RACSignal *)signal {\n\treturn [[self signalWithScheduler:[RACScheduler scheduler]] setNameWithFormat:@\"[%@] -signal\", self.name];\n}\n\n- (RACSignal *)signalWithScheduler:(RACScheduler *)scheduler {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t__block RACSequence *sequence = self;\n\n\t\treturn [scheduler scheduleRecursiveBlock:^(void (^reschedule)(void)) {\n\t\t\tif (sequence.head == nil) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t[subscriber sendNext:sequence.head];\n\n\t\t\tsequence = sequence.tail;\n\t\t\treschedule();\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -signalWithScheduler: %@\", self.name, scheduler];\n}\n\n- (id)foldLeftWithStart:(id)start reduce:(id (^)(id, id))reduce {\n\tNSCParameterAssert(reduce != NULL);\n\n\tif (self.head == nil) return start;\n\t\n\tfor (id value in self) {\n\t\tstart = reduce(start, value);\n\t}\n\t\n\treturn start;\n}\n\n- (id)foldRightWithStart:(id)start reduce:(id (^)(id, RACSequence *))reduce {\n\tNSCParameterAssert(reduce != NULL);\n\n\tif (self.head == nil) return start;\n\t\n\tRACSequence *rest = [RACSequence sequenceWithHeadBlock:^{\n\t\tif (self.tail) {\n\t\t\treturn [self.tail foldRightWithStart:start reduce:reduce];\n\t\t} else {\n\t\t\treturn start;\n\t\t}\n\t} tailBlock:nil];\n\t\n\treturn reduce(self.head, rest);\n}\n\n- (BOOL)any:(BOOL (^)(id))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [self objectPassingTest:block] != nil;\n}\n\n- (BOOL)all:(BOOL (^)(id))block {\n\tNSCParameterAssert(block != NULL);\n\t\n\tNSNumber *result = [self foldLeftWithStart:@YES reduce:^(NSNumber *accumulator, id value) {\n\t\treturn @(accumulator.boolValue && block(value));\n\t}];\n\t\n\treturn result.boolValue;\n}\n\n- (id)objectPassingTest:(BOOL (^)(id))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [self filter:block].head;\n}\n\n- (RACSequence *)eagerSequence {\n\treturn [RACEagerSequence sequenceWithArray:self.array offset:0];\n}\n\n- (RACSequence *)lazySequence {\n\treturn self;\n}\n\n#pragma mark NSCopying\n\n- (id)copyWithZone:(NSZone *)zone {\n\treturn self;\n}\n\n#pragma mark NSCoding\n\n- (Class)classForCoder {\n\t// Most sequences should be archived as RACArraySequences.\n\treturn RACArraySequence.class;\n}\n\n- (id)initWithCoder:(NSCoder *)coder {\n\tif (![self isKindOfClass:RACArraySequence.class]) return [[RACArraySequence alloc] initWithCoder:coder];\n\n\t// Decoding is handled in RACArraySequence.\n\treturn [super init];\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n\t[coder encodeObject:self.array forKey:@\"array\"];\n}\n\n#pragma mark NSFastEnumeration\n\n- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(__unsafe_unretained id *)stackbuf count:(NSUInteger)len {\n\tif (state->state == ULONG_MAX) {\n\t\t// Enumeration has completed.\n\t\treturn 0;\n\t}\n\n\t// We need to traverse the sequence itself on repeated calls to this\n\t// method, so use the 'state' field to track the current head.\n\tRACSequence *(^getSequence)(void) = ^{\n\t\treturn (__bridge RACSequence *)(void *)state->state;\n\t};\n\n\tvoid (^setSequence)(RACSequence *) = ^(RACSequence *sequence) {\n\t\t// Release the old sequence and retain the new one.\n\t\tCFBridgingRelease((void *)state->state);\n\n\t\tstate->state = (unsigned long)CFBridgingRetain(sequence);\n\t};\n\n\tvoid (^complete)(void) = ^{\n\t\t// Release any stored sequence.\n\t\tsetSequence(nil);\n\t\tstate->state = ULONG_MAX;\n\t};\n\n\tif (state->state == 0) {\n\t\t// Since a sequence doesn't mutate, this just needs to be set to\n\t\t// something non-NULL.\n\t\tstate->mutationsPtr = state->extra;\n\n\t\tsetSequence(self);\n\t}\n\n\tstate->itemsPtr = stackbuf;\n\n\tNSUInteger enumeratedCount = 0;\n\twhile (enumeratedCount < len) {\n\t\tRACSequence *seq = getSequence();\n\n\t\t// Because the objects in a sequence may be generated lazily, we want to\n\t\t// prevent them from being released until the enumerator's used them.\n\t\t__autoreleasing id obj = seq.head;\n\t\tif (obj == nil) {\n\t\t\tcomplete();\n\t\t\tbreak;\n\t\t}\n\n\t\tstackbuf[enumeratedCount++] = obj;\n\n\t\tif (seq.tail == nil) {\n\t\t\tcomplete();\n\t\t\tbreak;\n\t\t}\n\n\t\tsetSequence(seq.tail);\n\t}\n\n\treturn enumeratedCount;\n}\n\n#pragma mark NSObject\n\n- (NSUInteger)hash {\n\treturn [self.head hash];\n}\n\n- (BOOL)isEqual:(RACSequence *)seq {\n\tif (self == seq) return YES;\n\tif (![seq isKindOfClass:RACSequence.class]) return NO;\n\n\tfor (id<NSObject> selfObj in self) {\n\t\tid<NSObject> seqObj = seq.head;\n\n\t\t// Handles the nil case too.\n\t\tif (![seqObj isEqual:selfObj]) return NO;\n\n\t\tseq = seq.tail;\n\t}\n\n\t// self is now depleted -- the argument should be too.\n\treturn (seq.head == nil);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSerialDisposable.h",
    "content": "//\n//  RACSerialDisposable.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACDisposable.h\"\n\n/// A disposable that contains exactly one other disposable and allows it to be\n/// swapped out atomically.\n@interface RACSerialDisposable : RACDisposable\n\n/// The inner disposable managed by the serial disposable.\n///\n/// This property is thread-safe for reading and writing. However, if you want to\n/// read the current value _and_ write a new one atomically, use\n/// -swapInDisposable: instead.\n///\n/// Disposing of the receiver will also dispose of the current disposable set for\n/// this property, then set the property to nil. If any new disposable is set\n/// after the receiver is disposed, it will be disposed immediately and this\n/// property will remain set to nil.\n@property (atomic, strong) RACDisposable *disposable;\n\n/// Creates a serial disposable which will wrap the given disposable.\n///\n/// disposable - The value to set for `disposable`. This may be nil.\n///\n/// Returns a RACSerialDisposable, or nil if an error occurs.\n+ (instancetype)serialDisposableWithDisposable:(RACDisposable *)disposable;\n\n/// Atomically swaps the receiver's `disposable` for `newDisposable`.\n///\n/// newDisposable - The new value for `disposable`. If the receiver has already\n///                 been disposed, this disposable will be too, and `disposable`\n///                 will remain set to nil. This argument may be nil.\n///\n/// Returns the previous value for the `disposable` property.\n- (RACDisposable *)swapInDisposable:(RACDisposable *)newDisposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSerialDisposable.m",
    "content": "//\n//  RACSerialDisposable.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSerialDisposable.h\"\n#import <pthread/pthread.h>\n\n@interface RACSerialDisposable () {\n\t// The receiver's `disposable`. This variable must only be referenced while\n\t// _mutex is held.\n\tRACDisposable * _disposable;\n\n\t// YES if the receiver has been disposed. This variable must only be accessed\n\t// while _mutex is held.\n\tBOOL _disposed;\n\n\t// A mutex to protect access to _disposable and _disposed.\n\tpthread_mutex_t _mutex;\n}\n\n@end\n\n@implementation RACSerialDisposable\n\n#pragma mark Properties\n\n- (BOOL)isDisposed {\n\tpthread_mutex_lock(&_mutex);\n\tconst BOOL disposed = _disposed;\n\tpthread_mutex_unlock(&_mutex);\n\n\treturn disposed;\n}\n\n- (RACDisposable *)disposable {\n\tpthread_mutex_lock(&_mutex);\n\tRACDisposable * const result = _disposable;\n\tpthread_mutex_unlock(&_mutex);\n\n\treturn result;\n}\n\n- (void)setDisposable:(RACDisposable *)disposable {\n\t[self swapInDisposable:disposable];\n}\n\n#pragma mark Lifecycle\n\n+ (instancetype)serialDisposableWithDisposable:(RACDisposable *)disposable {\n\tRACSerialDisposable *serialDisposable = [[self alloc] init];\n\tserialDisposable.disposable = disposable;\n\treturn serialDisposable;\n}\n\n- (instancetype)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\tconst int result = pthread_mutex_init(&_mutex, NULL);\n\tNSCAssert(0 == result, @\"Failed to initialize mutex with error %d\", result);\n\n\treturn self;\n}\n\n- (instancetype)initWithBlock:(void (^)(void))block {\n\tself = [self init];\n\tif (self == nil) return nil;\n\n\tself.disposable = [RACDisposable disposableWithBlock:block];\n\n\treturn self;\n}\n\n- (void)dealloc {\n\tconst int result = pthread_mutex_destroy(&_mutex);\n\tNSCAssert(0 == result, @\"Failed to destroy mutex with error %d\", result);\n}\n\n#pragma mark Inner Disposable\n\n- (RACDisposable *)swapInDisposable:(RACDisposable *)newDisposable {\n\tRACDisposable *existingDisposable;\n\tBOOL alreadyDisposed;\n\n\tpthread_mutex_lock(&_mutex);\n\talreadyDisposed = _disposed;\n\tif (!alreadyDisposed) {\n\t\texistingDisposable = _disposable;\n\t\t_disposable = newDisposable;\n\t}\n\tpthread_mutex_unlock(&_mutex);\n\n\tif (alreadyDisposed) {\n\t\t[newDisposable dispose];\n\t\treturn nil;\n\t}\n\n\treturn existingDisposable;\n}\n\n#pragma mark Disposal\n\n- (void)dispose {\n\tRACDisposable *existingDisposable;\n\n\tpthread_mutex_lock(&_mutex);\n\tif (!_disposed) {\n\t\texistingDisposable = _disposable;\n\t\t_disposed = YES;\n\t\t_disposable = nil;\n\t}\n\tpthread_mutex_unlock(&_mutex);\n\t\n\t[existingDisposable dispose];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignal+Operations.h",
    "content": "//\n//  RACSignal+Operations.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-09-06.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"RACSignal.h\"\n\n/// The domain for errors originating in RACSignal operations.\nextern NSString * const RACSignalErrorDomain;\n\n/// The error code used with -timeout:.\nextern const NSInteger RACSignalErrorTimedOut;\n\n/// The error code used when a value passed into +switch:cases:default: does not\n/// match any of the cases, and no default was given.\nextern const NSInteger RACSignalErrorNoMatchingCase;\n\n@class RACCommand;\n@class RACDisposable;\n@class RACMulticastConnection;\n@class RACScheduler;\n@class RACSequence;\n@class RACSubject;\n@class RACTuple;\n@protocol RACSubscriber;\n\n@interface RACSignal (Operations)\n\n/// Do the given block on `next`. This should be used to inject side effects into\n/// the signal.\n- (RACSignal *)doNext:(void (^)(id x))block;\n\n/// Do the given block on `error`. This should be used to inject side effects\n/// into the signal.\n- (RACSignal *)doError:(void (^)(NSError *error))block;\n\n/// Do the given block on `completed`. This should be used to inject side effects\n/// into the signal.\n- (RACSignal *)doCompleted:(void (^)(void))block;\n\n/// Sends `next`s only if we don't receive another `next` in `interval` seconds.\n///\n/// If a `next` is received, and then another `next` is received before\n/// `interval` seconds have passed, the first value is discarded.\n///\n/// After `interval` seconds have passed since the most recent `next` was sent,\n/// the most recent `next` is forwarded on the scheduler that the value was\n/// originally received on. If +[RACScheduler currentScheduler] was nil at the\n/// time, a private background scheduler is used.\n///\n/// Returns a signal which sends throttled and delayed `next` events. Completion\n/// and errors are always forwarded immediately.\n- (RACSignal *)throttle:(NSTimeInterval)interval;\n\n/// Throttles `next`s for which `predicate` returns YES.\n///\n/// When `predicate` returns YES for a `next`:\n///\n///  1. If another `next` is received before `interval` seconds have passed, the\n///     prior value is discarded. This happens regardless of whether the new\n///     value will be throttled.\n///  2. After `interval` seconds have passed since the value was originally\n///     received, it will be forwarded on the scheduler that it was received\n///     upon. If +[RACScheduler currentScheduler] was nil at the time, a private\n///     background scheduler is used.\n///\n/// When `predicate` returns NO for a `next`, it is forwarded immediately,\n/// without any throttling.\n///\n/// interval  - The number of seconds for which to buffer the latest value that\n///             passes `predicate`.\n/// predicate - Passed each `next` from the receiver, this block returns\n///             whether the given value should be throttled. This argument must\n///             not be nil.\n///\n/// Returns a signal which sends `next` events, throttled when `predicate`\n/// returns YES. Completion and errors are always forwarded immediately.\n- (RACSignal *)throttle:(NSTimeInterval)interval valuesPassingTest:(BOOL (^)(id next))predicate;\n\n/// Forwards `next` and `completed` events after delaying for `interval` seconds\n/// on the current scheduler (on which the events were delivered).\n///\n/// If +[RACScheduler currentScheduler] is nil when `next` or `completed` is\n/// received, a private background scheduler is used.\n///\n/// Returns a signal which sends delayed `next` and `completed` events. Errors\n/// are always forwarded immediately.\n- (RACSignal *)delay:(NSTimeInterval)interval;\n\n/// Resubscribes when the signal completes.\n- (RACSignal *)repeat;\n\n/// Executes the given block each time a subscription is created.\n///\n/// block - A block which defines the subscription side effects. Cannot be `nil`.\n///\n/// Example:\n///\n///   // Write new file, with backup.\n///   [[[[fileManager\n///       rac_createFileAtPath:path contents:data]\n///       initially:^{\n///           // 2. Second, backup current file\n///           [fileManager moveItemAtPath:path toPath:backupPath error:nil];\n///       }]\n///       initially:^{\n///           // 1. First, acquire write lock.\n///           [writeLock lock];\n///       }]\n///       finally:^{\n///           [writeLock unlock];\n///       }];\n///\n/// Returns a signal that passes through all events of the receiver, plus\n/// introduces side effects which occur prior to any subscription side effects\n/// of the receiver.\n- (RACSignal *)initially:(void (^)(void))block;\n\n/// Executes the given block when the signal completes or errors.\n- (RACSignal *)finally:(void (^)(void))block;\n\n/// Divides the receiver's `next`s into buffers which deliver every `interval`\n/// seconds.\n///\n/// interval  - The interval in which values are grouped into one buffer.\n/// scheduler - The scheduler upon which the returned signal will deliver its\n///             values. This must not be nil or +[RACScheduler\n///             immediateScheduler].\n///\n/// Returns a signal which sends RACTuples of the buffered values at each\n/// interval on `scheduler`. When the receiver completes, any currently-buffered\n/// values will be sent immediately.\n- (RACSignal *)bufferWithTime:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler;\n\n/// Collects all receiver's `next`s into a NSArray. Nil values will be converted\n/// to NSNull.\n///\n/// This corresponds to the `ToArray` method in Rx.\n///\n/// Returns a signal which sends a single NSArray when the receiver completes\n/// successfully.\n- (RACSignal *)collect;\n\n/// Takes the last `count` `next`s after the receiving signal completes.\n- (RACSignal *)takeLast:(NSUInteger)count;\n\n/// Combines the latest values from the receiver and the given signal into\n/// RACTuples, once both have sent at least one `next`.\n///\n/// Any additional `next`s will result in a new RACTuple with the latest values\n/// from both signals.\n///\n/// signal - The signal to combine with. This argument must not be nil.\n///\n/// Returns a signal which sends RACTuples of the combined values, forwards any\n/// `error` events, and completes when both input signals complete.\n- (RACSignal *)combineLatestWith:(RACSignal *)signal;\n\n/// Combines the latest values from the given signals into RACTuples, once all\n/// the signals have sent at least one `next`.\n///\n/// Any additional `next`s will result in a new RACTuple with the latest values\n/// from all signals.\n///\n/// signals - The signals to combine. If this collection is empty, the returned\n///           signal will immediately complete upon subscription.\n///\n/// Returns a signal which sends RACTuples of the combined values, forwards any\n/// `error` events, and completes when all input signals complete.\n+ (RACSignal *)combineLatest:(id<NSFastEnumeration>)signals;\n\n/// Combines signals using +combineLatest:, then reduces the resulting tuples\n/// into a single value using -reduceEach:.\n///\n/// signals     - The signals to combine. If this collection is empty, the\n///               returned signal will immediately complete upon subscription.\n/// reduceBlock - The block which reduces the latest values from all the\n///               signals into one value. It must take as many arguments as the\n///               number of signals given. Each argument will be an object\n///               argument. The return value must be an object. This argument\n///               must not be nil.\n///\n/// Example:\n///\n///   [RACSignal combineLatest:@[ stringSignal, intSignal ] reduce:^(NSString *string, NSNumber *number) {\n///       return [NSString stringWithFormat:@\"%@: %@\", string, number];\n///   }];\n///\n/// Returns a signal which sends the results from each invocation of\n/// `reduceBlock`.\n+ (RACSignal *)combineLatest:(id<NSFastEnumeration>)signals reduce:(id (^)())reduceBlock;\n\n/// Merges the receiver and the given signal with `+merge:` and returns the\n/// resulting signal.\n- (RACSignal *)merge:(RACSignal *)signal;\n\n/// Sends the latest `next` from any of the signals.\n///\n/// Returns a signal that passes through values from each of the given signals,\n/// and sends `completed` when all of them complete. If any signal sends an error,\n/// the returned signal sends `error` immediately.\n+ (RACSignal *)merge:(id<NSFastEnumeration>)signals;\n\n/// Merges the signals sent by the receiver into a flattened signal, but only\n/// subscribes to `maxConcurrent` number of signals at a time. New signals are\n/// queued and subscribed to as other signals complete.\n///\n/// If an error occurs on any of the signals, it is sent on the returned signal.\n/// It completes only after the receiver and all sent signals have completed.\n///\n/// This corresponds to `Merge<TSource>(IObservable<IObservable<TSource>>, Int32)`\n/// in Rx.\n///\n/// maxConcurrent - the maximum number of signals to subscribe to at a\n///                 time. If 0, it subscribes to an unlimited number of\n///                 signals.\n- (RACSignal *)flatten:(NSUInteger)maxConcurrent;\n\n/// Ignores all `next`s from the receiver, waits for the receiver to complete,\n/// then subscribes to a new signal.\n///\n/// block - A block which will create or obtain a new signal to subscribe to,\n///         executed only after the receiver completes. This block must not be\n///         nil, and it must not return a nil signal.\n///\n/// Returns a signal which will pass through the events of the signal created in\n/// `block`. If the receiver errors out, the returned signal will error as well.\n- (RACSignal *)then:(RACSignal * (^)(void))block;\n\n/// Concats the inner signals of a signal of signals.\n- (RACSignal *)concat;\n\n/// Aggregates the `next` values of the receiver into a single combined value.\n///\n/// The algorithm proceeds as follows:\n///\n///  1. `start` is passed into the block as the `running` value, and the first\n///     element of the receiver is passed into the block as the `next` value.\n///  2. The result of the invocation (`running`) and the next element of the\n///     receiver (`next`) is passed into `reduceBlock`.\n///  3. Steps 2 and 3 are repeated until all values have been processed.\n///  4. The last result of `reduceBlock` is sent on the returned signal.\n///\n/// This method is similar to -scanWithStart:reduce:, except that only the\n/// final result is sent on the returned signal.\n///\n/// start       - The value to be combined with the first element of the\n///               receiver. This value may be `nil`.\n/// reduceBlock - The block that describes how to combine values of the\n///               receiver. If the receiver is empty, this block will never be\n///               invoked. Cannot be nil.\n///\n/// Returns a signal that will send the aggregated value when the receiver\n/// completes, then itself complete. If the receiver never sends any values,\n/// `start` will be sent instead.\n- (RACSignal *)aggregateWithStart:(id)start reduce:(id (^)(id running, id next))reduceBlock;\n\n/// Aggregates the `next` values of the receiver into a single combined value.\n/// This is indexed version of -aggregateWithStart:reduce:.\n///\n/// start       - The value to be combined with the first element of the\n///               receiver. This value may be `nil`.\n/// reduceBlock - The block that describes how to combine values of the\n///               receiver. This block takes zero-based index value as the last\n///               parameter. If the receiver is empty, this block will never be\n///               invoked. Cannot be nil.\n///\n/// Returns a signal that will send the aggregated value when the receiver\n/// completes, then itself complete. If the receiver never sends any values,\n/// `start` will be sent instead.\n- (RACSignal *)aggregateWithStart:(id)start reduceWithIndex:(id (^)(id running, id next, NSUInteger index))reduceBlock;\n\n/// Aggregates the `next` values of the receiver into a single combined value.\n///\n/// This invokes `startFactory` block on each subscription, then calls\n/// -aggregateWithStart:reduce: with the return value of the block as start value.\n///\n/// startFactory - The block that returns start value which will be combined\n///                with the first element of the receiver. Cannot be nil.\n/// reduceBlock  - The block that describes how to combine values of the\n///                receiver. If the receiver is empty, this block will never be\n///                invoked. Cannot be nil.\n///\n/// Returns a signal that will send the aggregated value when the receiver\n/// completes, then itself complete. If the receiver never sends any values,\n/// the return value of `startFactory` will be sent instead.\n- (RACSignal *)aggregateWithStartFactory:(id (^)(void))startFactory reduce:(id (^)(id running, id next))reduceBlock;\n\n/// Invokes -setKeyPath:onObject:nilValue: with `nil` for the nil value.\n///\n/// WARNING: Under certain conditions, this method is known to be thread-unsafe.\n///          See the description in -setKeyPath:onObject:nilValue:.\n- (RACDisposable *)setKeyPath:(NSString *)keyPath onObject:(NSObject *)object;\n\n/// Binds the receiver to an object, automatically setting the given key path on\n/// every `next`. When the signal completes, the binding is automatically\n/// disposed of.\n///\n/// WARNING: Under certain conditions, this method is known to be thread-unsafe.\n///          A crash can result if `object` is deallocated concurrently on\n///          another thread within a window of time between a value being sent\n///          on this signal and immediately prior to the invocation of\n///          -setValue:forKeyPath:, which sets the property. To prevent this,\n///          ensure `object` is deallocated on the same thread the receiver\n///          sends on, or ensure that the returned disposable is disposed of\n///          before `object` deallocates.\n///          See https://github.com/ReactiveCocoa/ReactiveCocoa/pull/1184\n///\n/// Sending an error on the signal is considered undefined behavior, and will\n/// generate an assertion failure in Debug builds.\n///\n/// A given key on an object should only have one active signal bound to it at any\n/// given time. Binding more than one signal to the same property is considered\n/// undefined behavior.\n///\n/// keyPath  - The key path to update with `next`s from the receiver.\n/// object   - The object that `keyPath` is relative to.\n/// nilValue - The value to set at the key path whenever `nil` is sent by the\n///            receiver. This may be nil when binding to object properties, but\n///            an NSValue should be used for primitive properties, to avoid an\n///            exception if `nil` is sent (which might occur if an intermediate\n///            object is set to `nil`).\n///\n/// Returns a disposable which can be used to terminate the binding.\n- (RACDisposable *)setKeyPath:(NSString *)keyPath onObject:(NSObject *)object nilValue:(id)nilValue;\n\n/// Sends NSDate.date every `interval` seconds.\n///\n/// interval  - The time interval in seconds at which the current time is sent.\n/// scheduler - The scheduler upon which the current NSDate should be sent. This\n///             must not be nil or +[RACScheduler immediateScheduler].\n///\n/// Returns a signal that sends the current date/time every `interval` on\n/// `scheduler`.\n+ (RACSignal *)interval:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler;\n\n/// Sends NSDate.date at intervals of at least `interval` seconds, up to\n/// approximately `interval` + `leeway` seconds.\n///\n/// The created signal will defer sending each `next` for at least `interval`\n/// seconds, and for an additional amount of time up to `leeway` seconds in the\n/// interest of performance or power consumption. Note that some additional\n/// latency is to be expected, even when specifying a `leeway` of 0.\n///\n/// interval  - The base interval between `next`s.\n/// scheduler - The scheduler upon which the current NSDate should be sent. This\n///             must not be nil or +[RACScheduler immediateScheduler].\n/// leeway    - The maximum amount of additional time the `next` can be deferred.\n///\n/// Returns a signal that sends the current date/time at intervals of at least\n/// `interval seconds` up to approximately `interval` + `leeway` seconds on\n/// `scheduler`.\n+ (RACSignal *)interval:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler withLeeway:(NSTimeInterval)leeway;\n\n/// Takes `next`s until the `signalTrigger` sends `next` or `completed`.\n///\n/// Returns a signal which passes through all events from the receiver until\n/// `signalTrigger` sends `next` or `completed`, at which point the returned signal\n/// will send `completed`.\n- (RACSignal *)takeUntil:(RACSignal *)signalTrigger;\n\n/// Takes `next`s until the `replacement` sends an event.\n///\n/// replacement - The signal which replaces the receiver as soon as it sends an\n///               event.\n///\n/// Returns a signal which passes through `next`s and `error` from the receiver\n/// until `replacement` sends an event, at which point the returned signal will\n/// send that event and switch to passing through events from `replacement`\n/// instead, regardless of whether the receiver has sent events already.\n- (RACSignal *)takeUntilReplacement:(RACSignal *)replacement;\n\n/// Subscribes to the returned signal when an error occurs.\n- (RACSignal *)catch:(RACSignal * (^)(NSError *error))catchBlock;\n\n/// Subscribes to the given signal when an error occurs.\n- (RACSignal *)catchTo:(RACSignal *)signal;\n\n/// Returns a signal that will either immediately send the return value of\n/// `tryBlock` and complete, or error using the `NSError` passed out from the\n/// block.\n///\n/// tryBlock - An action that performs some computation that could fail. If the\n///            block returns nil, the block must return an error via the\n///            `errorPtr` parameter.\n///\n/// Example:\n///\n///   [RACSignal try:^(NSError **error) {\n///       return [NSJSONSerialization JSONObjectWithData:someJSONData options:0 error:error];\n///   }];\n+ (RACSignal *)try:(id (^)(NSError **errorPtr))tryBlock;\n\n/// Runs `tryBlock` against each of the receiver's values, passing values\n/// until `tryBlock` returns NO, or the receiver completes.\n///\n/// tryBlock - An action to run against each of the receiver's values.\n///            The block should return YES to indicate that the action was\n///            successful. This block must not be nil.\n///\n/// Example:\n///\n///   // The returned signal will send an error if data values cannot be\n///   // written to `someFileURL`.\n///   [signal try:^(NSData *data, NSError **errorPtr) {\n///       return [data writeToURL:someFileURL options:NSDataWritingAtomic error:errorPtr];\n///   }];\n///\n/// Returns a signal which passes through all the values of the receiver. If\n/// `tryBlock` fails for any value, the returned signal will error using the\n/// `NSError` passed out from the block.\n- (RACSignal *)try:(BOOL (^)(id value, NSError **errorPtr))tryBlock;\n\n/// Runs `mapBlock` against each of the receiver's values, mapping values until\n/// `mapBlock` returns nil, or the receiver completes.\n///\n/// mapBlock - An action to map each of the receiver's values. The block should\n///            return a non-nil value to indicate that the action was successful.\n///            This block must not be nil.\n///\n/// Example:\n///\n///   // The returned signal will send an error if data cannot be read from\n///   // `fileURL`.\n///   [signal tryMap:^(NSURL *fileURL, NSError **errorPtr) {\n///       return [NSData dataWithContentsOfURL:fileURL options:0 error:errorPtr];\n///   }];\n///\n/// Returns a signal which transforms all the values of the receiver. If\n/// `mapBlock` returns nil for any value, the returned signal will error using\n/// the `NSError` passed out from the block.\n- (RACSignal *)tryMap:(id (^)(id value, NSError **errorPtr))mapBlock;\n\n/// Returns the first `next`. Note that this is a blocking call.\n- (id)first;\n\n/// Returns the first `next` or `defaultValue` if the signal completes or errors\n/// without sending a `next`. Note that this is a blocking call.\n- (id)firstOrDefault:(id)defaultValue;\n\n/// Returns the first `next` or `defaultValue` if the signal completes or errors\n/// without sending a `next`. If an error occurs success will be NO and error\n/// will be populated. Note that this is a blocking call.\n///\n/// Both success and error may be NULL.\n- (id)firstOrDefault:(id)defaultValue success:(BOOL *)success error:(NSError **)error;\n\n/// Blocks the caller and waits for the signal to complete.\n///\n/// error - If not NULL, set to any error that occurs.\n///\n/// Returns whether the signal completed successfully. If NO, `error` will be set\n/// to the error that occurred.\n- (BOOL)waitUntilCompleted:(NSError **)error;\n\n/// Defers creation of a signal until the signal's actually subscribed to.\n///\n/// This can be used to effectively turn a hot signal into a cold signal.\n+ (RACSignal *)defer:(RACSignal * (^)(void))block;\n\n/// Every time the receiver sends a new RACSignal, subscribes and sends `next`s and\n/// `error`s only for that signal.\n///\n/// The receiver must be a signal of signals.\n///\n/// Returns a signal which passes through `next`s and `error`s from the latest\n/// signal sent by the receiver, and sends `completed` when both the receiver and\n/// the last sent signal complete.\n- (RACSignal *)switchToLatest;\n\n/// Switches between the signals in `cases` as well as `defaultSignal` based on\n/// the latest value sent by `signal`.\n///\n/// signal        - A signal of objects used as keys in the `cases` dictionary.\n///                 This argument must not be nil.\n/// cases         - A dictionary that has signals as values. This argument must\n///                 not be nil. A RACTupleNil key in this dictionary will match\n///                 nil `next` events that are received on `signal`.\n/// defaultSignal - The signal to pass through after `signal` sends a value for\n///                 which `cases` does not contain a signal. If nil, any\n///                 unmatched values will result in\n///                 a RACSignalErrorNoMatchingCase error.\n///\n/// Returns a signal which passes through `next`s and `error`s from one of the\n/// the signals in `cases` or `defaultSignal`, and sends `completed` when both\n/// `signal` and the last used signal complete. If no `defaultSignal` is given,\n/// an unmatched `next` will result in an error on the returned signal.\n+ (RACSignal *)switch:(RACSignal *)signal cases:(NSDictionary *)cases default:(RACSignal *)defaultSignal;\n\n/// Switches between `trueSignal` and `falseSignal` based on the latest value\n/// sent by `boolSignal`.\n///\n/// boolSignal  - A signal of BOOLs determining whether `trueSignal` or\n///               `falseSignal` should be active. This argument must not be nil.\n/// trueSignal  - The signal to pass through after `boolSignal` has sent YES.\n///               This argument must not be nil.\n/// falseSignal - The signal to pass through after `boolSignal` has sent NO. This\n///               argument must not be nil.\n///\n/// Returns a signal which passes through `next`s and `error`s from `trueSignal`\n/// and/or `falseSignal`, and sends `completed` when both `boolSignal` and the\n/// last switched signal complete.\n+ (RACSignal *)if:(RACSignal *)boolSignal then:(RACSignal *)trueSignal else:(RACSignal *)falseSignal;\n\n/// Adds every `next` to an array. Nils are represented by NSNulls. Note that\n/// this is a blocking call.\n///\n/// **This is not the same as the `ToArray` method in Rx.** See -collect for\n/// that behavior instead.\n///\n/// Returns the array of `next` values, or nil if an error occurs.\n- (NSArray *)toArray;\n\n/// Adds every `next` to a sequence. Nils are represented by NSNulls.\n///\n/// This corresponds to the `ToEnumerable` method in Rx.\n///\n/// Returns a sequence which provides values from the signal as they're sent.\n/// Trying to retrieve a value from the sequence which has not yet been sent will\n/// block.\n@property (nonatomic, strong, readonly) RACSequence *sequence;\n\n/// Creates and returns a multicast connection. This allows you to share a single\n/// subscription to the underlying signal.\n- (RACMulticastConnection *)publish;\n\n/// Creates and returns a multicast connection that pushes values into the given\n/// subject. This allows you to share a single subscription to the underlying\n/// signal.\n- (RACMulticastConnection *)multicast:(RACSubject *)subject;\n\n/// Multicasts the signal to a RACReplaySubject of unlimited capacity, and\n/// immediately connects to the resulting RACMulticastConnection.\n///\n/// Returns the connected, multicasted signal.\n- (RACSignal *)replay;\n\n/// Multicasts the signal to a RACReplaySubject of capacity 1, and immediately\n/// connects to the resulting RACMulticastConnection.\n///\n/// Returns the connected, multicasted signal.\n- (RACSignal *)replayLast;\n\n/// Multicasts the signal to a RACReplaySubject of unlimited capacity, and\n/// lazily connects to the resulting RACMulticastConnection.\n///\n/// This means the returned signal will subscribe to the multicasted signal only\n/// when the former receives its first subscription.\n///\n/// Returns the lazily connected, multicasted signal.\n- (RACSignal *)replayLazily;\n\n/// Sends an error after `interval` seconds if the source doesn't complete\n/// before then.\n///\n/// The error will be in the RACSignalErrorDomain and have a code of\n/// RACSignalErrorTimedOut.\n///\n/// interval  - The number of seconds after which the signal should error out.\n/// scheduler - The scheduler upon which any timeout error should be sent. This\n///             must not be nil or +[RACScheduler immediateScheduler].\n///\n/// Returns a signal that passes through the receiver's events, until the stream\n/// finishes or times out, at which point an error will be sent on `scheduler`.\n- (RACSignal *)timeout:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler;\n\n/// Creates and returns a signal that delivers its events on the given scheduler.\n/// Any side effects of the receiver will still be performed on the original\n/// thread.\n///\n/// This is ideal when the signal already performs its work on the desired\n/// thread, but you want to handle its events elsewhere.\n///\n/// This corresponds to the `ObserveOn` method in Rx.\n- (RACSignal *)deliverOn:(RACScheduler *)scheduler;\n\n/// Creates and returns a signal that executes its side effects and delivers its\n/// events on the given scheduler.\n///\n/// Use of this operator should be avoided whenever possible, because the\n/// receiver's side effects may not be safe to run on another thread. If you just\n/// want to receive the signal's events on `scheduler`, use -deliverOn: instead.\n- (RACSignal *)subscribeOn:(RACScheduler *)scheduler;\n\n/// Creates and returns a signal that delivers its events on the main thread.\n/// If events are already being sent on the main thread, they may be passed on\n/// without delay. An event will instead be queued for later delivery on the main\n/// thread if sent on another thread, or if a previous event is already being\n/// processed, or has been queued.\n///\n/// Any side effects of the receiver will still be performed on the original\n/// thread.\n///\n/// This can be used when a signal will cause UI updates, to avoid potential\n/// flicker caused by delayed delivery of events, such as the first event from\n/// a RACObserve at view instantiation.\n- (RACSignal *)deliverOnMainThread;\n\n/// Groups each received object into a group, as determined by calling `keyBlock`\n/// with that object. The object sent is transformed by calling `transformBlock`\n/// with the object. If `transformBlock` is nil, it sends the original object.\n///\n/// The returned signal is a signal of RACGroupedSignal.\n- (RACSignal *)groupBy:(id<NSCopying> (^)(id object))keyBlock transform:(id (^)(id object))transformBlock;\n\n/// Calls -[RACSignal groupBy:keyBlock transform:nil].\n- (RACSignal *)groupBy:(id<NSCopying> (^)(id object))keyBlock;\n\n/// Sends an [NSNumber numberWithBool:YES] if the receiving signal sends any\n/// objects.\n- (RACSignal *)any;\n\n/// Sends an [NSNumber numberWithBool:YES] if the receiving signal sends any\n/// objects that pass `predicateBlock`.\n///\n/// predicateBlock - cannot be nil.\n- (RACSignal *)any:(BOOL (^)(id object))predicateBlock;\n\n/// Sends an [NSNumber numberWithBool:YES] if all the objects the receiving \n/// signal sends pass `predicateBlock`.\n///\n/// predicateBlock - cannot be nil.\n- (RACSignal *)all:(BOOL (^)(id object))predicateBlock;\n\n/// Resubscribes to the receiving signal if an error occurs, up until it has\n/// retried the given number of times.\n///\n/// retryCount - if 0, it keeps retrying until it completes.\n- (RACSignal *)retry:(NSInteger)retryCount;\n\n/// Resubscribes to the receiving signal if an error occurs.\n- (RACSignal *)retry;\n\n/// Sends the latest value from the receiver only when `sampler` sends a value.\n/// The returned signal could repeat values if `sampler` fires more often than\n/// the receiver. Values from `sampler` are ignored before the receiver sends\n/// its first value.\n///\n/// sampler - The signal that controls when the latest value from the receiver\n///           is sent. Cannot be nil.\n- (RACSignal *)sample:(RACSignal *)sampler;\n\n/// Ignores all `next`s from the receiver.\n///\n/// Returns a signal which only passes through `error` or `completed` events from\n/// the receiver.\n- (RACSignal *)ignoreValues;\n\n/// Converts each of the receiver's events into a RACEvent object.\n///\n/// Returns a signal which sends the receiver's events as RACEvents, and\n/// completes after the receiver sends `completed` or `error`.\n- (RACSignal *)materialize;\n\n/// Converts each RACEvent in the receiver back into \"real\" RACSignal events.\n///\n/// Returns a signal which sends `next` for each value RACEvent, `error` for each\n/// error RACEvent, and `completed` for each completed RACEvent.\n- (RACSignal *)dematerialize;\n\n/// Inverts each NSNumber-wrapped BOOL sent by the receiver. It will assert if\n/// the receiver sends anything other than NSNumbers.\n///\n/// Returns a signal of inverted NSNumber-wrapped BOOLs.\n- (RACSignal *)not;\n\n/// Performs a boolean AND on all of the RACTuple of NSNumbers in sent by the receiver.\n///\n/// Asserts if the receiver sends anything other than a RACTuple of one or more NSNumbers.\n///\n/// Returns a signal that applies AND to each NSNumber in the tuple.\n- (RACSignal *)and;\n\n/// Performs a boolean OR on all of the RACTuple of NSNumbers in sent by the receiver.\n///\n/// Asserts if the receiver sends anything other than a RACTuple of one or more NSNumbers.\n/// \n/// Returns a signal that applies OR to each NSNumber in the tuple.\n- (RACSignal *)or;\n\n/// Sends the result of calling the block with arguments as packed in each RACTuple\n/// sent by the receiver.\n///\n/// The receiver must send tuple values, where the first element of the tuple is\n/// a block, taking a number of parameters equal to the count of the remaining\n/// elements of the tuple, and returning an object. Each block must take at least\n/// one argument, so each tuple must contain at least 2 elements.\n///\n/// Example:\n///\n///   RACSignal *adder = [RACSignal return:^(NSNumber *a, NSNumber *b) {\n///       return @(a.intValue + b.intValue);\n///   }];\n///   RACSignal *sums = [[RACSignal\n///       combineLatest:@[ adder, as, bs ]]\n///       reduceApply];\n///\n/// Returns a signal of the result of applying the first element of each tuple\n/// to the remaining elements.\n- (RACSignal *)reduceApply;\n\n@end\n\n@interface RACSignal (UnavailableOperations)\n\n- (RACSignal *)windowWithStart:(RACSignal *)openSignal close:(RACSignal * (^)(RACSignal *start))closeBlock __attribute__((unavailable(\"See https://github.com/ReactiveCocoa/ReactiveCocoa/issues/587\")));\n- (RACSignal *)buffer:(NSUInteger)bufferCount __attribute__((unavailable(\"See https://github.com/ReactiveCocoa/ReactiveCocoa/issues/587\")));\n- (RACSignal *)let:(RACSignal * (^)(RACSignal *sharedSignal))letBlock __attribute__((unavailable(\"Use -publish instead\")));\n+ (RACSignal *)interval:(NSTimeInterval)interval __attribute__((unavailable(\"Use +interval:onScheduler: instead\")));\n+ (RACSignal *)interval:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway __attribute__((unavailable(\"Use +interval:onScheduler:withLeeway: instead\")));\n- (RACSignal *)bufferWithTime:(NSTimeInterval)interval __attribute__((unavailable(\"Use -bufferWithTime:onScheduler: instead\")));\n- (RACSignal *)timeout:(NSTimeInterval)interval __attribute__((unavailable(\"Use -timeout:onScheduler: instead\")));\n- (RACDisposable *)toProperty:(NSString *)keyPath onObject:(NSObject *)object __attribute__((unavailable(\"Renamed to -setKeyPath:onObject:\")));\n- (RACSignal *)ignoreElements __attribute__((unavailable(\"Renamed to -ignoreValues\")));\n- (RACSignal *)sequenceNext:(RACSignal * (^)(void))block __attribute__((unavailable(\"Renamed to -then:\")));\n- (RACSignal *)aggregateWithStart:(id)start combine:(id (^)(id running, id next))combineBlock __attribute__((unavailable(\"Renamed to -aggregateWithStart:reduce:\")));\n- (RACSignal *)aggregateWithStartFactory:(id (^)(void))startFactory combine:(id (^)(id running, id next))combineBlock __attribute__((unavailable(\"Renamed to -aggregateWithStartFactory:reduce:\")));\n- (RACDisposable *)executeCommand:(RACCommand *)command __attribute__((unavailable(\"Use -flattenMap: or -subscribeNext: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignal+Operations.m",
    "content": "//\n//  RACSignal+Operations.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-09-06.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal+Operations.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACBlockTrampoline.h\"\n#import \"RACCommand.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACEvent.h\"\n#import \"RACGroupedSignal.h\"\n#import \"RACMulticastConnection+Private.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n#import \"RACSerialDisposable.h\"\n#import \"RACSignalSequence.h\"\n#import \"RACStream+Private.h\"\n#import \"RACSubject.h\"\n#import \"RACSubscriber+Private.h\"\n#import \"RACSubscriber.h\"\n#import \"RACTuple.h\"\n#import \"RACUnit.h\"\n#import <libkern/OSAtomic.h>\n#import <objc/runtime.h>\n\nNSString * const RACSignalErrorDomain = @\"RACSignalErrorDomain\";\n\nconst NSInteger RACSignalErrorTimedOut = 1;\nconst NSInteger RACSignalErrorNoMatchingCase = 2;\n\n// Subscribes to the given signal with the given blocks.\n//\n// If the signal errors or completes, the corresponding block is invoked. If the\n// disposable passed to the block is _not_ disposed, then the signal is\n// subscribed to again.\nstatic RACDisposable *subscribeForever (RACSignal *signal, void (^next)(id), void (^error)(NSError *, RACDisposable *), void (^completed)(RACDisposable *)) {\n\tnext = [next copy];\n\terror = [error copy];\n\tcompleted = [completed copy];\n\n\tRACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n\tRACSchedulerRecursiveBlock recursiveBlock = ^(void (^recurse)(void)) {\n\t\tRACCompoundDisposable *selfDisposable = [RACCompoundDisposable compoundDisposable];\n\t\t[compoundDisposable addDisposable:selfDisposable];\n\n\t\t__weak RACDisposable *weakSelfDisposable = selfDisposable;\n\n\t\tRACDisposable *subscriptionDisposable = [signal subscribeNext:next error:^(NSError *e) {\n\t\t\t@autoreleasepool {\n\t\t\t\terror(e, compoundDisposable);\n\t\t\t\t[compoundDisposable removeDisposable:weakSelfDisposable];\n\t\t\t}\n\n\t\t\trecurse();\n\t\t} completed:^{\n\t\t\t@autoreleasepool {\n\t\t\t\tcompleted(compoundDisposable);\n\t\t\t\t[compoundDisposable removeDisposable:weakSelfDisposable];\n\t\t\t}\n\n\t\t\trecurse();\n\t\t}];\n\n\t\t[selfDisposable addDisposable:subscriptionDisposable];\n\t};\n\n\t// Subscribe once immediately, and then use recursive scheduling for any\n\t// further resubscriptions.\n\trecursiveBlock(^{\n\t\tRACScheduler *recursiveScheduler = RACScheduler.currentScheduler ?: [RACScheduler scheduler];\n\n\t\tRACDisposable *schedulingDisposable = [recursiveScheduler scheduleRecursiveBlock:recursiveBlock];\n\t\t[compoundDisposable addDisposable:schedulingDisposable];\n\t});\n\n\treturn compoundDisposable;\n}\n\n@implementation RACSignal (Operations)\n\n- (RACSignal *)doNext:(void (^)(id x))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\tblock(x);\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -doNext:\", self.name];\n}\n\n- (RACSignal *)doError:(void (^)(NSError *error))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\tblock(error);\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -doError:\", self.name];\n}\n\n- (RACSignal *)doCompleted:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tblock();\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -doCompleted:\", self.name];\n}\n\n- (RACSignal *)throttle:(NSTimeInterval)interval {\n\treturn [[self throttle:interval valuesPassingTest:^(id _) {\n\t\treturn YES;\n\t}] setNameWithFormat:@\"[%@] -throttle: %f\", self.name, (double)interval];\n}\n\n- (RACSignal *)throttle:(NSTimeInterval)interval valuesPassingTest:(BOOL (^)(id next))predicate {\n\tNSCParameterAssert(interval >= 0);\n\tNSCParameterAssert(predicate != nil);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n\t\t// We may never use this scheduler, but we need to set it up ahead of\n\t\t// time so that our scheduled blocks are run serially if we do.\n\t\tRACScheduler *scheduler = [RACScheduler scheduler];\n\n\t\t// Information about any currently-buffered `next` event.\n\t\t__block id nextValue = nil;\n\t\t__block BOOL hasNextValue = NO;\n\t\tRACSerialDisposable *nextDisposable = [[RACSerialDisposable alloc] init];\n\n\t\tvoid (^flushNext)(BOOL send) = ^(BOOL send) {\n\t\t\t@synchronized (compoundDisposable) {\n\t\t\t\t[nextDisposable.disposable dispose];\n\n\t\t\t\tif (!hasNextValue) return;\n\t\t\t\tif (send) [subscriber sendNext:nextValue];\n\n\t\t\t\tnextValue = nil;\n\t\t\t\thasNextValue = NO;\n\t\t\t}\n\t\t};\n\n\t\tRACDisposable *subscriptionDisposable = [self subscribeNext:^(id x) {\n\t\t\tRACScheduler *delayScheduler = RACScheduler.currentScheduler ?: scheduler;\n\t\t\tBOOL shouldThrottle = predicate(x);\n\n\t\t\t@synchronized (compoundDisposable) {\n\t\t\t\tflushNext(NO);\n\t\t\t\tif (!shouldThrottle) {\n\t\t\t\t\t[subscriber sendNext:x];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tnextValue = x;\n\t\t\t\thasNextValue = YES;\n\t\t\t\tnextDisposable.disposable = [delayScheduler afterDelay:interval schedule:^{\n\t\t\t\t\tflushNext(YES);\n\t\t\t\t}];\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[compoundDisposable dispose];\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tflushNext(YES);\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\t[compoundDisposable addDisposable:subscriptionDisposable];\n\t\treturn compoundDisposable;\n\t}] setNameWithFormat:@\"[%@] -throttle: %f valuesPassingTest:\", self.name, (double)interval];\n}\n\n- (RACSignal *)delay:(NSTimeInterval)interval {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t\t// We may never use this scheduler, but we need to set it up ahead of\n\t\t// time so that our scheduled blocks are run serially if we do.\n\t\tRACScheduler *scheduler = [RACScheduler scheduler];\n\n\t\tvoid (^schedule)(dispatch_block_t) = ^(dispatch_block_t block) {\n\t\t\tRACScheduler *delayScheduler = RACScheduler.currentScheduler ?: scheduler;\n\t\t\tRACDisposable *schedulerDisposable = [delayScheduler afterDelay:interval schedule:block];\n\t\t\t[disposable addDisposable:schedulerDisposable];\n\t\t};\n\n\t\tRACDisposable *subscriptionDisposable = [self subscribeNext:^(id x) {\n\t\t\tschedule(^{\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t});\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tschedule(^{\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t});\n\t\t}];\n\n\t\t[disposable addDisposable:subscriptionDisposable];\n\t\treturn disposable;\n\t}] setNameWithFormat:@\"[%@] -delay: %f\", self.name, (double)interval];\n}\n\n- (RACSignal *)repeat {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn subscribeForever(self,\n\t\t\t^(id x) {\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t},\n\t\t\t^(NSError *error, RACDisposable *disposable) {\n\t\t\t\t[disposable dispose];\n\t\t\t\t[subscriber sendError:error];\n\t\t\t},\n\t\t\t^(RACDisposable *disposable) {\n\t\t\t\t// Resubscribe.\n\t\t\t});\n\t}] setNameWithFormat:@\"[%@] -repeat\", self.name];\n}\n\n- (RACSignal *)catch:(RACSignal * (^)(NSError *error))catchBlock {\n\tNSCParameterAssert(catchBlock != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACSerialDisposable *catchDisposable = [[RACSerialDisposable alloc] init];\n\n\t\tRACDisposable *subscriptionDisposable = [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\tRACSignal *signal = catchBlock(error);\n\t\t\tNSCAssert(signal != nil, @\"Expected non-nil signal from catch block on %@\", self);\n\t\t\tcatchDisposable.disposable = [signal subscribe:subscriber];\n\t\t} completed:^{\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[catchDisposable dispose];\n\t\t\t[subscriptionDisposable dispose];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -catch:\", self.name];\n}\n\n- (RACSignal *)catchTo:(RACSignal *)signal {\n\treturn [[self catch:^(NSError *error) {\n\t\treturn signal;\n\t}] setNameWithFormat:@\"[%@] -catchTo: %@\", self.name, signal];\n}\n\n+ (RACSignal *)try:(id (^)(NSError **errorPtr))tryBlock {\n\tNSCParameterAssert(tryBlock != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tNSError *error;\n\t\tid value = tryBlock(&error);\n\t\tRACSignal *signal = (value == nil ? [RACSignal error:error] : [RACSignal return:value]);\n\t\treturn [signal subscribe:subscriber];\n\t}] setNameWithFormat:@\"+try:\"];\n}\n\n- (RACSignal *)try:(BOOL (^)(id value, NSError **errorPtr))tryBlock {\n\tNSCParameterAssert(tryBlock != NULL);\n\n\treturn [[self flattenMap:^(id value) {\n\t\tNSError *error = nil;\n\t\tBOOL passed = tryBlock(value, &error);\n\t\treturn (passed ? [RACSignal return:value] : [RACSignal error:error]);\n\t}] setNameWithFormat:@\"[%@] -try:\", self.name];\n}\n\n- (RACSignal *)tryMap:(id (^)(id value, NSError **errorPtr))mapBlock {\n\tNSCParameterAssert(mapBlock != NULL);\n\n\treturn [[self flattenMap:^(id value) {\n\t\tNSError *error = nil;\n\t\tid mappedValue = mapBlock(value, &error);\n\t\treturn (mappedValue == nil ? [RACSignal error:error] : [RACSignal return:mappedValue]);\n\t}] setNameWithFormat:@\"[%@] -tryMap:\", self.name];\n}\n\n- (RACSignal *)initially:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[RACSignal defer:^{\n\t\tblock();\n\t\treturn self;\n\t}] setNameWithFormat:@\"[%@] -initially:\", self.name];\n}\n\n- (RACSignal *)finally:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[[self\n\t\tdoError:^(NSError *error) {\n\t\t\tblock();\n\t\t}]\n\t\tdoCompleted:^{\n\t\t\tblock();\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -finally:\", self.name];\n}\n\n- (RACSignal *)bufferWithTime:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler {\n\tNSCParameterAssert(scheduler != nil);\n\tNSCParameterAssert(scheduler != RACScheduler.immediateScheduler);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACSerialDisposable *timerDisposable = [[RACSerialDisposable alloc] init];\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\tvoid (^flushValues)() = ^{\n\t\t\t@synchronized (values) {\n\t\t\t\t[timerDisposable.disposable dispose];\n\n\t\t\t\tif (values.count == 0) return;\n\n\t\t\t\tRACTuple *tuple = [RACTuple tupleWithObjectsFromArray:values];\n\t\t\t\t[values removeAllObjects];\n\t\t\t\t[subscriber sendNext:tuple];\n\t\t\t}\n\t\t};\n\n\t\tRACDisposable *selfDisposable = [self subscribeNext:^(id x) {\n\t\t\t@synchronized (values) {\n\t\t\t\tif (values.count == 0) {\n\t\t\t\t\ttimerDisposable.disposable = [scheduler afterDelay:interval schedule:flushValues];\n\t\t\t\t}\n\n\t\t\t\t[values addObject:x ?: RACTupleNil.tupleNil];\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tflushValues();\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[selfDisposable dispose];\n\t\t\t[timerDisposable dispose];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -bufferWithTime: %f onScheduler: %@\", self.name, (double)interval, scheduler];\n}\n\n- (RACSignal *)collect {\n\treturn [[self aggregateWithStartFactory:^{\n\t\treturn [[NSMutableArray alloc] init];\n\t} reduce:^(NSMutableArray *collectedValues, id x) {\n\t\t[collectedValues addObject:(x ?: NSNull.null)];\n\t\treturn collectedValues;\n\t}] setNameWithFormat:@\"[%@] -collect\", self.name];\n}\n\n- (RACSignal *)takeLast:(NSUInteger)count {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tNSMutableArray *valuesTaken = [NSMutableArray arrayWithCapacity:count];\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\t[valuesTaken addObject:x ? : RACTupleNil.tupleNil];\n\n\t\t\twhile (valuesTaken.count > count) {\n\t\t\t\t[valuesTaken removeObjectAtIndex:0];\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tfor (id value in valuesTaken) {\n\t\t\t\t[subscriber sendNext:value == RACTupleNil.tupleNil ? nil : value];\n\t\t\t}\n\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -takeLast: %lu\", self.name, (unsigned long)count];\n}\n\n- (RACSignal *)combineLatestWith:(RACSignal *)signal {\n\tNSCParameterAssert(signal != nil);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t\t__block id lastSelfValue = nil;\n\t\t__block BOOL selfCompleted = NO;\n\n\t\t__block id lastOtherValue = nil;\n\t\t__block BOOL otherCompleted = NO;\n\n\t\tvoid (^sendNext)(void) = ^{\n\t\t\t@synchronized (disposable) {\n\t\t\t\tif (lastSelfValue == nil || lastOtherValue == nil) return;\n\t\t\t\t[subscriber sendNext:RACTuplePack(lastSelfValue, lastOtherValue)];\n\t\t\t}\n\t\t};\n\n\t\tRACDisposable *selfDisposable = [self subscribeNext:^(id x) {\n\t\t\t@synchronized (disposable) {\n\t\t\t\tlastSelfValue = x ?: RACTupleNil.tupleNil;\n\t\t\t\tsendNext();\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t@synchronized (disposable) {\n\t\t\t\tselfCompleted = YES;\n\t\t\t\tif (otherCompleted) [subscriber sendCompleted];\n\t\t\t}\n\t\t}];\n\n\t\t[disposable addDisposable:selfDisposable];\n\n\t\tRACDisposable *otherDisposable = [signal subscribeNext:^(id x) {\n\t\t\t@synchronized (disposable) {\n\t\t\t\tlastOtherValue = x ?: RACTupleNil.tupleNil;\n\t\t\t\tsendNext();\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t@synchronized (disposable) {\n\t\t\t\totherCompleted = YES;\n\t\t\t\tif (selfCompleted) [subscriber sendCompleted];\n\t\t\t}\n\t\t}];\n\n\t\t[disposable addDisposable:otherDisposable];\n\n\t\treturn disposable;\n\t}] setNameWithFormat:@\"[%@] -combineLatestWith: %@\", self.name, signal];\n}\n\n+ (RACSignal *)combineLatest:(id<NSFastEnumeration>)signals {\n\treturn [[self join:signals block:^(RACSignal *left, RACSignal *right) {\n\t\treturn [left combineLatestWith:right];\n\t}] setNameWithFormat:@\"+combineLatest: %@\", signals];\n}\n\n+ (RACSignal *)combineLatest:(id<NSFastEnumeration>)signals reduce:(id (^)())reduceBlock {\n\tNSCParameterAssert(reduceBlock != nil);\n\n\tRACSignal *result = [self combineLatest:signals];\n\n\t// Although we assert this condition above, older versions of this method\n\t// supported this argument being nil. Avoid crashing Release builds of\n\t// apps that depended on that.\n\tif (reduceBlock != nil) result = [result reduceEach:reduceBlock];\n\n\treturn [result setNameWithFormat:@\"+combineLatest: %@ reduce:\", signals];\n}\n\n- (RACSignal *)merge:(RACSignal *)signal {\n\treturn [[RACSignal\n\t\tmerge:@[ self, signal ]]\n\t\tsetNameWithFormat:@\"[%@] -merge: %@\", self.name, signal];\n}\n\n+ (RACSignal *)merge:(id<NSFastEnumeration>)signals {\n\tNSMutableArray *copiedSignals = [[NSMutableArray alloc] init];\n\tfor (RACSignal *signal in signals) {\n\t\t[copiedSignals addObject:signal];\n\t}\n\n\treturn [[[RACSignal\n\t\tcreateSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\tfor (RACSignal *signal in copiedSignals) {\n\t\t\t\t[subscriber sendNext:signal];\n\t\t\t}\n\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}]\n\t\tflatten]\n\t\tsetNameWithFormat:@\"+merge: %@\", copiedSignals];\n}\n\n- (RACSignal *)flatten:(NSUInteger)maxConcurrent {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *compoundDisposable = [[RACCompoundDisposable alloc] init];\n\n\t\t// Contains disposables for the currently active subscriptions.\n\t\t//\n\t\t// This should only be used while synchronized on `subscriber`.\n\t\tNSMutableArray *activeDisposables = [[NSMutableArray alloc] initWithCapacity:maxConcurrent];\n\n\t\t// Whether the signal-of-signals has completed yet.\n\t\t//\n\t\t// This should only be used while synchronized on `subscriber`.\n\t\t__block BOOL selfCompleted = NO;\n\n\t\t// Subscribes to the given signal.\n\t\t__block void (^subscribeToSignal)(RACSignal *);\n\n\t\t// Weak reference to the above, to avoid a leak.\n\t\t__weak __block void (^recur)(RACSignal *);\n\n\t\t// Sends completed to the subscriber if all signals are finished.\n\t\t//\n\t\t// This should only be used while synchronized on `subscriber`.\n\t\tvoid (^completeIfAllowed)(void) = ^{\n\t\t\tif (selfCompleted && activeDisposables.count == 0) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}\n\t\t};\n\n\t\t// The signals waiting to be started.\n\t\t//\n\t\t// This array should only be used while synchronized on `subscriber`.\n\t\tNSMutableArray *queuedSignals = [NSMutableArray array];\n\n\t\trecur = subscribeToSignal = ^(RACSignal *signal) {\n\t\t\tRACSerialDisposable *serialDisposable = [[RACSerialDisposable alloc] init];\n\n\t\t\t@synchronized (subscriber) {\n\t\t\t\t[compoundDisposable addDisposable:serialDisposable];\n\t\t\t\t[activeDisposables addObject:serialDisposable];\n\t\t\t}\n\n\t\t\tserialDisposable.disposable = [signal subscribeNext:^(id x) {\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t} error:^(NSError *error) {\n\t\t\t\t[subscriber sendError:error];\n\t\t\t} completed:^{\n\t\t\t\t__strong void (^subscribeToSignal)(RACSignal *) = recur;\n\t\t\t\tRACSignal *nextSignal;\n\n\t\t\t\t@synchronized (subscriber) {\n\t\t\t\t\t[compoundDisposable removeDisposable:serialDisposable];\n\t\t\t\t\t[activeDisposables removeObjectIdenticalTo:serialDisposable];\n\n\t\t\t\t\tif (queuedSignals.count == 0) {\n\t\t\t\t\t\tcompleteIfAllowed();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tnextSignal = queuedSignals[0];\n\t\t\t\t\t[queuedSignals removeObjectAtIndex:0];\n\t\t\t\t}\n\n\t\t\t\tsubscribeToSignal(nextSignal);\n\t\t\t}];\n\t\t};\n\n\t\t[compoundDisposable addDisposable:[self subscribeNext:^(RACSignal *signal) {\n\t\t\tif (signal == nil) return;\n\n\t\t\tNSCAssert([signal isKindOfClass:RACSignal.class], @\"Expected a RACSignal, got %@\", signal);\n\n\t\t\t@synchronized (subscriber) {\n\t\t\t\tif (maxConcurrent > 0 && activeDisposables.count >= maxConcurrent) {\n\t\t\t\t\t[queuedSignals addObject:signal];\n\n\t\t\t\t\t// If we need to wait, skip subscribing to this\n\t\t\t\t\t// signal.\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsubscribeToSignal(signal);\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t@synchronized (subscriber) {\n\t\t\t\tselfCompleted = YES;\n\t\t\t\tcompleteIfAllowed();\n\t\t\t}\n\t\t}]];\n\n\t\t[compoundDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t// A strong reference is held to `subscribeToSignal` until we're\n\t\t\t// done, preventing it from deallocating early.\n\t\t\tsubscribeToSignal = nil;\n\t\t}]];\n\n\t\treturn compoundDisposable;\n\t}] setNameWithFormat:@\"[%@] -flatten: %lu\", self.name, (unsigned long)maxConcurrent];\n}\n\n- (RACSignal *)then:(RACSignal * (^)(void))block {\n\tNSCParameterAssert(block != nil);\n\n\treturn [[[self\n\t\tignoreValues]\n\t\tconcat:[RACSignal defer:block]]\n\t\tsetNameWithFormat:@\"[%@] -then:\", self.name];\n}\n\n- (RACSignal *)concat {\n\treturn [[self flatten:1] setNameWithFormat:@\"[%@] -concat\", self.name];\n}\n\n- (RACSignal *)aggregateWithStartFactory:(id (^)(void))startFactory reduce:(id (^)(id running, id next))reduceBlock {\n\tNSCParameterAssert(startFactory != NULL);\n\tNSCParameterAssert(reduceBlock != NULL);\n\n\treturn [[RACSignal defer:^{\n\t\treturn [self aggregateWithStart:startFactory() reduce:reduceBlock];\n\t}] setNameWithFormat:@\"[%@] -aggregateWithStartFactory:reduce:\", self.name];\n}\n\n- (RACSignal *)aggregateWithStart:(id)start reduce:(id (^)(id running, id next))reduceBlock {\n\treturn [[self\n\t\taggregateWithStart:start\n\t\treduceWithIndex:^(id running, id next, NSUInteger index) {\n\t\t\treturn reduceBlock(running, next);\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -aggregateWithStart: %@ reduce:\", self.name, RACDescription(start)];\n}\n\n- (RACSignal *)aggregateWithStart:(id)start reduceWithIndex:(id (^)(id, id, NSUInteger))reduceBlock {\n\treturn [[[[self\n\t\tscanWithStart:start reduceWithIndex:reduceBlock]\n\t\tstartWith:start]\n\t\ttakeLast:1]\n\t\tsetNameWithFormat:@\"[%@] -aggregateWithStart: %@ reduceWithIndex:\", self.name, RACDescription(start)];\n}\n\n- (RACDisposable *)setKeyPath:(NSString *)keyPath onObject:(NSObject *)object {\n\treturn [self setKeyPath:keyPath onObject:object nilValue:nil];\n}\n\n- (RACDisposable *)setKeyPath:(NSString *)keyPath onObject:(NSObject *)object nilValue:(id)nilValue {\n\tNSCParameterAssert(keyPath != nil);\n\tNSCParameterAssert(object != nil);\n\n\tkeyPath = [keyPath copy];\n\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t// Purposely not retaining 'object', since we want to tear down the binding\n\t// when it deallocates normally.\n\t__block void * volatile objectPtr = (__bridge void *)object;\n\n\tRACDisposable *subscriptionDisposable = [self subscribeNext:^(id x) {\n\t\t// Possibly spec, possibly compiler bug, but this __bridge cast does not\n\t\t// result in a retain here, effectively an invisible __unsafe_unretained\n\t\t// qualifier. Using objc_precise_lifetime gives the __strong reference\n\t\t// desired. The explicit use of __strong is strictly defensive.\n\t\t__strong NSObject *object __attribute__((objc_precise_lifetime)) = (__bridge __strong id)objectPtr;\n\t\t[object setValue:x ?: nilValue forKeyPath:keyPath];\n\t} error:^(NSError *error) {\n\t\t__strong NSObject *object __attribute__((objc_precise_lifetime)) = (__bridge __strong id)objectPtr;\n\n\t\tNSCAssert(NO, @\"Received error from %@ in binding for key path \\\"%@\\\" on %@: %@\", self, keyPath, object, error);\n\n\t\t// Log the error if we're running with assertions disabled.\n\t\tNSLog(@\"Received error from %@ in binding for key path \\\"%@\\\" on %@: %@\", self, keyPath, object, error);\n\n\t\t[disposable dispose];\n\t} completed:^{\n\t\t[disposable dispose];\n\t}];\n\n\t[disposable addDisposable:subscriptionDisposable];\n\n\t#if DEBUG\n\tstatic void *bindingsKey = &bindingsKey;\n\tNSMutableDictionary *bindings;\n\n\t@synchronized (object) {\n\t\tbindings = objc_getAssociatedObject(object, bindingsKey);\n\t\tif (bindings == nil) {\n\t\t\tbindings = [NSMutableDictionary dictionary];\n\t\t\tobjc_setAssociatedObject(object, bindingsKey, bindings, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t\t}\n\t}\n\n\t@synchronized (bindings) {\n\t\tNSCAssert(bindings[keyPath] == nil, @\"Signal %@ is already bound to key path \\\"%@\\\" on object %@, adding signal %@ is undefined behavior\", [bindings[keyPath] nonretainedObjectValue], keyPath, object, self);\n\n\t\tbindings[keyPath] = [NSValue valueWithNonretainedObject:self];\n\t}\n\t#endif\n\n\tRACDisposable *clearPointerDisposable = [RACDisposable disposableWithBlock:^{\n\t\t#if DEBUG\n\t\t@synchronized (bindings) {\n\t\t\t[bindings removeObjectForKey:keyPath];\n\t\t}\n\t\t#endif\n\n\t\twhile (YES) {\n\t\t\tvoid *ptr = objectPtr;\n\t\t\tif (OSAtomicCompareAndSwapPtrBarrier(ptr, NULL, &objectPtr)) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}];\n\n\t[disposable addDisposable:clearPointerDisposable];\n\n\t[object.rac_deallocDisposable addDisposable:disposable];\n\n\tRACCompoundDisposable *objectDisposable = object.rac_deallocDisposable;\n\treturn [RACDisposable disposableWithBlock:^{\n\t\t[objectDisposable removeDisposable:disposable];\n\t\t[disposable dispose];\n\t}];\n}\n\n+ (RACSignal *)interval:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler {\n\treturn [[RACSignal interval:interval onScheduler:scheduler withLeeway:0.0] setNameWithFormat:@\"+interval: %f onScheduler: %@\", (double)interval, scheduler];\n}\n\n+ (RACSignal *)interval:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler withLeeway:(NSTimeInterval)leeway {\n\tNSCParameterAssert(scheduler != nil);\n\tNSCParameterAssert(scheduler != RACScheduler.immediateScheduler);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [scheduler after:[NSDate dateWithTimeIntervalSinceNow:interval] repeatingEvery:interval withLeeway:leeway schedule:^{\n\t\t\t[subscriber sendNext:[NSDate date]];\n\t\t}];\n\t}] setNameWithFormat:@\"+interval: %f onScheduler: %@ withLeeway: %f\", (double)interval, scheduler, (double)leeway];\n}\n\n- (RACSignal *)takeUntil:(RACSignal *)signalTrigger {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\t\tvoid (^triggerCompletion)(void) = ^{\n\t\t\t[disposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t};\n\n\t\tRACDisposable *triggerDisposable = [signalTrigger subscribeNext:^(id _) {\n\t\t\ttriggerCompletion();\n\t\t} completed:^{\n\t\t\ttriggerCompletion();\n\t\t}];\n\n\t\t[disposable addDisposable:triggerDisposable];\n\n\t\tif (!disposable.disposed) {\n\t\t\tRACDisposable *selfDisposable = [self subscribeNext:^(id x) {\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t} error:^(NSError *error) {\n\t\t\t\t[subscriber sendError:error];\n\t\t\t} completed:^{\n\t\t\t\t[disposable dispose];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}];\n\n\t\t\t[disposable addDisposable:selfDisposable];\n\t\t}\n\n\t\treturn disposable;\n\t}] setNameWithFormat:@\"[%@] -takeUntil: %@\", self.name, signalTrigger];\n}\n\n- (RACSignal *)takeUntilReplacement:(RACSignal *)replacement {\n\treturn [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACSerialDisposable *selfDisposable = [[RACSerialDisposable alloc] init];\n\n\t\tRACDisposable *replacementDisposable = [replacement subscribeNext:^(id x) {\n\t\t\t[selfDisposable dispose];\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\t[selfDisposable dispose];\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[selfDisposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\tif (!selfDisposable.disposed) {\n\t\t\tselfDisposable.disposable = [[self\n\t\t\t\tconcat:[RACSignal never]]\n\t\t\t\tsubscribe:subscriber];\n\t\t}\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[selfDisposable dispose];\n\t\t\t[replacementDisposable dispose];\n\t\t}];\n\t}];\n}\n\n- (RACSignal *)switchToLatest {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACMulticastConnection *connection = [self publish];\n\n\t\tRACDisposable *subscriptionDisposable = [[connection.signal\n\t\t\tflattenMap:^(RACSignal *x) {\n\t\t\t\tNSCAssert(x == nil || [x isKindOfClass:RACSignal.class], @\"-switchToLatest requires that the source signal (%@) send signals. Instead we got: %@\", self, x);\n\n\t\t\t\t// -concat:[RACSignal never] prevents completion of the receiver from\n\t\t\t\t// prematurely terminating the inner signal.\n\t\t\t\treturn [x takeUntil:[connection.signal concat:[RACSignal never]]];\n\t\t\t}]\n\t\t\tsubscribe:subscriber];\n\n\t\tRACDisposable *connectionDisposable = [connection connect];\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[subscriptionDisposable dispose];\n\t\t\t[connectionDisposable dispose];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -switchToLatest\", self.name];\n}\n\n+ (RACSignal *)switch:(RACSignal *)signal cases:(NSDictionary *)cases default:(RACSignal *)defaultSignal {\n\tNSCParameterAssert(signal != nil);\n\tNSCParameterAssert(cases != nil);\n\n\tfor (id key in cases) {\n\t\tid value __attribute__((unused)) = cases[key];\n\t\tNSCAssert([value isKindOfClass:RACSignal.class], @\"Expected all cases to be RACSignals, %@ isn't\", value);\n\t}\n\n\tNSDictionary *copy = [cases copy];\n\n\treturn [[[signal\n\t\tmap:^(id key) {\n\t\t\tif (key == nil) key = RACTupleNil.tupleNil;\n\n\t\t\tRACSignal *signal = copy[key] ?: defaultSignal;\n\t\t\tif (signal == nil) {\n\t\t\t\tNSString *description = [NSString stringWithFormat:NSLocalizedString(@\"No matching signal found for value %@\", @\"\"), key];\n\t\t\t\treturn [RACSignal error:[NSError errorWithDomain:RACSignalErrorDomain code:RACSignalErrorNoMatchingCase userInfo:@{ NSLocalizedDescriptionKey: description }]];\n\t\t\t}\n\n\t\t\treturn signal;\n\t\t}]\n\t\tswitchToLatest]\n\t\tsetNameWithFormat:@\"+switch: %@ cases: %@ default: %@\", signal, cases, defaultSignal];\n}\n\n+ (RACSignal *)if:(RACSignal *)boolSignal then:(RACSignal *)trueSignal else:(RACSignal *)falseSignal {\n\tNSCParameterAssert(boolSignal != nil);\n\tNSCParameterAssert(trueSignal != nil);\n\tNSCParameterAssert(falseSignal != nil);\n\n\treturn [[[boolSignal\n\t\tmap:^(NSNumber *value) {\n\t\t\tNSCAssert([value isKindOfClass:NSNumber.class], @\"Expected %@ to send BOOLs, not %@\", boolSignal, value);\n\n\t\t\treturn (value.boolValue ? trueSignal : falseSignal);\n\t\t}]\n\t\tswitchToLatest]\n\t\tsetNameWithFormat:@\"+if: %@ then: %@ else: %@\", boolSignal, trueSignal, falseSignal];\n}\n\n- (id)first {\n\treturn [self firstOrDefault:nil];\n}\n\n- (id)firstOrDefault:(id)defaultValue {\n\treturn [self firstOrDefault:defaultValue success:NULL error:NULL];\n}\n\n- (id)firstOrDefault:(id)defaultValue success:(BOOL *)success error:(NSError **)error {\n\tNSCondition *condition = [[NSCondition alloc] init];\n\tcondition.name = [NSString stringWithFormat:@\"[%@] -firstOrDefault: %@ success:error:\", self.name, defaultValue];\n\n\t__block id value = defaultValue;\n\t__block BOOL done = NO;\n\n\t// Ensures that we don't pass values across thread boundaries by reference.\n\t__block NSError *localError;\n\t__block BOOL localSuccess;\n\n\t[[self take:1] subscribeNext:^(id x) {\n\t\t[condition lock];\n\n\t\tvalue = x;\n\t\tlocalSuccess = YES;\n\n\t\tdone = YES;\n\t\t[condition broadcast];\n\t\t[condition unlock];\n\t} error:^(NSError *e) {\n\t\t[condition lock];\n\n\t\tif (!done) {\n\t\t\tlocalSuccess = NO;\n\t\t\tlocalError = e;\n\n\t\t\tdone = YES;\n\t\t\t[condition broadcast];\n\t\t}\n\n\t\t[condition unlock];\n\t} completed:^{\n\t\t[condition lock];\n\n\t\tlocalSuccess = YES;\n\n\t\tdone = YES;\n\t\t[condition broadcast];\n\t\t[condition unlock];\n\t}];\n\n\t[condition lock];\n\twhile (!done) {\n\t\t[condition wait];\n\t}\n\n\tif (success != NULL) *success = localSuccess;\n\tif (error != NULL) *error = localError;\n\n\t[condition unlock];\n\treturn value;\n}\n\n- (BOOL)waitUntilCompleted:(NSError **)error {\n\tBOOL success = NO;\n\n\t[[[self\n\t\tignoreValues]\n\t\tsetNameWithFormat:@\"[%@] -waitUntilCompleted:\", self.name]\n\t\tfirstOrDefault:nil success:&success error:error];\n\n\treturn success;\n}\n\n+ (RACSignal *)defer:(RACSignal * (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [block() subscribe:subscriber];\n\t}] setNameWithFormat:@\"+defer:\"];\n}\n\n- (NSArray *)toArray {\n\treturn [[[self collect] first] copy];\n}\n\n- (RACSequence *)sequence {\n\treturn [[RACSignalSequence sequenceWithSignal:self] setNameWithFormat:@\"[%@] -sequence\", self.name];\n}\n\n- (RACMulticastConnection *)publish {\n\tRACSubject *subject = [[RACSubject subject] setNameWithFormat:@\"[%@] -publish\", self.name];\n\tRACMulticastConnection *connection = [self multicast:subject];\n\treturn connection;\n}\n\n- (RACMulticastConnection *)multicast:(RACSubject *)subject {\n\t[subject setNameWithFormat:@\"[%@] -multicast: %@\", self.name, subject.name];\n\tRACMulticastConnection *connection = [[RACMulticastConnection alloc] initWithSourceSignal:self subject:subject];\n\treturn connection;\n}\n\n- (RACSignal *)replay {\n\tRACReplaySubject *subject = [[RACReplaySubject subject] setNameWithFormat:@\"[%@] -replay\", self.name];\n\n\tRACMulticastConnection *connection = [self multicast:subject];\n\t[connection connect];\n\n\treturn connection.signal;\n}\n\n- (RACSignal *)replayLast {\n\tRACReplaySubject *subject = [[RACReplaySubject replaySubjectWithCapacity:1] setNameWithFormat:@\"[%@] -replayLast\", self.name];\n\n\tRACMulticastConnection *connection = [self multicast:subject];\n\t[connection connect];\n\n\treturn connection.signal;\n}\n\n- (RACSignal *)replayLazily {\n\tRACMulticastConnection *connection = [self multicast:[RACReplaySubject subject]];\n\treturn [[RACSignal\n\t\tdefer:^{\n\t\t\t[connection connect];\n\t\t\treturn connection.signal;\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -replayLazily\", self.name];\n}\n\n- (RACSignal *)timeout:(NSTimeInterval)interval onScheduler:(RACScheduler *)scheduler {\n\tNSCParameterAssert(scheduler != nil);\n\tNSCParameterAssert(scheduler != RACScheduler.immediateScheduler);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t\tRACDisposable *timeoutDisposable = [scheduler afterDelay:interval schedule:^{\n\t\t\t[disposable dispose];\n\t\t\t[subscriber sendError:[NSError errorWithDomain:RACSignalErrorDomain code:RACSignalErrorTimedOut userInfo:nil]];\n\t\t}];\n\n\t\t[disposable addDisposable:timeoutDisposable];\n\n\t\tRACDisposable *subscriptionDisposable = [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\t[disposable dispose];\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[disposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\t[disposable addDisposable:subscriptionDisposable];\n\t\treturn disposable;\n\t}] setNameWithFormat:@\"[%@] -timeout: %f onScheduler: %@\", self.name, (double)interval, scheduler];\n}\n\n- (RACSignal *)deliverOn:(RACScheduler *)scheduler {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\t[scheduler schedule:^{\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t}];\n\t\t} error:^(NSError *error) {\n\t\t\t[scheduler schedule:^{\n\t\t\t\t[subscriber sendError:error];\n\t\t\t}];\n\t\t} completed:^{\n\t\t\t[scheduler schedule:^{\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -deliverOn: %@\", self.name, scheduler];\n}\n\n- (RACSignal *)subscribeOn:(RACScheduler *)scheduler {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\n\t\tRACDisposable *schedulingDisposable = [scheduler schedule:^{\n\t\t\tRACDisposable *subscriptionDisposable = [self subscribe:subscriber];\n\n\t\t\t[disposable addDisposable:subscriptionDisposable];\n\t\t}];\n\n\t\t[disposable addDisposable:schedulingDisposable];\n\t\treturn disposable;\n\t}] setNameWithFormat:@\"[%@] -subscribeOn: %@\", self.name, scheduler];\n}\n\n- (RACSignal *)deliverOnMainThread {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t__block volatile int32_t queueLength = 0;\n\t\t\n\t\tvoid (^performOnMainThread)(dispatch_block_t) = ^(dispatch_block_t block) {\n\t\t\tint32_t queued = OSAtomicIncrement32(&queueLength);\n\t\t\tif (NSThread.isMainThread && queued == 1) {\n\t\t\t\tblock();\n\t\t\t\tOSAtomicDecrement32(&queueLength);\n\t\t\t} else {\n\t\t\t\tdispatch_async(dispatch_get_main_queue(), ^{\n\t\t\t\t\tblock();\n\t\t\t\t\tOSAtomicDecrement32(&queueLength);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\tperformOnMainThread(^{\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t});\n\t\t} error:^(NSError *error) {\n\t\t\tperformOnMainThread(^{\n\t\t\t\t[subscriber sendError:error];\n\t\t\t});\n\t\t} completed:^{\n\t\t\tperformOnMainThread(^{\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t});\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -deliverOnMainThread\", self.name];\n}\n\n- (RACSignal *)groupBy:(id<NSCopying> (^)(id object))keyBlock transform:(id (^)(id object))transformBlock {\n\tNSCParameterAssert(keyBlock != NULL);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tNSMutableDictionary *groups = [NSMutableDictionary dictionary];\n\t\tNSMutableArray *orderedGroups = [NSMutableArray array];\n\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\tid<NSCopying> key = keyBlock(x);\n\t\t\tRACGroupedSignal *groupSubject = nil;\n\t\t\t@synchronized(groups) {\n\t\t\t\tgroupSubject = groups[key];\n\t\t\t\tif (groupSubject == nil) {\n\t\t\t\t\tgroupSubject = [RACGroupedSignal signalWithKey:key];\n\t\t\t\t\tgroups[key] = groupSubject;\n\t\t\t\t\t[orderedGroups addObject:groupSubject];\n\t\t\t\t\t[subscriber sendNext:groupSubject];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t[groupSubject sendNext:transformBlock != NULL ? transformBlock(x) : x];\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\n\t\t\t[orderedGroups makeObjectsPerformSelector:@selector(sendError:) withObject:error];\n\t\t} completed:^{\n\t\t\t[subscriber sendCompleted];\n\n\t\t\t[orderedGroups makeObjectsPerformSelector:@selector(sendCompleted)];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -groupBy:transform:\", self.name];\n}\n\n- (RACSignal *)groupBy:(id<NSCopying> (^)(id object))keyBlock {\n\treturn [[self groupBy:keyBlock transform:nil] setNameWithFormat:@\"[%@] -groupBy:\", self.name];\n}\n\n- (RACSignal *)any {\n\treturn [[self any:^(id x) {\n\t\treturn YES;\n\t}] setNameWithFormat:@\"[%@] -any\", self.name];\n}\n\n- (RACSignal *)any:(BOOL (^)(id object))predicateBlock {\n\tNSCParameterAssert(predicateBlock != NULL);\n\n\treturn [[[self materialize] bind:^{\n\t\treturn ^(RACEvent *event, BOOL *stop) {\n\t\t\tif (event.finished) {\n\t\t\t\t*stop = YES;\n\t\t\t\treturn [RACSignal return:@NO];\n\t\t\t}\n\n\t\t\tif (predicateBlock(event.value)) {\n\t\t\t\t*stop = YES;\n\t\t\t\treturn [RACSignal return:@YES];\n\t\t\t}\n\n\t\t\treturn [RACSignal empty];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -any:\", self.name];\n}\n\n- (RACSignal *)all:(BOOL (^)(id object))predicateBlock {\n\tNSCParameterAssert(predicateBlock != NULL);\n\n\treturn [[[self materialize] bind:^{\n\t\treturn ^(RACEvent *event, BOOL *stop) {\n\t\t\tif (event.eventType == RACEventTypeCompleted) {\n\t\t\t\t*stop = YES;\n\t\t\t\treturn [RACSignal return:@YES];\n\t\t\t}\n\n\t\t\tif (event.eventType == RACEventTypeError || !predicateBlock(event.value)) {\n\t\t\t\t*stop = YES;\n\t\t\t\treturn [RACSignal return:@NO];\n\t\t\t}\n\n\t\t\treturn [RACSignal empty];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -all:\", self.name];\n}\n\n- (RACSignal *)retry:(NSInteger)retryCount {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t__block NSInteger currentRetryCount = 0;\n\t\treturn subscribeForever(self,\n\t\t\t^(id x) {\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t},\n\t\t\t^(NSError *error, RACDisposable *disposable) {\n\t\t\t\tif (retryCount == 0 || currentRetryCount < retryCount) {\n\t\t\t\t\t// Resubscribe.\n\t\t\t\t\tcurrentRetryCount++;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t[disposable dispose];\n\t\t\t\t[subscriber sendError:error];\n\t\t\t},\n\t\t\t^(RACDisposable *disposable) {\n\t\t\t\t[disposable dispose];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t});\n\t}] setNameWithFormat:@\"[%@] -retry: %lu\", self.name, (unsigned long)retryCount];\n}\n\n- (RACSignal *)retry {\n\treturn [[self retry:0] setNameWithFormat:@\"[%@] -retry\", self.name];\n}\n\n- (RACSignal *)sample:(RACSignal *)sampler {\n\tNSCParameterAssert(sampler != nil);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tNSLock *lock = [[NSLock alloc] init];\n\t\t__block id lastValue;\n\t\t__block BOOL hasValue = NO;\n\n\t\tRACSerialDisposable *samplerDisposable = [[RACSerialDisposable alloc] init];\n\t\tRACDisposable *sourceDisposable = [self subscribeNext:^(id x) {\n\t\t\t[lock lock];\n\t\t\thasValue = YES;\n\t\t\tlastValue = x;\n\t\t\t[lock unlock];\n\t\t} error:^(NSError *error) {\n\t\t\t[samplerDisposable dispose];\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[samplerDisposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\tsamplerDisposable.disposable = [sampler subscribeNext:^(id _) {\n\t\t\tBOOL shouldSend = NO;\n\t\t\tid value;\n\t\t\t[lock lock];\n\t\t\tshouldSend = hasValue;\n\t\t\tvalue = lastValue;\n\t\t\t[lock unlock];\n\n\t\t\tif (shouldSend) {\n\t\t\t\t[subscriber sendNext:value];\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[sourceDisposable dispose];\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t[sourceDisposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[samplerDisposable dispose];\n\t\t\t[sourceDisposable dispose];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -sample: %@\", self.name, sampler];\n}\n\n- (RACSignal *)ignoreValues {\n\treturn [[self filter:^(id _) {\n\t\treturn NO;\n\t}] setNameWithFormat:@\"[%@] -ignoreValues\", self.name];\n}\n\n- (RACSignal *)materialize {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\treturn [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:x]];\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendNext:[RACEvent eventWithError:error]];\n\t\t\t[subscriber sendCompleted];\n\t\t} completed:^{\n\t\t\t[subscriber sendNext:RACEvent.completedEvent];\n\t\t\t[subscriber sendCompleted];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -materialize\", self.name];\n}\n\n- (RACSignal *)dematerialize {\n\treturn [[self bind:^{\n\t\treturn ^(RACEvent *event, BOOL *stop) {\n\t\t\tswitch (event.eventType) {\n\t\t\t\tcase RACEventTypeCompleted:\n\t\t\t\t\t*stop = YES;\n\t\t\t\t\treturn [RACSignal empty];\n\n\t\t\t\tcase RACEventTypeError:\n\t\t\t\t\t*stop = YES;\n\t\t\t\t\treturn [RACSignal error:event.error];\n\n\t\t\t\tcase RACEventTypeNext:\n\t\t\t\t\treturn [RACSignal return:event.value];\n\t\t\t}\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -dematerialize\", self.name];\n}\n\n- (RACSignal *)not {\n\treturn [[self map:^(NSNumber *value) {\n\t\tNSCAssert([value isKindOfClass:NSNumber.class], @\"-not must only be used on a signal of NSNumbers. Instead, got: %@\", value);\n\n\t\treturn @(!value.boolValue);\n\t}] setNameWithFormat:@\"[%@] -not\", self.name];\n}\n\n- (RACSignal *)and {\n\treturn [[self map:^(RACTuple *tuple) {\n\t\tNSCAssert([tuple isKindOfClass:RACTuple.class], @\"-and must only be used on a signal of RACTuples of NSNumbers. Instead, received: %@\", tuple);\n\t\tNSCAssert(tuple.count > 0, @\"-and must only be used on a signal of RACTuples of NSNumbers, with at least 1 value in the tuple\");\n\n\t\treturn @([tuple.rac_sequence all:^(NSNumber *number) {\n\t\t\tNSCAssert([number isKindOfClass:NSNumber.class], @\"-and must only be used on a signal of RACTuples of NSNumbers. Instead, tuple contains a non-NSNumber value: %@\", tuple);\n\n\t\t\treturn number.boolValue;\n\t\t}]);\n\t}] setNameWithFormat:@\"[%@] -and\", self.name];\n}\n\n- (RACSignal *)or {\n\treturn [[self map:^(RACTuple *tuple) {\n\t\tNSCAssert([tuple isKindOfClass:RACTuple.class], @\"-or must only be used on a signal of RACTuples of NSNumbers. Instead, received: %@\", tuple);\n\t\tNSCAssert(tuple.count > 0, @\"-or must only be used on a signal of RACTuples of NSNumbers, with at least 1 value in the tuple\");\n\n\t\treturn @([tuple.rac_sequence any:^(NSNumber *number) {\n\t\t\tNSCAssert([number isKindOfClass:NSNumber.class], @\"-or must only be used on a signal of RACTuples of NSNumbers. Instead, tuple contains a non-NSNumber value: %@\", tuple);\n\n\t\t\treturn number.boolValue;\n\t\t}]);\n\t}] setNameWithFormat:@\"[%@] -or\", self.name];\n}\n\n- (RACSignal *)reduceApply {\n\treturn [[self map:^(RACTuple *tuple) {\n\t\tNSCAssert([tuple isKindOfClass:RACTuple.class], @\"-reduceApply must only be used on a signal of RACTuples. Instead, received: %@\", tuple);\n\t\tNSCAssert(tuple.count > 1, @\"-reduceApply must only be used on a signal of RACTuples, with at least a block in tuple[0] and its first argument in tuple[1]\");\n\n\t\t// We can't use -array, because we need to preserve RACTupleNil\n\t\tNSMutableArray *tupleArray = [NSMutableArray arrayWithCapacity:tuple.count];\n\t\tfor (id val in tuple) {\n\t\t\t[tupleArray addObject:val];\n\t\t}\n\t\tRACTuple *arguments = [RACTuple tupleWithObjectsFromArray:[tupleArray subarrayWithRange:NSMakeRange(1, tupleArray.count - 1)]];\n\n\t\treturn [RACBlockTrampoline invokeBlock:tuple[0] withArguments:arguments];\n\t}] setNameWithFormat:@\"[%@] -reduceApply\", self.name];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignal.h",
    "content": "//\n//  RACSignal.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/1/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"RACStream.h\"\n\n@class RACDisposable;\n@class RACScheduler;\n@class RACSubject;\n@protocol RACSubscriber;\n\n@interface RACSignal : RACStream\n\n/// Creates a new signal. This is the preferred way to create a new signal\n/// operation or behavior.\n///\n/// Events can be sent to new subscribers immediately in the `didSubscribe`\n/// block, but the subscriber will not be able to dispose of the signal until\n/// a RACDisposable is returned from `didSubscribe`. In the case of infinite\n/// signals, this won't _ever_ happen if events are sent immediately.\n///\n/// To ensure that the signal is disposable, events can be scheduled on the\n/// +[RACScheduler currentScheduler] (so that they're deferred, not sent\n/// immediately), or they can be sent in the background. The RACDisposable\n/// returned by the `didSubscribe` block should cancel any such scheduling or\n/// asynchronous work.\n///\n/// didSubscribe - Called when the signal is subscribed to. The new subscriber is\n///                passed in. You can then manually control the <RACSubscriber> by\n///                sending it -sendNext:, -sendError:, and -sendCompleted,\n///                as defined by the operation you're implementing. This block\n///                should return a RACDisposable which cancels any ongoing work\n///                triggered by the subscription, and cleans up any resources or\n///                disposables created as part of it. When the disposable is\n///                disposed of, the signal must not send any more events to the\n///                `subscriber`. If no cleanup is necessary, return nil.\n///\n/// **Note:** The `didSubscribe` block is called every time a new subscriber\n/// subscribes. Any side effects within the block will thus execute once for each\n/// subscription, not necessarily on one thread, and possibly even\n/// simultaneously!\n+ (RACSignal *)createSignal:(RACDisposable * (^)(id<RACSubscriber> subscriber))didSubscribe;\n\n/// Returns a signal that immediately sends the given error.\n+ (RACSignal *)error:(NSError *)error;\n\n/// Returns a signal that never completes.\n+ (RACSignal *)never;\n\n/// Immediately schedules the given block on the given scheduler. The block is\n/// given a subscriber to which it can send events.\n///\n/// scheduler - The scheduler on which `block` will be scheduled and results\n///             delivered. Cannot be nil.\n/// block     - The block to invoke. Cannot be NULL.\n///\n/// Returns a signal which will send all events sent on the subscriber given to\n/// `block`. All events will be sent on `scheduler` and it will replay any missed\n/// events to new subscribers.\n+ (RACSignal *)startEagerlyWithScheduler:(RACScheduler *)scheduler block:(void (^)(id<RACSubscriber> subscriber))block;\n\n/// Invokes the given block only on the first subscription. The block is given a\n/// subscriber to which it can send events.\n///\n/// Note that disposing of the subscription to the returned signal will *not*\n/// dispose of the underlying subscription. If you need that behavior, see\n/// -[RACMulticastConnection autoconnect]. The underlying subscription will never\n/// be disposed of. Because of this, `block` should never return an infinite\n/// signal since there would be no way of ending it.\n///\n/// scheduler - The scheduler on which the block should be scheduled. Note that \n///             if given +[RACScheduler immediateScheduler], the block will be\n///             invoked synchronously on the first subscription. Cannot be nil.\n/// block     - The block to invoke on the first subscription. Cannot be NULL.\n///\n/// Returns a signal which will pass through the events sent to the subscriber\n/// given to `block` and replay any missed events to new subscribers.\n+ (RACSignal *)startLazilyWithScheduler:(RACScheduler *)scheduler block:(void (^)(id<RACSubscriber> subscriber))block;\n\n@end\n\n@interface RACSignal (RACStream)\n\n/// Returns a signal that immediately sends the given value and then completes.\n+ (RACSignal *)return:(id)value;\n\n/// Returns a signal that immediately completes.\n+ (RACSignal *)empty;\n\n/// Subscribes to `signal` when the source signal completes.\n- (RACSignal *)concat:(RACSignal *)signal;\n\n/// Zips the values in the receiver with those of the given signal to create\n/// RACTuples.\n///\n/// The first `next` of each stream will be combined, then the second `next`, and\n/// so forth, until either signal completes or errors.\n///\n/// signal - The signal to zip with. This must not be `nil`.\n///\n/// Returns a new signal of RACTuples, representing the combined values of the\n/// two signals. Any error from one of the original signals will be forwarded on\n/// the returned signal.\n- (RACSignal *)zipWith:(RACSignal *)signal;\n\n@end\n\n@interface RACSignal (Subscription)\n\n/// Subscribes `subscriber` to changes on the receiver. The receiver defines which\n/// events it actually sends and in what situations the events are sent.\n///\n/// Subscription will always happen on a valid RACScheduler. If the\n/// +[RACScheduler currentScheduler] cannot be determined at the time of\n/// subscription (e.g., because the calling code is running on a GCD queue or\n/// NSOperationQueue), subscription will occur on a private background scheduler.\n/// On the main thread, subscriptions will always occur immediately, with a\n/// +[RACScheduler currentScheduler] of +[RACScheduler mainThreadScheduler].\n///\n/// This method must be overridden by any subclasses.\n///\n/// Returns nil or a disposable. You can call -[RACDisposable dispose] if you\n/// need to end your subscription before it would \"naturally\" end, either by\n/// completing or erroring. Once the disposable has been disposed, the subscriber\n/// won't receive any more events from the subscription.\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber;\n\n/// Convenience method to subscribe to the `next` event.\n///\n/// This corresponds to `IObserver<T>.OnNext` in Rx.\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock;\n\n/// Convenience method to subscribe to the `next` and `completed` events.\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock completed:(void (^)(void))completedBlock;\n\n/// Convenience method to subscribe to the `next`, `completed`, and `error` events.\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock error:(void (^)(NSError *error))errorBlock completed:(void (^)(void))completedBlock;\n\n/// Convenience method to subscribe to `error` events.\n///\n/// This corresponds to the `IObserver<T>.OnError` in Rx.\n- (RACDisposable *)subscribeError:(void (^)(NSError *error))errorBlock;\n\n/// Convenience method to subscribe to `completed` events.\n///\n/// This corresponds to the `IObserver<T>.OnCompleted` in Rx.\n- (RACDisposable *)subscribeCompleted:(void (^)(void))completedBlock;\n\n/// Convenience method to subscribe to `next` and `error` events.\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock error:(void (^)(NSError *error))errorBlock;\n\n/// Convenience method to subscribe to `error` and `completed` events.\n- (RACDisposable *)subscribeError:(void (^)(NSError *error))errorBlock completed:(void (^)(void))completedBlock;\n\n@end\n\n/// Additional methods to assist with debugging.\n@interface RACSignal (Debugging)\n\n/// Logs all events that the receiver sends.\n- (RACSignal *)logAll;\n\n/// Logs each `next` that the receiver sends.\n- (RACSignal *)logNext;\n\n/// Logs any error that the receiver sends.\n- (RACSignal *)logError;\n\n/// Logs any `completed` event that the receiver sends.\n- (RACSignal *)logCompleted;\n\n@end\n\n/// Additional methods to assist with unit testing.\n///\n/// **These methods should never ship in production code.**\n@interface RACSignal (Testing)\n\n/// Spins the main run loop for a short while, waiting for the receiver to send a `next`.\n///\n/// **Because this method executes the run loop recursively, it should only be used\n/// on the main thread, and only from a unit test.**\n///\n/// defaultValue - Returned if the receiver completes or errors before sending\n///                a `next`, or if the method times out. This argument may be\n///                nil.\n/// success      - If not NULL, set to whether the receiver completed\n///                successfully.\n/// error        - If not NULL, set to any error that occurred.\n///\n/// Returns the first value received, or `defaultValue` if no value is received\n/// before the signal finishes or the method times out.\n- (id)asynchronousFirstOrDefault:(id)defaultValue success:(BOOL *)success error:(NSError **)error;\n\n/// Spins the main run loop for a short while, waiting for the receiver to complete.\n///\n/// **Because this method executes the run loop recursively, it should only be used\n/// on the main thread, and only from a unit test.**\n///\n/// error - If not NULL, set to any error that occurs.\n///\n/// Returns whether the signal completed successfully before timing out. If NO,\n/// `error` will be set to any error that occurred.\n- (BOOL)asynchronouslyWaitUntilCompleted:(NSError **)error;\n\n@end\n\n@interface RACSignal (Unavailable)\n\n+ (RACSignal *)start:(id (^)(BOOL *success, NSError **error))block __attribute__((unavailable(\"Use +startEagerlyWithScheduler:block: instead\")));\n+ (RACSignal *)startWithScheduler:(RACScheduler *)scheduler subjectBlock:(void (^)(RACSubject *subject))block __attribute__((unavailable(\"Use +startEagerlyWithScheduler:block: instead\")));\n+ (RACSignal *)startWithScheduler:(RACScheduler *)scheduler block:(id (^)(BOOL *success, NSError **error))block __attribute__((unavailable(\"Use +startEagerlyWithScheduler:block: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignal.m",
    "content": "//\n//  RACSignal.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/15/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACDynamicSignal.h\"\n#import \"RACEmptySignal.h\"\n#import \"RACErrorSignal.h\"\n#import \"RACMulticastConnection.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACReturnSignal.h\"\n#import \"RACScheduler.h\"\n#import \"RACSerialDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSubject.h\"\n#import \"RACSubscriber+Private.h\"\n#import \"RACTuple.h\"\n#import <libkern/OSAtomic.h>\n\n@implementation RACSignal\n\n#pragma mark Lifecycle\n\n+ (RACSignal *)createSignal:(RACDisposable * (^)(id<RACSubscriber> subscriber))didSubscribe {\n\treturn [RACDynamicSignal createSignal:didSubscribe];\n}\n\n+ (RACSignal *)error:(NSError *)error {\n\treturn [RACErrorSignal error:error];\n}\n\n+ (RACSignal *)never {\n\treturn [[self createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\treturn nil;\n\t}] setNameWithFormat:@\"+never\"];\n}\n\n+ (RACSignal *)startEagerlyWithScheduler:(RACScheduler *)scheduler block:(void (^)(id<RACSubscriber> subscriber))block {\n\tNSCParameterAssert(scheduler != nil);\n\tNSCParameterAssert(block != NULL);\n\n\tRACSignal *signal = [self startLazilyWithScheduler:scheduler block:block];\n\t// Subscribe to force the lazy signal to call its block.\n\t[[signal publish] connect];\n\treturn [signal setNameWithFormat:@\"+startEagerlyWithScheduler: %@ block:\", scheduler];\n}\n\n+ (RACSignal *)startLazilyWithScheduler:(RACScheduler *)scheduler block:(void (^)(id<RACSubscriber> subscriber))block {\n\tNSCParameterAssert(scheduler != nil);\n\tNSCParameterAssert(block != NULL);\n\n\tRACMulticastConnection *connection = [[RACSignal\n\t\tcreateSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\tblock(subscriber);\n\t\t\treturn nil;\n\t\t}]\n\t\tmulticast:[RACReplaySubject subject]];\n\t\n\treturn [[[RACSignal\n\t\tcreateSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[connection.signal subscribe:subscriber];\n\t\t\t[connection connect];\n\t\t\treturn nil;\n\t\t}]\n\t\tsubscribeOn:scheduler]\n\t\tsetNameWithFormat:@\"+startLazilyWithScheduler: %@ block:\", scheduler];\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p> name: %@\", self.class, self, self.name];\n}\n\n@end\n\n@implementation RACSignal (RACStream)\n\n+ (RACSignal *)empty {\n\treturn [RACEmptySignal empty];\n}\n\n+ (RACSignal *)return:(id)value {\n\treturn [RACReturnSignal return:value];\n}\n\n- (RACSignal *)bind:(RACStreamBindBlock (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\t/*\n\t * -bind: should:\n\t * \n\t * 1. Subscribe to the original signal of values.\n\t * 2. Any time the original signal sends a value, transform it using the binding block.\n\t * 3. If the binding block returns a signal, subscribe to it, and pass all of its values through to the subscriber as they're received.\n\t * 4. If the binding block asks the bind to terminate, complete the _original_ signal.\n\t * 5. When _all_ signals complete, send completed to the subscriber.\n\t * \n\t * If any signal sends an error at any point, send that to the subscriber.\n\t */\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACStreamBindBlock bindingBlock = block();\n\n\t\t__block volatile int32_t signalCount = 1;   // indicates self\n\n\t\tRACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n\t\tvoid (^completeSignal)(RACDisposable *) = ^(RACDisposable *finishedDisposable) {\n\t\t\tif (OSAtomicDecrement32Barrier(&signalCount) == 0) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\t[compoundDisposable dispose];\n\t\t\t} else {\n\t\t\t\t[compoundDisposable removeDisposable:finishedDisposable];\n\t\t\t}\n\t\t};\n\n\t\tvoid (^addSignal)(RACSignal *) = ^(RACSignal *signal) {\n\t\t\tOSAtomicIncrement32Barrier(&signalCount);\n\n\t\t\tRACSerialDisposable *selfDisposable = [[RACSerialDisposable alloc] init];\n\t\t\t[compoundDisposable addDisposable:selfDisposable];\n\n\t\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {\n\t\t\t\t[subscriber sendNext:x];\n\t\t\t} error:^(NSError *error) {\n\t\t\t\t[compoundDisposable dispose];\n\t\t\t\t[subscriber sendError:error];\n\t\t\t} completed:^{\n\t\t\t\t@autoreleasepool {\n\t\t\t\t\tcompleteSignal(selfDisposable);\n\t\t\t\t}\n\t\t\t}];\n\n\t\t\tselfDisposable.disposable = disposable;\n\t\t};\n\n\t\t@autoreleasepool {\n\t\t\tRACSerialDisposable *selfDisposable = [[RACSerialDisposable alloc] init];\n\t\t\t[compoundDisposable addDisposable:selfDisposable];\n\n\t\t\tRACDisposable *bindingDisposable = [self subscribeNext:^(id x) {\n\t\t\t\t// Manually check disposal to handle synchronous errors.\n\t\t\t\tif (compoundDisposable.disposed) return;\n\n\t\t\t\tBOOL stop = NO;\n\t\t\t\tid signal = bindingBlock(x, &stop);\n\n\t\t\t\t@autoreleasepool {\n\t\t\t\t\tif (signal != nil) addSignal(signal);\n\t\t\t\t\tif (signal == nil || stop) {\n\t\t\t\t\t\t[selfDisposable dispose];\n\t\t\t\t\t\tcompleteSignal(selfDisposable);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} error:^(NSError *error) {\n\t\t\t\t[compoundDisposable dispose];\n\t\t\t\t[subscriber sendError:error];\n\t\t\t} completed:^{\n\t\t\t\t@autoreleasepool {\n\t\t\t\t\tcompleteSignal(selfDisposable);\n\t\t\t\t}\n\t\t\t}];\n\n\t\t\tselfDisposable.disposable = bindingDisposable;\n\t\t}\n\n\t\treturn compoundDisposable;\n\t}] setNameWithFormat:@\"[%@] -bind:\", self.name];\n}\n\n- (RACSignal *)concat:(RACSignal *)signal {\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tRACCompoundDisposable *compoundDisposable = [[RACCompoundDisposable alloc] init];\n\n\t\tRACDisposable *sourceDisposable = [self subscribeNext:^(id x) {\n\t\t\t[subscriber sendNext:x];\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\tRACDisposable *concattedDisposable = [signal subscribe:subscriber];\n\t\t\t[compoundDisposable addDisposable:concattedDisposable];\n\t\t}];\n\n\t\t[compoundDisposable addDisposable:sourceDisposable];\n\t\treturn compoundDisposable;\n\t}] setNameWithFormat:@\"[%@] -concat: %@\", self.name, signal];\n}\n\n- (RACSignal *)zipWith:(RACSignal *)signal {\n\tNSCParameterAssert(signal != nil);\n\n\treturn [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t__block BOOL selfCompleted = NO;\n\t\tNSMutableArray *selfValues = [NSMutableArray array];\n\n\t\t__block BOOL otherCompleted = NO;\n\t\tNSMutableArray *otherValues = [NSMutableArray array];\n\n\t\tvoid (^sendCompletedIfNecessary)(void) = ^{\n\t\t\t@synchronized (selfValues) {\n\t\t\t\tBOOL selfEmpty = (selfCompleted && selfValues.count == 0);\n\t\t\t\tBOOL otherEmpty = (otherCompleted && otherValues.count == 0);\n\t\t\t\tif (selfEmpty || otherEmpty) [subscriber sendCompleted];\n\t\t\t}\n\t\t};\n\n\t\tvoid (^sendNext)(void) = ^{\n\t\t\t@synchronized (selfValues) {\n\t\t\t\tif (selfValues.count == 0) return;\n\t\t\t\tif (otherValues.count == 0) return;\n\n\t\t\t\tRACTuple *tuple = RACTuplePack(selfValues[0], otherValues[0]);\n\t\t\t\t[selfValues removeObjectAtIndex:0];\n\t\t\t\t[otherValues removeObjectAtIndex:0];\n\n\t\t\t\t[subscriber sendNext:tuple];\n\t\t\t\tsendCompletedIfNecessary();\n\t\t\t}\n\t\t};\n\n\t\tRACDisposable *selfDisposable = [self subscribeNext:^(id x) {\n\t\t\t@synchronized (selfValues) {\n\t\t\t\t[selfValues addObject:x ?: RACTupleNil.tupleNil];\n\t\t\t\tsendNext();\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t@synchronized (selfValues) {\n\t\t\t\tselfCompleted = YES;\n\t\t\t\tsendCompletedIfNecessary();\n\t\t\t}\n\t\t}];\n\n\t\tRACDisposable *otherDisposable = [signal subscribeNext:^(id x) {\n\t\t\t@synchronized (selfValues) {\n\t\t\t\t[otherValues addObject:x ?: RACTupleNil.tupleNil];\n\t\t\t\tsendNext();\n\t\t\t}\n\t\t} error:^(NSError *error) {\n\t\t\t[subscriber sendError:error];\n\t\t} completed:^{\n\t\t\t@synchronized (selfValues) {\n\t\t\t\totherCompleted = YES;\n\t\t\t\tsendCompletedIfNecessary();\n\t\t\t}\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t[selfDisposable dispose];\n\t\t\t[otherDisposable dispose];\n\t\t}];\n\t}] setNameWithFormat:@\"[%@] -zipWith: %@\", self.name, signal];\n}\n\n@end\n\n@implementation RACSignal (Subscription)\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCAssert(NO, @\"This method must be overridden by subclasses\");\n\treturn nil;\n}\n\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock {\n\tNSCParameterAssert(nextBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:nextBlock error:NULL completed:NULL];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock completed:(void (^)(void))completedBlock {\n\tNSCParameterAssert(nextBlock != NULL);\n\tNSCParameterAssert(completedBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:nextBlock error:NULL completed:completedBlock];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock error:(void (^)(NSError *error))errorBlock completed:(void (^)(void))completedBlock {\n\tNSCParameterAssert(nextBlock != NULL);\n\tNSCParameterAssert(errorBlock != NULL);\n\tNSCParameterAssert(completedBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:nextBlock error:errorBlock completed:completedBlock];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeError:(void (^)(NSError *error))errorBlock {\n\tNSCParameterAssert(errorBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:NULL error:errorBlock completed:NULL];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeCompleted:(void (^)(void))completedBlock {\n\tNSCParameterAssert(completedBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:NULL error:NULL completed:completedBlock];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeNext:(void (^)(id x))nextBlock error:(void (^)(NSError *error))errorBlock {\n\tNSCParameterAssert(nextBlock != NULL);\n\tNSCParameterAssert(errorBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:nextBlock error:errorBlock completed:NULL];\n\treturn [self subscribe:o];\n}\n\n- (RACDisposable *)subscribeError:(void (^)(NSError *))errorBlock completed:(void (^)(void))completedBlock {\n\tNSCParameterAssert(completedBlock != NULL);\n\tNSCParameterAssert(errorBlock != NULL);\n\t\n\tRACSubscriber *o = [RACSubscriber subscriberWithNext:NULL error:errorBlock completed:completedBlock];\n\treturn [self subscribe:o];\n}\n\n@end\n\n@implementation RACSignal (Debugging)\n\n- (RACSignal *)logAll {\n\treturn [[[self logNext] logError] logCompleted];\n}\n\n- (RACSignal *)logNext {\n\treturn [[self doNext:^(id x) {\n\t\tNSLog(@\"%@ next: %@\", self, x);\n\t}] setNameWithFormat:@\"%@\", self.name];\n}\n\n- (RACSignal *)logError {\n\treturn [[self doError:^(NSError *error) {\n\t\tNSLog(@\"%@ error: %@\", self, error);\n\t}] setNameWithFormat:@\"%@\", self.name];\n}\n\n- (RACSignal *)logCompleted {\n\treturn [[self doCompleted:^{\n\t\tNSLog(@\"%@ completed\", self);\n\t}] setNameWithFormat:@\"%@\", self.name];\n}\n\n@end\n\n@implementation RACSignal (Testing)\n\nstatic const NSTimeInterval RACSignalAsynchronousWaitTimeout = 10;\n\n- (id)asynchronousFirstOrDefault:(id)defaultValue success:(BOOL *)success error:(NSError **)error {\n\tNSCAssert([NSThread isMainThread], @\"%s should only be used from the main thread\", __func__);\n\n\t__block id result = defaultValue;\n\t__block BOOL done = NO;\n\n\t// Ensures that we don't pass values across thread boundaries by reference.\n\t__block NSError *localError;\n\t__block BOOL localSuccess = YES;\n\n\t[[[[self\n\t\ttake:1]\n\t\ttimeout:RACSignalAsynchronousWaitTimeout onScheduler:[RACScheduler scheduler]]\n\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\tsubscribeNext:^(id x) {\n\t\t\tresult = x;\n\t\t\tdone = YES;\n\t\t} error:^(NSError *e) {\n\t\t\tif (!done) {\n\t\t\t\tlocalSuccess = NO;\n\t\t\t\tlocalError = e;\n\t\t\t\tdone = YES;\n\t\t\t}\n\t\t} completed:^{\n\t\t\tdone = YES;\n\t\t}];\n\t\n\tdo {\n\t\t[NSRunLoop.mainRunLoop runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];\n\t} while (!done);\n\n\tif (success != NULL) *success = localSuccess;\n\tif (error != NULL) *error = localError;\n\n\treturn result;\n}\n\n- (BOOL)asynchronouslyWaitUntilCompleted:(NSError **)error {\n\tBOOL success = NO;\n\t[[self ignoreValues] asynchronousFirstOrDefault:nil success:&success error:error];\n\treturn success;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignalProvider.d",
    "content": "provider RACSignal {\n    probe next(char *signal, char *subscriber, char *valueDescription);\n    probe completed(char *signal, char *subscriber);\n    probe error(char *signal, char *subscriber, char *errorDescription);\n};\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignalSequence.h",
    "content": "//\n//  RACSignalSequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-09.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n@class RACSignal;\n\n// Private class that adapts a RACSignal to the RACSequence interface.\n@interface RACSignalSequence : RACSequence\n\n// Returns a sequence for enumerating over the given signal.\n+ (RACSequence *)sequenceWithSignal:(RACSignal *)signal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSignalSequence.m",
    "content": "//\n//  RACSignalSequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-09.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignalSequence.h\"\n#import \"RACDisposable.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACSignal+Operations.h\"\n\n@interface RACSignalSequence ()\n\n// Replays the signal given on initialization.\n@property (nonatomic, strong, readonly) RACReplaySubject *subject;\n\n@end\n\n@implementation RACSignalSequence\n\n#pragma mark Lifecycle\n\n+ (RACSequence *)sequenceWithSignal:(RACSignal *)signal {\n\tRACSignalSequence *seq = [[self alloc] init];\n\n\tRACReplaySubject *subject = [RACReplaySubject subject];\n\t[signal subscribeNext:^(id value) {\n\t\t[subject sendNext:value];\n\t} error:^(NSError *error) {\n\t\t[subject sendError:error];\n\t} completed:^{\n\t\t[subject sendCompleted];\n\t}];\n\n\tseq->_subject = subject;\n\treturn seq;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\tid value = [self.subject firstOrDefault:self];\n\n\tif (value == self) {\n\t\treturn nil;\n\t} else {\n\t\treturn value ?: NSNull.null;\n\t}\n}\n\n- (RACSequence *)tail {\n\tRACSequence *sequence = [self.class sequenceWithSignal:[self.subject skip:1]];\n\tsequence.name = self.name;\n\treturn sequence;\n}\n\n- (NSArray *)array {\n\treturn self.subject.toArray;\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\t// Synchronously accumulate the values that have been sent so far.\n\tNSMutableArray *values = [NSMutableArray array];\n\tRACDisposable *disposable = [self.subject subscribeNext:^(id value) {\n\t\t@synchronized (values) {\n\t\t\t[values addObject:value ?: NSNull.null];\n\t\t}\n\t}];\n\n\t[disposable dispose];\n\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, values = %@ … }\", self.class, self, self.name, values];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACStream+Private.h",
    "content": "//\n//  RACStream+Private.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACStream.h\"\n\n@interface RACStream ()\n\n// Combines a list of streams using the logic of the given block.\n//\n// streams - The streams to combine.\n// block   - An operator that combines two streams and returns a new one. The\n//           returned stream should contain 2-tuples of the streams' combined\n//           values.\n//\n// Returns a combined stream.\n+ (instancetype)join:(id<NSFastEnumeration>)streams block:(RACStream * (^)(id, id))block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACStream.h",
    "content": "//\n//  RACStream.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-31.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACStream;\n\n/// A block which accepts a value from a RACStream and returns a new instance\n/// of the same stream class.\n///\n/// Setting `stop` to `YES` will cause the bind to terminate after the returned\n/// value. Returning `nil` will result in immediate termination.\ntypedef RACStream * (^RACStreamBindBlock)(id value, BOOL *stop);\n\n/// An abstract class representing any stream of values.\n///\n/// This class represents a monad, upon which many stream-based operations can\n/// be built.\n///\n/// When subclassing RACStream, only the methods in the main @interface body need\n/// to be overridden.\n@interface RACStream : NSObject\n\n/// Returns an empty stream.\n+ (instancetype)empty;\n\n/// Lifts `value` into the stream monad.\n///\n/// Returns a stream containing only the given value.\n+ (instancetype)return:(id)value;\n\n/// Lazily binds a block to the values in the receiver.\n///\n/// This should only be used if you need to terminate the bind early, or close\n/// over some state. -flattenMap: is more appropriate for all other cases.\n///\n/// block - A block returning a RACStreamBindBlock. This block will be invoked\n///         each time the bound stream is re-evaluated. This block must not be\n///         nil or return nil.\n///\n/// Returns a new stream which represents the combined result of all lazy\n/// applications of `block`.\n- (instancetype)bind:(RACStreamBindBlock (^)(void))block;\n\n/// Appends the values of `stream` to the values in the receiver.\n///\n/// stream - A stream to concatenate. This must be an instance of the same\n///          concrete class as the receiver, and should not be `nil`.\n///\n/// Returns a new stream representing the receiver followed by `stream`.\n- (instancetype)concat:(RACStream *)stream;\n\n/// Zips the values in the receiver with those of the given stream to create\n/// RACTuples.\n///\n/// The first value of each stream will be combined, then the second value, and\n/// so forth, until at least one of the streams is exhausted.\n///\n/// stream - The stream to zip with. This must be an instance of the same\n///          concrete class as the receiver, and should not be `nil`.\n///\n/// Returns a new stream of RACTuples, representing the zipped values of the\n/// two streams.\n- (instancetype)zipWith:(RACStream *)stream;\n\n@end\n\n/// This extension contains functionality to support naming streams for\n/// debugging.\n///\n/// Subclasses do not need to override the methods here.\n@interface RACStream ()\n\n/// The name of the stream. This is for debugging/human purposes only.\n@property (copy) NSString *name;\n\n/// Sets the name of the receiver to the given format string.\n///\n/// This is for debugging purposes only, and won't do anything unless the\n/// RAC_DEBUG_SIGNAL_NAMES environment variable is set.\n///\n/// Returns the receiver, for easy method chaining.\n- (instancetype)setNameWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1, 2);\n\n@end\n\n/// Operations built on the RACStream primitives.\n///\n/// These methods do not need to be overridden, although subclasses may\n/// occasionally gain better performance from doing so.\n@interface RACStream (Operations)\n\n/// Maps `block` across the values in the receiver and flattens the result.\n///\n/// Note that operators applied _after_ -flattenMap: behave differently from\n/// operators _within_ -flattenMap:. See the Examples section below.\n///\n/// This corresponds to the `SelectMany` method in Rx.\n///\n/// block - A block which accepts the values in the receiver and returns a new\n///         instance of the receiver's class. Returning `nil` from this block is\n///         equivalent to returning an empty signal.\n///\n/// Examples\n///\n///   [signal flattenMap:^(id x) {\n///       // Logs each time a returned signal completes.\n///       return [[RACSignal return:x] logCompleted];\n///   }];\n///\n///   [[signal\n///       flattenMap:^(id x) {\n///           return [RACSignal return:x];\n///       }]\n///       // Logs only once, when all of the signals complete.\n///       logCompleted];\n///\n/// Returns a new stream which represents the combined streams resulting from\n/// mapping `block`.\n- (instancetype)flattenMap:(RACStream * (^)(id value))block;\n\n/// Flattens a stream of streams.\n///\n/// This corresponds to the `Merge` method in Rx.\n///\n/// Returns a stream consisting of the combined streams obtained from the\n/// receiver.\n- (instancetype)flatten;\n\n/// Maps `block` across the values in the receiver.\n///\n/// This corresponds to the `Select` method in Rx.\n///\n/// Returns a new stream with the mapped values.\n- (instancetype)map:(id (^)(id value))block;\n\n/// Replaces each value in the receiver with the given object.\n///\n/// Returns a new stream which includes the given object once for each value in\n/// the receiver.\n- (instancetype)mapReplace:(id)object;\n\n/// Filters out values in the receiver that don't pass the given test.\n///\n/// This corresponds to the `Where` method in Rx.\n///\n/// Returns a new stream with only those values that passed.\n- (instancetype)filter:(BOOL (^)(id value))block;\n\n/// Filters out values in the receiver that equal (via -isEqual:) the provided value.\n///\n/// value - The value can be `nil`, in which case it ignores `nil` values.\n///\n/// Returns a new stream containing only the values which did not compare equal\n/// to `value`.\n- (instancetype)ignore:(id)value;\n\n/// Unpacks each RACTuple in the receiver and maps the values to a new value.\n///\n/// reduceBlock - The block which reduces each RACTuple's values into one value.\n///               It must take as many arguments as the number of tuple elements\n///               to process. Each argument will be an object argument. The\n///               return value must be an object. This argument cannot be nil.\n///\n/// Returns a new stream of reduced tuple values.\n- (instancetype)reduceEach:(id (^)())reduceBlock;\n\n/// Returns a stream consisting of `value`, followed by the values in the\n/// receiver.\n- (instancetype)startWith:(id)value;\n\n/// Skips the first `skipCount` values in the receiver.\n///\n/// Returns the receiver after skipping the first `skipCount` values. If\n/// `skipCount` is greater than the number of values in the stream, an empty\n/// stream is returned.\n- (instancetype)skip:(NSUInteger)skipCount;\n\n/// Returns a stream of the first `count` values in the receiver. If `count` is\n/// greater than or equal to the number of values in the stream, a stream\n/// equivalent to the receiver is returned.\n- (instancetype)take:(NSUInteger)count;\n\n/// Zips the values in the given streams to create RACTuples.\n///\n/// The first value of each stream will be combined, then the second value, and\n/// so forth, until at least one of the streams is exhausted.\n///\n/// streams - The streams to combine. These must all be instances of the same\n///           concrete class implementing the protocol. If this collection is\n///           empty, the returned stream will be empty.\n///\n/// Returns a new stream containing RACTuples of the zipped values from the\n/// streams.\n+ (instancetype)zip:(id<NSFastEnumeration>)streams;\n\n/// Zips streams using +zip:, then reduces the resulting tuples into a single\n/// value using -reduceEach:\n///\n/// streams     - The streams to combine. These must all be instances of the\n///               same concrete class implementing the protocol. If this\n///               collection is empty, the returned stream will be empty.\n/// reduceBlock - The block which reduces the values from all the streams\n///               into one value. It must take as many arguments as the\n///               number of streams given. Each argument will be an object\n///               argument. The return value must be an object. This argument\n///               must not be nil.\n///\n/// Example:\n///\n///   [RACStream zip:@[ stringSignal, intSignal ] reduce:^(NSString *string, NSNumber *number) {\n///       return [NSString stringWithFormat:@\"%@: %@\", string, number];\n///   }];\n///\n/// Returns a new stream containing the results from each invocation of\n/// `reduceBlock`.\n+ (instancetype)zip:(id<NSFastEnumeration>)streams reduce:(id (^)())reduceBlock;\n\n/// Returns a stream obtained by concatenating `streams` in order.\n+ (instancetype)concat:(id<NSFastEnumeration>)streams;\n\n/// Combines values in the receiver from left to right using the given block.\n///\n/// The algorithm proceeds as follows:\n///\n///  1. `startingValue` is passed into the block as the `running` value, and the\n///  first element of the receiver is passed into the block as the `next` value.\n///  2. The result of the invocation is added to the returned stream.\n///  3. The result of the invocation (`running`) and the next element of the\n///  receiver (`next`) is passed into `block`.\n///  4. Steps 2 and 3 are repeated until all values have been processed.\n///\n/// startingValue - The value to be combined with the first element of the\n///                 receiver. This value may be `nil`.\n/// reduceBlock   - The block that describes how to combine values of the\n///                 receiver. If the receiver is empty, this block will never be\n///                 invoked. Cannot be nil.\n///\n/// Examples\n///\n///      RACSequence *numbers = @[ @1, @2, @3, @4 ].rac_sequence;\n///\n///      // Contains 1, 3, 6, 10\n///      RACSequence *sums = [numbers scanWithStart:@0 reduce:^(NSNumber *sum, NSNumber *next) {\n///          return @(sum.integerValue + next.integerValue);\n///      }];\n///\n/// Returns a new stream that consists of each application of `reduceBlock`. If the\n/// receiver is empty, an empty stream is returned.\n- (instancetype)scanWithStart:(id)startingValue reduce:(id (^)(id running, id next))reduceBlock;\n\n/// Combines values in the receiver from left to right using the given block\n/// which also takes zero-based index of the values.\n///\n/// startingValue - The value to be combined with the first element of the\n///                 receiver. This value may be `nil`.\n/// reduceBlock   - The block that describes how to combine values of the\n///                 receiver. This block takes zero-based index value as the last\n///                 parameter. If the receiver is empty, this block will never\n///                 be invoked. Cannot be nil.\n///\n/// Returns a new stream that consists of each application of `reduceBlock`. If the\n/// receiver is empty, an empty stream is returned.\n- (instancetype)scanWithStart:(id)startingValue reduceWithIndex:(id (^)(id running, id next, NSUInteger index))reduceBlock;\n\n/// Combines each previous and current value into one object.\n///\n/// This method is similar to -scanWithStart:reduce:, but only ever operates on\n/// the previous and current values (instead of the whole stream), and does not\n/// pass the return value of `reduceBlock` into the next invocation of it.\n///\n/// start       - The value passed into `reduceBlock` as `previous` for the\n///               first value.\n/// reduceBlock - The block that combines the previous value and the current\n///               value to create the reduced value. Cannot be nil.\n///\n/// Examples\n///\n///      RACSequence *numbers = @[ @1, @2, @3, @4 ].rac_sequence;\n///\n///      // Contains 1, 3, 5, 7\n///      RACSequence *sums = [numbers combinePreviousWithStart:@0 reduce:^(NSNumber *previous, NSNumber *next) {\n///          return @(previous.integerValue + next.integerValue);\n///      }];\n///\n/// Returns a new stream consisting of the return values from each application of\n/// `reduceBlock`.\n- (instancetype)combinePreviousWithStart:(id)start reduce:(id (^)(id previous, id current))reduceBlock;\n\n/// Takes values until the given block returns `YES`.\n///\n/// Returns a stream of the initial values in the receiver that fail `predicate`.\n/// If `predicate` never returns `YES`, a stream equivalent to the receiver is\n/// returned.\n- (instancetype)takeUntilBlock:(BOOL (^)(id x))predicate;\n\n/// Takes values until the given block returns `NO`.\n///\n/// Returns a stream of the initial values in the receiver that pass `predicate`.\n/// If `predicate` never returns `NO`, a stream equivalent to the receiver is\n/// returned.\n- (instancetype)takeWhileBlock:(BOOL (^)(id x))predicate;\n\n/// Skips values until the given block returns `YES`.\n///\n/// Returns a stream containing the values of the receiver that follow any\n/// initial values failing `predicate`. If `predicate` never returns `YES`,\n/// an empty stream is returned.\n- (instancetype)skipUntilBlock:(BOOL (^)(id x))predicate;\n\n/// Skips values until the given block returns `NO`.\n///\n/// Returns a stream containing the values of the receiver that follow any\n/// initial values passing `predicate`. If `predicate` never returns `NO`, an\n/// empty stream is returned.\n- (instancetype)skipWhileBlock:(BOOL (^)(id x))predicate;\n\n/// Returns a stream of values for which -isEqual: returns NO when compared to the\n/// previous value.\n- (instancetype)distinctUntilChanged;\n\n@end\n\n@interface RACStream (Unavailable)\n\n- (instancetype)sequenceMany:(RACStream * (^)(void))block __attribute__((unavailable(\"Use -flattenMap: instead\")));\n- (instancetype)scanWithStart:(id)startingValue combine:(id (^)(id running, id next))block __attribute__((unavailable(\"Renamed to -scanWithStart:reduce:\")));\n- (instancetype)mapPreviousWithStart:(id)start reduce:(id (^)(id previous, id current))combineBlock __attribute__((unavailable(\"Renamed to -combinePreviousWithStart:reduce:\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACStream.m",
    "content": "//\n//  RACStream.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-31.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACStream.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACBlockTrampoline.h\"\n#import \"RACTuple.h\"\n\n@implementation RACStream\n\n#pragma mark Lifecycle\n\n- (id)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\tself.name = @\"\";\n\treturn self;\n}\n\n#pragma mark Abstract methods\n\n+ (instancetype)empty {\n\treturn nil;\n}\n\n- (instancetype)bind:(RACStreamBindBlock (^)(void))block {\n\treturn nil;\n}\n\n+ (instancetype)return:(id)value {\n\treturn nil;\n}\n\n- (instancetype)concat:(RACStream *)stream {\n\treturn nil;\n}\n\n- (instancetype)zipWith:(RACStream *)stream {\n\treturn nil;\n}\n\n#pragma mark Naming\n\n- (instancetype)setNameWithFormat:(NSString *)format, ... {\n\tif (getenv(\"RAC_DEBUG_SIGNAL_NAMES\") == NULL) return self;\n\n\tNSCParameterAssert(format != nil);\n\n\tva_list args;\n\tva_start(args, format);\n\n\tNSString *str = [[NSString alloc] initWithFormat:format arguments:args];\n\tva_end(args);\n\n\tself.name = str;\n\treturn self;\n}\n\n@end\n\n@implementation RACStream (Operations)\n\n- (instancetype)flattenMap:(RACStream * (^)(id value))block {\n\tClass class = self.class;\n\n\treturn [[self bind:^{\n\t\treturn ^(id value, BOOL *stop) {\n\t\t\tid stream = block(value) ?: [class empty];\n\t\t\tNSCAssert([stream isKindOfClass:RACStream.class], @\"Value returned from -flattenMap: is not a stream: %@\", stream);\n\n\t\t\treturn stream;\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -flattenMap:\", self.name];\n}\n\n- (instancetype)flatten {\n\treturn [[self flattenMap:^(id value) {\n\t\treturn value;\n\t}] setNameWithFormat:@\"[%@] -flatten\", self.name];\n}\n\n- (instancetype)map:(id (^)(id value))block {\n\tNSCParameterAssert(block != nil);\n\n\tClass class = self.class;\n\t\n\treturn [[self flattenMap:^(id value) {\n\t\treturn [class return:block(value)];\n\t}] setNameWithFormat:@\"[%@] -map:\", self.name];\n}\n\n- (instancetype)mapReplace:(id)object {\n\treturn [[self map:^(id _) {\n\t\treturn object;\n\t}] setNameWithFormat:@\"[%@] -mapReplace: %@\", self.name, RACDescription(object)];\n}\n\n- (instancetype)combinePreviousWithStart:(id)start reduce:(id (^)(id previous, id next))reduceBlock {\n\tNSCParameterAssert(reduceBlock != NULL);\n\treturn [[[self\n\t\tscanWithStart:RACTuplePack(start)\n\t\treduce:^(RACTuple *previousTuple, id next) {\n\t\t\tid value = reduceBlock(previousTuple[0], next);\n\t\t\treturn RACTuplePack(next, value);\n\t\t}]\n\t\tmap:^(RACTuple *tuple) {\n\t\t\treturn tuple[1];\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -combinePreviousWithStart: %@ reduce:\", self.name, RACDescription(start)];\n}\n\n- (instancetype)filter:(BOOL (^)(id value))block {\n\tNSCParameterAssert(block != nil);\n\n\tClass class = self.class;\n\t\n\treturn [[self flattenMap:^ id (id value) {\n\t\tif (block(value)) {\n\t\t\treturn [class return:value];\n\t\t} else {\n\t\t\treturn class.empty;\n\t\t}\n\t}] setNameWithFormat:@\"[%@] -filter:\", self.name];\n}\n\n- (instancetype)ignore:(id)value {\n\treturn [[self filter:^ BOOL (id innerValue) {\n\t\treturn innerValue != value && ![innerValue isEqual:value];\n\t}] setNameWithFormat:@\"[%@] -ignore: %@\", self.name, RACDescription(value)];\n}\n\n- (instancetype)reduceEach:(id (^)())reduceBlock {\n\tNSCParameterAssert(reduceBlock != nil);\n\n\t__weak RACStream *stream __attribute__((unused)) = self;\n\treturn [[self map:^(RACTuple *t) {\n\t\tNSCAssert([t isKindOfClass:RACTuple.class], @\"Value from stream %@ is not a tuple: %@\", stream, t);\n\t\treturn [RACBlockTrampoline invokeBlock:reduceBlock withArguments:t];\n\t}] setNameWithFormat:@\"[%@] -reduceEach:\", self.name];\n}\n\n- (instancetype)startWith:(id)value {\n\treturn [[[self.class return:value]\n\t\tconcat:self]\n\t\tsetNameWithFormat:@\"[%@] -startWith: %@\", self.name, RACDescription(value)];\n}\n\n- (instancetype)skip:(NSUInteger)skipCount {\n\tClass class = self.class;\n\t\n\treturn [[self bind:^{\n\t\t__block NSUInteger skipped = 0;\n\n\t\treturn ^(id value, BOOL *stop) {\n\t\t\tif (skipped >= skipCount) return [class return:value];\n\n\t\t\tskipped++;\n\t\t\treturn class.empty;\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -skip: %lu\", self.name, (unsigned long)skipCount];\n}\n\n- (instancetype)take:(NSUInteger)count {\n\tClass class = self.class;\n\t\n\tif (count == 0) return class.empty;\n\n\treturn [[self bind:^{\n\t\t__block NSUInteger taken = 0;\n\n\t\treturn ^ id (id value, BOOL *stop) {\n\t\t\tif (taken < count) {\n\t\t\t\t++taken;\n\t\t\t\tif (taken == count) *stop = YES;\n\t\t\t\treturn [class return:value];\n\t\t\t} else {\n\t\t\t\treturn nil;\n\t\t\t}\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -take: %lu\", self.name, (unsigned long)count];\n}\n\n+ (instancetype)join:(id<NSFastEnumeration>)streams block:(RACStream * (^)(id, id))block {\n\tRACStream *current = nil;\n\n\t// Creates streams of successively larger tuples by combining the input\n\t// streams one-by-one.\n\tfor (RACStream *stream in streams) {\n\t\t// For the first stream, just wrap its values in a RACTuple. That way,\n\t\t// if only one stream is given, the result is still a stream of tuples.\n\t\tif (current == nil) {\n\t\t\tcurrent = [stream map:^(id x) {\n\t\t\t\treturn RACTuplePack(x);\n\t\t\t}];\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tcurrent = block(current, stream);\n\t}\n\n\tif (current == nil) return [self empty];\n\n\treturn [current map:^(RACTuple *xs) {\n\t\t// Right now, each value is contained in its own tuple, sorta like:\n\t\t//\n\t\t// (((1), 2), 3)\n\t\t//\n\t\t// We need to unwrap all the layers and create a tuple out of the result.\n\t\tNSMutableArray *values = [[NSMutableArray alloc] init];\n\n\t\twhile (xs != nil) {\n\t\t\t[values insertObject:xs.last ?: RACTupleNil.tupleNil atIndex:0];\n\t\t\txs = (xs.count > 1 ? xs.first : nil);\n\t\t}\n\n\t\treturn [RACTuple tupleWithObjectsFromArray:values];\n\t}];\n}\n\n+ (instancetype)zip:(id<NSFastEnumeration>)streams {\n\treturn [[self join:streams block:^(RACStream *left, RACStream *right) {\n\t\treturn [left zipWith:right];\n\t}] setNameWithFormat:@\"+zip: %@\", streams];\n}\n\n+ (instancetype)zip:(id<NSFastEnumeration>)streams reduce:(id (^)())reduceBlock {\n\tNSCParameterAssert(reduceBlock != nil);\n\n\tRACStream *result = [self zip:streams];\n\n\t// Although we assert this condition above, older versions of this method\n\t// supported this argument being nil. Avoid crashing Release builds of\n\t// apps that depended on that.\n\tif (reduceBlock != nil) result = [result reduceEach:reduceBlock];\n\n\treturn [result setNameWithFormat:@\"+zip: %@ reduce:\", streams];\n}\n\n+ (instancetype)concat:(id<NSFastEnumeration>)streams {\n\tRACStream *result = self.empty;\n\tfor (RACStream *stream in streams) {\n\t\tresult = [result concat:stream];\n\t}\n\n\treturn [result setNameWithFormat:@\"+concat: %@\", streams];\n}\n\n- (instancetype)scanWithStart:(id)startingValue reduce:(id (^)(id running, id next))reduceBlock {\n\tNSCParameterAssert(reduceBlock != nil);\n\n\treturn [[self\n\t\tscanWithStart:startingValue\n\t\treduceWithIndex:^(id running, id next, NSUInteger index) {\n\t\t\treturn reduceBlock(running, next);\n\t\t}]\n\t\tsetNameWithFormat:@\"[%@] -scanWithStart: %@ reduce:\", self.name, RACDescription(startingValue)];\n}\n\n- (instancetype)scanWithStart:(id)startingValue reduceWithIndex:(id (^)(id, id, NSUInteger))reduceBlock {\n\tNSCParameterAssert(reduceBlock != nil);\n\n\tClass class = self.class;\n\n\treturn [[self bind:^{\n\t\t__block id running = startingValue;\n\t\t__block NSUInteger index = 0;\n\n\t\treturn ^(id value, BOOL *stop) {\n\t\t\trunning = reduceBlock(running, value, index++);\n\t\t\treturn [class return:running];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -scanWithStart: %@ reduceWithIndex:\", self.name, RACDescription(startingValue)];\n}\n\n- (instancetype)takeUntilBlock:(BOOL (^)(id x))predicate {\n\tNSCParameterAssert(predicate != nil);\n\n\tClass class = self.class;\n\t\n\treturn [[self bind:^{\n\t\treturn ^ id (id value, BOOL *stop) {\n\t\t\tif (predicate(value)) return nil;\n\n\t\t\treturn [class return:value];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -takeUntilBlock:\", self.name];\n}\n\n- (instancetype)takeWhileBlock:(BOOL (^)(id x))predicate {\n\tNSCParameterAssert(predicate != nil);\n\n\treturn [[self takeUntilBlock:^ BOOL (id x) {\n\t\treturn !predicate(x);\n\t}] setNameWithFormat:@\"[%@] -takeWhileBlock:\", self.name];\n}\n\n- (instancetype)skipUntilBlock:(BOOL (^)(id x))predicate {\n\tNSCParameterAssert(predicate != nil);\n\n\tClass class = self.class;\n\t\n\treturn [[self bind:^{\n\t\t__block BOOL skipping = YES;\n\n\t\treturn ^ id (id value, BOOL *stop) {\n\t\t\tif (skipping) {\n\t\t\t\tif (predicate(value)) {\n\t\t\t\t\tskipping = NO;\n\t\t\t\t} else {\n\t\t\t\t\treturn class.empty;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn [class return:value];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -skipUntilBlock:\", self.name];\n}\n\n- (instancetype)skipWhileBlock:(BOOL (^)(id x))predicate {\n\tNSCParameterAssert(predicate != nil);\n\n\treturn [[self skipUntilBlock:^ BOOL (id x) {\n\t\treturn !predicate(x);\n\t}] setNameWithFormat:@\"[%@] -skipWhileBlock:\", self.name];\n}\n\n- (instancetype)distinctUntilChanged {\n\tClass class = self.class;\n\n\treturn [[self bind:^{\n\t\t__block id lastValue = nil;\n\t\t__block BOOL initial = YES;\n\n\t\treturn ^(id x, BOOL *stop) {\n\t\t\tif (!initial && (lastValue == x || [x isEqual:lastValue])) return [class empty];\n\n\t\t\tinitial = NO;\n\t\t\tlastValue = x;\n\t\t\treturn [class return:x];\n\t\t};\n\t}] setNameWithFormat:@\"[%@] -distinctUntilChanged\", self.name];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACStringSequence.h",
    "content": "//\n//  RACStringSequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class that adapts a string to the RACSequence interface.\n@interface RACStringSequence : RACSequence\n\n// Returns a sequence for enumerating over the given string, starting from the\n// given character offset. The string will be copied to prevent mutation.\n+ (RACSequence *)sequenceWithString:(NSString *)string offset:(NSUInteger)offset;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACStringSequence.m",
    "content": "//\n//  RACStringSequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-10-29.\n//  Copyright (c) 2012 GitHub. All rights reserved.\n//\n\n#import \"RACStringSequence.h\"\n\n@interface RACStringSequence ()\n\n// The string being sequenced.\n@property (nonatomic, copy, readonly) NSString *string;\n\n// The index in the string from which the sequence starts.\n@property (nonatomic, assign, readonly) NSUInteger offset;\n\n@end\n\n@implementation RACStringSequence\n\n#pragma mark Lifecycle\n\n+ (RACSequence *)sequenceWithString:(NSString *)string offset:(NSUInteger)offset {\n\tNSCParameterAssert(offset <= string.length);\n\n\tif (offset == string.length) return self.empty;\n\n\tRACStringSequence *seq = [[self alloc] init];\n\tseq->_string = [string copy];\n\tseq->_offset = offset;\n\treturn seq;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\treturn [self.string substringWithRange:NSMakeRange(self.offset, 1)];\n}\n\n- (RACSequence *)tail {\n\tRACSequence *sequence = [self.class sequenceWithString:self.string offset:self.offset + 1];\n\tsequence.name = self.name;\n\treturn sequence;\n}\n\n- (NSArray *)array {\n\tNSUInteger substringLength = self.string.length - self.offset;\n\tNSMutableArray *array = [NSMutableArray arrayWithCapacity:substringLength];\n\n\t[self.string enumerateSubstringsInRange:NSMakeRange(self.offset, substringLength) options:NSStringEnumerationByComposedCharacterSequences usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {\n\t\t[array addObject:substring];\n\t}];\n\n\treturn [array copy];\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, string = %@ }\", self.class, self, self.name, [self.string substringFromIndex:self.offset]];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubject.h",
    "content": "//\n//  RACSubject.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/9/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n\n/// A subject can be thought of as a signal that you can manually control by\n/// sending next, completed, and error.\n///\n/// They're most helpful in bridging the non-RAC world to RAC, since they let you\n/// manually control the sending of events.\n@interface RACSubject : RACSignal <RACSubscriber>\n\n/// Returns a new subject.\n+ (instancetype)subject;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubject.m",
    "content": "//\n//  RACSubject.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/9/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubject.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACCompoundDisposable.h\"\n#import \"RACPassthroughSubscriber.h\"\n\n@interface RACSubject ()\n\n// Contains all current subscribers to the receiver.\n//\n// This should only be used while synchronized on `self`.\n@property (nonatomic, strong, readonly) NSMutableArray *subscribers;\n\n// Contains all of the receiver's subscriptions to other signals.\n@property (nonatomic, strong, readonly) RACCompoundDisposable *disposable;\n\n// Enumerates over each of the receiver's `subscribers` and invokes `block` for\n// each.\n- (void)enumerateSubscribersUsingBlock:(void (^)(id<RACSubscriber> subscriber))block;\n\n@end\n\n@implementation RACSubject\n\n#pragma mark Lifecycle\n\n+ (instancetype)subject {\n\treturn [[self alloc] init];\n}\n\n- (id)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_disposable = [RACCompoundDisposable compoundDisposable];\n\t_subscribers = [[NSMutableArray alloc] initWithCapacity:1];\n\t\n\treturn self;\n}\n\n- (void)dealloc {\n\t[self.disposable dispose];\n}\n\n#pragma mark Subscription\n\n- (RACDisposable *)subscribe:(id<RACSubscriber>)subscriber {\n\tNSCParameterAssert(subscriber != nil);\n\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\tsubscriber = [[RACPassthroughSubscriber alloc] initWithSubscriber:subscriber signal:self disposable:disposable];\n\n\tNSMutableArray *subscribers = self.subscribers;\n\t@synchronized (subscribers) {\n\t\t[subscribers addObject:subscriber];\n\t}\n\t\n\t[disposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t@synchronized (subscribers) {\n\t\t\t// Since newer subscribers are generally shorter-lived, search\n\t\t\t// starting from the end of the list.\n\t\t\tNSUInteger index = [subscribers indexOfObjectWithOptions:NSEnumerationReverse passingTest:^ BOOL (id<RACSubscriber> obj, NSUInteger index, BOOL *stop) {\n\t\t\t\treturn obj == subscriber;\n\t\t\t}];\n\n\t\t\tif (index != NSNotFound) [subscribers removeObjectAtIndex:index];\n\t\t}\n\t}]];\n\n\treturn disposable;\n}\n\n- (void)enumerateSubscribersUsingBlock:(void (^)(id<RACSubscriber> subscriber))block {\n\tNSArray *subscribers;\n\t@synchronized (self.subscribers) {\n\t\tsubscribers = [self.subscribers copy];\n\t}\n\n\tfor (id<RACSubscriber> subscriber in subscribers) {\n\t\tblock(subscriber);\n\t}\n}\n\n#pragma mark RACSubscriber\n\n- (void)sendNext:(id)value {\n\t[self enumerateSubscribersUsingBlock:^(id<RACSubscriber> subscriber) {\n\t\t[subscriber sendNext:value];\n\t}];\n}\n\n- (void)sendError:(NSError *)error {\n\t[self.disposable dispose];\n\t\n\t[self enumerateSubscribersUsingBlock:^(id<RACSubscriber> subscriber) {\n\t\t[subscriber sendError:error];\n\t}];\n}\n\n- (void)sendCompleted {\n\t[self.disposable dispose];\n\t\n\t[self enumerateSubscribersUsingBlock:^(id<RACSubscriber> subscriber) {\n\t\t[subscriber sendCompleted];\n\t}];\n}\n\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)d {\n\tif (d.disposed) return;\n\t[self.disposable addDisposable:d];\n\n\t@weakify(self, d);\n\t[d addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t@strongify(self, d);\n\t\t[self.disposable removeDisposable:d];\n\t}]];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriber+Private.h",
    "content": "//\n//  RACSubscriber+Private.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubscriber.h\"\n\n// A simple block-based subscriber.\n@interface RACSubscriber : NSObject <RACSubscriber>\n\n// Creates a new subscriber with the given blocks.\n+ (instancetype)subscriberWithNext:(void (^)(id x))next error:(void (^)(NSError *error))error completed:(void (^)(void))completed;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriber.h",
    "content": "//\n//  RACSubscriber.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/1/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n@class RACCompoundDisposable;\n\n/// Represents any object which can directly receive values from a RACSignal.\n///\n/// You generally shouldn't need to implement this protocol. +[RACSignal\n/// createSignal:], RACSignal's subscription methods, or RACSubject should work\n/// for most uses.\n///\n/// Implementors of this protocol may receive messages and values from multiple\n/// threads simultaneously, and so should be thread-safe. Subscribers will also\n/// be weakly referenced so implementations must allow that.\n@protocol RACSubscriber <NSObject>\n@required\n\n/// Sends the next value to subscribers.\n///\n/// value - The value to send. This can be `nil`.\n- (void)sendNext:(id)value;\n\n/// Sends the error to subscribers.\n///\n/// error - The error to send. This can be `nil`.\n///\n/// This terminates the subscription, and invalidates the subscriber (such that\n/// it cannot subscribe to anything else in the future).\n- (void)sendError:(NSError *)error;\n\n/// Sends completed to subscribers.\n///\n/// This terminates the subscription, and invalidates the subscriber (such that\n/// it cannot subscribe to anything else in the future).\n- (void)sendCompleted;\n\n/// Sends the subscriber a disposable that represents one of its subscriptions.\n///\n/// A subscriber may receive multiple disposables if it gets subscribed to\n/// multiple signals; however, any error or completed events must terminate _all_\n/// subscriptions.\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)disposable;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriber.m",
    "content": "//\n//  RACSubscriber.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/1/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubscriber.h\"\n#import \"RACSubscriber+Private.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACCompoundDisposable.h\"\n\n@interface RACSubscriber ()\n\n// These callbacks should only be accessed while synchronized on self.\n@property (nonatomic, copy) void (^next)(id value);\n@property (nonatomic, copy) void (^error)(NSError *error);\n@property (nonatomic, copy) void (^completed)(void);\n\n@property (nonatomic, strong, readonly) RACCompoundDisposable *disposable;\n\n@end\n\n@implementation RACSubscriber\n\n#pragma mark Lifecycle\n\n+ (instancetype)subscriberWithNext:(void (^)(id x))next error:(void (^)(NSError *error))error completed:(void (^)(void))completed {\n\tRACSubscriber *subscriber = [[self alloc] init];\n\n\tsubscriber->_next = [next copy];\n\tsubscriber->_error = [error copy];\n\tsubscriber->_completed = [completed copy];\n\n\treturn subscriber;\n}\n\n- (id)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t@unsafeify(self);\n\n\tRACDisposable *selfDisposable = [RACDisposable disposableWithBlock:^{\n\t\t@strongify(self);\n\n\t\t@synchronized (self) {\n\t\t\tself.next = nil;\n\t\t\tself.error = nil;\n\t\t\tself.completed = nil;\n\t\t}\n\t}];\n\n\t_disposable = [RACCompoundDisposable compoundDisposable];\n\t[_disposable addDisposable:selfDisposable];\n\n\treturn self;\n}\n\n- (void)dealloc {\n\t[self.disposable dispose];\n}\n\n#pragma mark RACSubscriber\n\n- (void)sendNext:(id)value {\n\t@synchronized (self) {\n\t\tvoid (^nextBlock)(id) = [self.next copy];\n\t\tif (nextBlock == nil) return;\n\n\t\tnextBlock(value);\n\t}\n}\n\n- (void)sendError:(NSError *)e {\n\t@synchronized (self) {\n\t\tvoid (^errorBlock)(NSError *) = [self.error copy];\n\t\t[self.disposable dispose];\n\n\t\tif (errorBlock == nil) return;\n\t\terrorBlock(e);\n\t}\n}\n\n- (void)sendCompleted {\n\t@synchronized (self) {\n\t\tvoid (^completedBlock)(void) = [self.completed copy];\n\t\t[self.disposable dispose];\n\n\t\tif (completedBlock == nil) return;\n\t\tcompletedBlock();\n\t}\n}\n\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)otherDisposable {\n\tif (otherDisposable.disposed) return;\n\n\tRACCompoundDisposable *selfDisposable = self.disposable;\n\t[selfDisposable addDisposable:otherDisposable];\n\n\t@unsafeify(otherDisposable);\n\n\t// If this subscription terminates, purge its disposable to avoid unbounded\n\t// memory growth.\n\t[otherDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t@strongify(otherDisposable);\n\t\t[selfDisposable removeDisposable:otherDisposable];\n\t}]];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriptingAssignmentTrampoline.h",
    "content": "//\n//  RACSubscriptingAssignmentTrampoline.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/24/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n\n@class RACSignal;\n\n/// Assigns a signal to an object property, automatically setting the given key\n/// path on every `next`. When the signal completes, the binding is automatically\n/// disposed of.\n///\n/// There are two different versions of this macro:\n///\n///  - RAC(TARGET, KEYPATH, NILVALUE) will bind the `KEYPATH` of `TARGET` to the\n///    given signal. If the signal ever sends a `nil` value, the property will be\n///    set to `NILVALUE` instead. `NILVALUE` may itself be `nil` for object\n///    properties, but an NSValue should be used for primitive properties, to\n///    avoid an exception if `nil` is sent (which might occur if an intermediate\n///    object is set to `nil`).\n///  - RAC(TARGET, KEYPATH) is the same as the above, but `NILVALUE` defaults to\n///    `nil`.\n///\n/// See -[RACSignal setKeyPath:onObject:nilValue:] for more information about the\n/// binding's semantics.\n///\n/// Examples\n///\n///  RAC(self, objectProperty) = objectSignal;\n///  RAC(self, stringProperty, @\"foobar\") = stringSignal;\n///  RAC(self, integerProperty, @42) = integerSignal;\n///\n/// WARNING: Under certain conditions, use of this macro can be thread-unsafe.\n///          See the documentation of -setKeyPath:onObject:nilValue:.\n#define RAC(TARGET, ...) \\\n    metamacro_if_eq(1, metamacro_argcount(__VA_ARGS__)) \\\n        (RAC_(TARGET, __VA_ARGS__, nil)) \\\n        (RAC_(TARGET, __VA_ARGS__))\n\n/// Do not use this directly. Use the RAC macro above.\n#define RAC_(TARGET, KEYPATH, NILVALUE) \\\n    [[RACSubscriptingAssignmentTrampoline alloc] initWithTarget:(TARGET) nilValue:(NILVALUE)][@keypath(TARGET, KEYPATH)]\n\n@interface RACSubscriptingAssignmentTrampoline : NSObject\n\n- (id)initWithTarget:(id)target nilValue:(id)nilValue;\n- (void)setObject:(RACSignal *)signal forKeyedSubscript:(NSString *)keyPath;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriptingAssignmentTrampoline.m",
    "content": "//\n//  RACSubscriptingAssignmentTrampoline.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/24/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubscriptingAssignmentTrampoline.h\"\n#import \"RACSignal+Operations.h\"\n\n@interface RACSubscriptingAssignmentTrampoline ()\n\n// The object to bind to.\n@property (nonatomic, strong, readonly) id target;\n\n// A value to use when `nil` is sent on the bound signal.\n@property (nonatomic, strong, readonly) id nilValue;\n\n@end\n\n@implementation RACSubscriptingAssignmentTrampoline\n\n- (id)initWithTarget:(id)target nilValue:(id)nilValue {\n\t// This is often a programmer error, but this prevents crashes if the target\n\t// object has unexpectedly deallocated.\n\tif (target == nil) return nil;\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_target = target;\n\t_nilValue = nilValue;\n\n\treturn self;\n}\n\n- (void)setObject:(RACSignal *)signal forKeyedSubscript:(NSString *)keyPath {\n\t[signal setKeyPath:keyPath onObject:self.target nilValue:self.nilValue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriptionScheduler.h",
    "content": "//\n//  RACSubscriptionScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n\n// A private scheduler used only for subscriptions. See the private\n// +[RACScheduler subscriptionScheduler] method for more information.\n@interface RACSubscriptionScheduler : RACScheduler\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACSubscriptionScheduler.m",
    "content": "//\n//  RACSubscriptionScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubscriptionScheduler.h\"\n#import \"RACScheduler+Private.h\"\n\n@interface RACSubscriptionScheduler ()\n\n// A private background scheduler on which to subscribe if the +currentScheduler\n// is unknown.\n@property (nonatomic, strong, readonly) RACScheduler *backgroundScheduler;\n\n@end\n\n@implementation RACSubscriptionScheduler\n\n#pragma mark Lifecycle\n\n- (id)init {\n\tself = [super initWithName:@\"com.ReactiveCocoa.RACScheduler.subscriptionScheduler\"];\n\tif (self == nil) return nil;\n\n\t_backgroundScheduler = [RACScheduler scheduler];\n\n\treturn self;\n}\n\n#pragma mark RACScheduler\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tNSCParameterAssert(block != NULL);\n\n\tif (RACScheduler.currentScheduler == nil) return [self.backgroundScheduler schedule:block];\n\n\tblock();\n\treturn nil;\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tRACScheduler *scheduler = RACScheduler.currentScheduler ?: self.backgroundScheduler;\n\treturn [scheduler after:date schedule:block];\n}\n\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {\n\tRACScheduler *scheduler = RACScheduler.currentScheduler ?: self.backgroundScheduler;\n\treturn [scheduler after:date repeatingEvery:interval withLeeway:leeway schedule:block];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTargetQueueScheduler.h",
    "content": "//\n//  RACTargetQueueScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/6/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACQueueScheduler.h\"\n\n/// A scheduler that enqueues blocks on a private serial queue, targeting an\n/// arbitrary GCD queue.\n@interface RACTargetQueueScheduler : RACQueueScheduler\n\n/// Initializes the receiver with a serial queue that will target the given\n/// `targetQueue`.\n///\n/// name        - The name of the scheduler. If nil, a default name will be used.\n/// targetQueue - The queue to target. Cannot be NULL.\n///\n/// Returns the initialized object.\n- (id)initWithName:(NSString *)name targetQueue:(dispatch_queue_t)targetQueue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTargetQueueScheduler.m",
    "content": "//\n//  RACTargetQueueScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/6/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTargetQueueScheduler.h\"\n#import \"RACQueueScheduler+Subclass.h\"\n\n@implementation RACTargetQueueScheduler\n\n#pragma mark Lifecycle\n\n- (id)initWithName:(NSString *)name targetQueue:(dispatch_queue_t)targetQueue {\n\tNSCParameterAssert(targetQueue != NULL);\n\n\tif (name == nil) {\n\t\tname = [NSString stringWithFormat:@\"com.ReactiveCocoa.RACTargetQueueScheduler(%s)\", dispatch_queue_get_label(targetQueue)];\n\t}\n\n\tdispatch_queue_t queue = dispatch_queue_create(name.UTF8String, DISPATCH_QUEUE_SERIAL);\n\tif (queue == NULL) return nil;\n\n\tdispatch_set_target_queue(queue, targetQueue);\n\n\treturn [super initWithName:name queue:queue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTestScheduler.h",
    "content": "//\n//  RACTestScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACScheduler.h\"\n\n/// A special kind of scheduler that steps through virtualized time.\n///\n/// This scheduler class can be used in unit tests to verify asynchronous\n/// behaviors without spending significant time waiting.\n///\n/// This class can be used from multiple threads, but only one thread can `step`\n/// through the enqueued actions at a time. Other threads will wait while the\n/// scheduled blocks are being executed.\n@interface RACTestScheduler : RACScheduler\n\n/// Initializes a new test scheduler.\n- (instancetype)init;\n\n/// Executes the next scheduled block, if any.\n///\n/// This method will block until the scheduled action has completed.\n- (void)step;\n\n/// Executes up to the next `ticks` scheduled blocks.\n///\n/// This method will block until the scheduled actions have completed.\n///\n/// ticks - The number of scheduled blocks to execute. If there aren't this many\n///         blocks enqueued, all scheduled blocks are executed.\n- (void)step:(NSUInteger)ticks;\n\n/// Executes all of the scheduled blocks on the receiver.\n///\n/// This method will block until the scheduled actions have completed.\n- (void)stepAll;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTestScheduler.m",
    "content": "//\n//  RACTestScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTestScheduler.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACScheduler+Private.h\"\n\n@interface RACTestSchedulerAction : NSObject\n\n// The date at which the action should be executed.\n//\n// This absolute time will not actually be honored. This date is only used for\n// comparison, to determine which block should be run _next_.\n@property (nonatomic, copy, readonly) NSDate *date;\n\n// The scheduled block.\n@property (nonatomic, copy, readonly) void (^block)(void);\n\n// A disposable for this action.\n//\n// When disposed, the action should not start executing if it hasn't already.\n@property (nonatomic, strong, readonly) RACDisposable *disposable;\n\n// Initializes a new scheduler action.\n- (id)initWithDate:(NSDate *)date block:(void (^)(void))block;\n\n@end\n\nstatic CFComparisonResult RACCompareScheduledActions(const void *ptr1, const void *ptr2, void *info) {\n\tRACTestSchedulerAction *action1 = (__bridge id)ptr1;\n\tRACTestSchedulerAction *action2 = (__bridge id)ptr2;\n\treturn CFDateCompare((__bridge CFDateRef)action1.date, (__bridge CFDateRef)action2.date, NULL);\n}\n\nstatic const void *RACRetainScheduledAction(CFAllocatorRef allocator, const void *ptr) {\n\treturn CFRetain(ptr);\n}\n\nstatic void RACReleaseScheduledAction(CFAllocatorRef allocator, const void *ptr) {\n\tCFRelease(ptr);\n}\n\n@interface RACTestScheduler ()\n\n// All of the RACTestSchedulerActions that have been enqueued and not yet\n// executed.\n//\n// The minimum value in the heap represents the action to execute next.\n//\n// This property should only be used while synchronized on self.\n@property (nonatomic, assign, readonly) CFBinaryHeapRef scheduledActions;\n\n// The number of blocks that have been directly enqueued with -schedule: so\n// far.\n//\n// This is used to ensure unique dates when two blocks are enqueued\n// simultaneously.\n//\n// This property should only be used while synchronized on self.\n@property (nonatomic, assign) NSUInteger numberOfDirectlyScheduledBlocks;\n\n@end\n\n@implementation RACTestScheduler\n\n#pragma mark Lifecycle\n\n- (instancetype)init {\n\tself = [super initWithName:@\"org.reactivecocoa.ReactiveCocoa.RACTestScheduler\"];\n\tif (self == nil) return nil;\n\n\tCFBinaryHeapCallBacks callbacks = (CFBinaryHeapCallBacks){\n\t\t.version = 0,\n\t\t.retain = &RACRetainScheduledAction,\n\t\t.release = &RACReleaseScheduledAction,\n\t\t.copyDescription = &CFCopyDescription,\n\t\t.compare = &RACCompareScheduledActions\n\t};\n\n\t_scheduledActions = CFBinaryHeapCreate(NULL, 0, &callbacks, NULL);\n\treturn self;\n}\n\n- (void)dealloc {\n\t[self stepAll];\n\n\tif (_scheduledActions != NULL) {\n\t\tCFBridgingRelease(_scheduledActions);\n\t\t_scheduledActions = NULL;\n\t}\n}\n\n#pragma mark Execution\n\n- (void)step {\n\t[self step:1];\n}\n\n- (void)step:(NSUInteger)ticks {\n\t@synchronized (self) {\n\t\tfor (NSUInteger i = 0; i < ticks; i++) {\n\t\t\tconst void *actionPtr = NULL;\n\t\t\tif (!CFBinaryHeapGetMinimumIfPresent(self.scheduledActions, &actionPtr)) break;\n\n\t\t\tRACTestSchedulerAction *action = (__bridge id)actionPtr;\n\t\t\tCFBinaryHeapRemoveMinimumValue(self.scheduledActions);\n\n\t\t\tif (action.disposable.disposed) continue;\n\n\t\t\tRACScheduler *previousScheduler = RACScheduler.currentScheduler;\n\t\t\tNSThread.currentThread.threadDictionary[RACSchedulerCurrentSchedulerKey] = self;\n\n\t\t\taction.block();\n\n\t\t\tif (previousScheduler != nil) {\n\t\t\t\tNSThread.currentThread.threadDictionary[RACSchedulerCurrentSchedulerKey] = previousScheduler;\n\t\t\t} else {\n\t\t\t\t[NSThread.currentThread.threadDictionary removeObjectForKey:RACSchedulerCurrentSchedulerKey];\n\t\t\t}\n\t\t}\n\t}\n}\n\n- (void)stepAll {\n\t[self step:NSUIntegerMax];\n}\n\n#pragma mark RACScheduler\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tNSCParameterAssert(block != nil);\n\n\t@synchronized (self) {\n\t\tNSDate *uniqueDate = [NSDate dateWithTimeIntervalSinceReferenceDate:self.numberOfDirectlyScheduledBlocks];\n\t\tself.numberOfDirectlyScheduledBlocks++;\n\n\t\tRACTestSchedulerAction *action = [[RACTestSchedulerAction alloc] initWithDate:uniqueDate block:block];\n\t\tCFBinaryHeapAddValue(self.scheduledActions, (__bridge void *)action);\n\n\t\treturn action.disposable;\n\t}\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(block != nil);\n\n\t@synchronized (self) {\n\t\tRACTestSchedulerAction *action = [[RACTestSchedulerAction alloc] initWithDate:date block:block];\n\t\tCFBinaryHeapAddValue(self.scheduledActions, (__bridge void *)action);\n\n\t\treturn action.disposable;\n\t}\n}\n\n- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(block != nil);\n\tNSCParameterAssert(interval >= 0);\n\tNSCParameterAssert(leeway >= 0);\n\n\tRACCompoundDisposable *compoundDisposable = [RACCompoundDisposable compoundDisposable];\n\n\t@weakify(self);\n\t@synchronized (self) {\n\t\t__block RACDisposable *thisDisposable = nil;\n\n\t\tvoid (^reschedulingBlock)(void) = ^{\n\t\t\t@strongify(self);\n\n\t\t\t[compoundDisposable removeDisposable:thisDisposable];\n\n\t\t\t// Schedule the next interval.\n\t\t\tRACDisposable *schedulingDisposable = [self after:[date dateByAddingTimeInterval:interval] repeatingEvery:interval withLeeway:leeway schedule:block];\n\t\t\t[compoundDisposable addDisposable:schedulingDisposable];\n\n\t\t\tblock();\n\t\t};\n\n\t\tRACTestSchedulerAction *action = [[RACTestSchedulerAction alloc] initWithDate:date block:reschedulingBlock];\n\t\tCFBinaryHeapAddValue(self.scheduledActions, (__bridge void *)action);\n\n\t\tthisDisposable = action.disposable;\n\t\t[compoundDisposable addDisposable:thisDisposable];\n\t}\n\n\treturn compoundDisposable;\n}\n\n@end\n\n@implementation RACTestSchedulerAction\n\n#pragma mark Lifecycle\n\n- (id)initWithDate:(NSDate *)date block:(void (^)(void))block {\n\tNSCParameterAssert(date != nil);\n\tNSCParameterAssert(block != nil);\n\n\tself = [super init];\n\tif (self == nil) return nil;\n\n\t_date = [date copy];\n\t_block = [block copy];\n\t_disposable = [[RACDisposable alloc] init];\n\n\treturn self;\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ date: %@ }\", self.class, self, self.date];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTuple.h",
    "content": "//\n//  RACTuple.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/12/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n#import \"metamacros.h\"\n\n@class RACSequence;\n\n/// Creates a new tuple with the given values. At least one value must be given.\n/// Values can be nil.\n#define RACTuplePack(...) \\\n    RACTuplePack_(__VA_ARGS__)\n\n/// Declares new object variables and unpacks a RACTuple into them.\n///\n/// This macro should be used on the left side of an assignment, with the\n/// tuple on the right side. Nothing else should appear on the same line, and the\n/// macro should not be the only statement in a conditional or loop body.\n///\n/// If the tuple has more values than there are variables listed, the excess\n/// values are ignored.\n///\n/// If the tuple has fewer values than there are variables listed, the excess\n/// variables are initialized to nil.\n///\n/// Examples\n///\n///   RACTupleUnpack(NSString *string, NSNumber *num) = [RACTuple tupleWithObjects:@\"foo\", @5, nil];\n///   NSLog(@\"string: %@\", string);\n///   NSLog(@\"num: %@\", num);\n///\n///   /* The above is equivalent to: */\n///   RACTuple *t = [RACTuple tupleWithObjects:@\"foo\", @5, nil];\n///   NSString *string = t[0];\n///   NSNumber *num = t[1];\n///   NSLog(@\"string: %@\", string);\n///   NSLog(@\"num: %@\", num);\n#define RACTupleUnpack(...) \\\n        RACTupleUnpack_(__VA_ARGS__)\n\n/// A sentinel object that represents nils in the tuple.\n///\n/// It should never be necessary to create a tuple nil yourself. Just use\n/// +tupleNil.\n@interface RACTupleNil : NSObject <NSCopying, NSCoding>\n/// A singleton instance.\n+ (RACTupleNil *)tupleNil;\n@end\n\n\n/// A tuple is an ordered collection of objects. It may contain nils, represented\n/// by RACTupleNil.\n@interface RACTuple : NSObject <NSCoding, NSCopying, NSFastEnumeration>\n\n@property (nonatomic, readonly) NSUInteger count;\n\n/// These properties all return the object at that index or nil if the number of \n/// objects is less than the index.\n@property (nonatomic, readonly) id first;\n@property (nonatomic, readonly) id second;\n@property (nonatomic, readonly) id third;\n@property (nonatomic, readonly) id fourth;\n@property (nonatomic, readonly) id fifth;\n@property (nonatomic, readonly) id last;\n\n/// Creates a new tuple out of the array. Does not convert nulls to nils.\n+ (instancetype)tupleWithObjectsFromArray:(NSArray *)array;\n\n/// Creates a new tuple out of the array. If `convert` is YES, it also converts\n/// every NSNull to RACTupleNil.\n+ (instancetype)tupleWithObjectsFromArray:(NSArray *)array convertNullsToNils:(BOOL)convert;\n\n/// Creates a new tuple with the given objects. Use RACTupleNil to represent\n/// nils.\n+ (instancetype)tupleWithObjects:(id)object, ... NS_REQUIRES_NIL_TERMINATION;\n\n/// Returns the object at `index` or nil if the object is a RACTupleNil. Unlike\n/// NSArray and friends, it's perfectly fine to ask for the object at an index\n/// past the tuple's count - 1. It will simply return nil.\n- (id)objectAtIndex:(NSUInteger)index;\n\n/// Returns an array of all the objects. RACTupleNils are converted to NSNulls.\n- (NSArray *)allObjects;\n\n/// Appends `obj` to the receiver.\n///\n/// obj - The object to add to the tuple. This argument may be nil.\n///\n/// Returns a new tuple.\n- (instancetype)tupleByAddingObject:(id)obj;\n\n@end\n\n@interface RACTuple (RACSequenceAdditions)\n\n/// Returns a sequence of all the objects. RACTupleNils are converted to NSNulls.\n@property (nonatomic, copy, readonly) RACSequence *rac_sequence;\n\n@end\n\n@interface RACTuple (ObjectSubscripting)\n/// Returns the object at that index or nil if the number of objects is less\n/// than the index.\n- (id)objectAtIndexedSubscript:(NSUInteger)idx; \n@end\n\n/// This and everything below is for internal use only.\n///\n/// See RACTuplePack() and RACTupleUnpack() instead.\n#define RACTuplePack_(...) \\\n    ([RACTuple tupleWithObjectsFromArray:@[ metamacro_foreach(RACTuplePack_object_or_ractuplenil,, __VA_ARGS__) ]])\n\n#define RACTuplePack_object_or_ractuplenil(INDEX, ARG) \\\n    (ARG) ?: RACTupleNil.tupleNil,\n\n#define RACTupleUnpack_(...) \\\n    metamacro_foreach(RACTupleUnpack_decl,, __VA_ARGS__) \\\n    \\\n    int RACTupleUnpack_state = 0; \\\n    \\\n    RACTupleUnpack_after: \\\n        ; \\\n        metamacro_foreach(RACTupleUnpack_assign,, __VA_ARGS__) \\\n        if (RACTupleUnpack_state != 0) RACTupleUnpack_state = 2; \\\n        \\\n        while (RACTupleUnpack_state != 2) \\\n            if (RACTupleUnpack_state == 1) { \\\n                goto RACTupleUnpack_after; \\\n            } else \\\n                for (; RACTupleUnpack_state != 1; RACTupleUnpack_state = 1) \\\n                    [RACTupleUnpackingTrampoline trampoline][ @[ metamacro_foreach(RACTupleUnpack_value,, __VA_ARGS__) ] ]\n\n#define RACTupleUnpack_state metamacro_concat(RACTupleUnpack_state, __LINE__)\n#define RACTupleUnpack_after metamacro_concat(RACTupleUnpack_after, __LINE__)\n#define RACTupleUnpack_loop metamacro_concat(RACTupleUnpack_loop, __LINE__)\n\n#define RACTupleUnpack_decl_name(INDEX) \\\n    metamacro_concat(metamacro_concat(RACTupleUnpack, __LINE__), metamacro_concat(_var, INDEX))\n\n#define RACTupleUnpack_decl(INDEX, ARG) \\\n    __strong id RACTupleUnpack_decl_name(INDEX);\n\n#define RACTupleUnpack_assign(INDEX, ARG) \\\n    __strong ARG = RACTupleUnpack_decl_name(INDEX);\n\n#define RACTupleUnpack_value(INDEX, ARG) \\\n    [NSValue valueWithPointer:&RACTupleUnpack_decl_name(INDEX)],\n\n@interface RACTupleUnpackingTrampoline : NSObject\n\n+ (instancetype)trampoline;\n- (void)setObject:(RACTuple *)tuple forKeyedSubscript:(NSArray *)variables;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTuple.m",
    "content": "//\n//  RACTuple.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/12/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTuple.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"RACTupleSequence.h\"\n\n@implementation RACTupleNil\n\n+ (RACTupleNil *)tupleNil {\n\tstatic dispatch_once_t onceToken;\n\tstatic RACTupleNil *tupleNil = nil;\n\tdispatch_once(&onceToken, ^{\n\t\ttupleNil = [[self alloc] init];\n\t});\n\t\n\treturn tupleNil;\n}\n\n#pragma mark NSCopying\n\n- (id)copyWithZone:(NSZone *)zone {\n\treturn self;\n}\n\n#pragma mark NSCoding\n\n- (id)initWithCoder:(NSCoder *)coder {\n\t// Always return the singleton.\n\treturn self.class.tupleNil;\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n}\n\n@end\n\n\n@interface RACTuple ()\n@property (nonatomic, strong) NSArray *backingArray;\n@end\n\n\n@implementation RACTuple\n\n- (instancetype)init {\n\tself = [super init];\n\tif (self == nil) return nil;\n\t\n\tself.backingArray = [NSArray array];\n\t\n\treturn self;\n}\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p> %@\", self.class, self, self.allObjects];\n}\n\n- (BOOL)isEqual:(RACTuple *)object {\n\tif (object == self) return YES;\n\tif (![object isKindOfClass:self.class]) return NO;\n\t\n\treturn [self.backingArray isEqual:object.backingArray];\n}\n\n- (NSUInteger)hash {\n\treturn self.backingArray.hash;\n}\n\n\n#pragma mark NSFastEnumeration\n\n- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state objects:(id __unsafe_unretained [])buffer count:(NSUInteger)len {\n\treturn [self.backingArray countByEnumeratingWithState:state objects:buffer count:len];\n}\n\n\n#pragma mark NSCopying\n\n- (instancetype)copyWithZone:(NSZone *)zone {\n\t// we're immutable, bitches!\n\treturn self;\n}\n\n\n#pragma mark NSCoding\n\n- (id)initWithCoder:(NSCoder *)coder {\n\tself = [self init];\n\tif (self == nil) return nil;\n\t\n\tself.backingArray = [coder decodeObjectForKey:@keypath(self.backingArray)];\n\treturn self;\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n\tif (self.backingArray != nil) [coder encodeObject:self.backingArray forKey:@keypath(self.backingArray)];\n}\n\n\n#pragma mark API\n\n+ (instancetype)tupleWithObjectsFromArray:(NSArray *)array {\n\treturn [self tupleWithObjectsFromArray:array convertNullsToNils:NO];\n}\n\n+ (instancetype)tupleWithObjectsFromArray:(NSArray *)array convertNullsToNils:(BOOL)convert {\n\tRACTuple *tuple = [[self alloc] init];\n\t\n\tif (convert) {\n\t\tNSMutableArray *newArray = [NSMutableArray arrayWithCapacity:array.count];\n\t\tfor (id object in array) {\n\t\t\t[newArray addObject:(object == NSNull.null ? RACTupleNil.tupleNil : object)];\n\t\t}\n\t\t\n\t\ttuple.backingArray = newArray;\n\t} else {\n\t\ttuple.backingArray = [array copy];\n\t}\n\t\n\treturn tuple;\n}\n\n+ (instancetype)tupleWithObjects:(id)object, ... {\n\tRACTuple *tuple = [[self alloc] init];\n\n\tva_list args;\n\tva_start(args, object);\n\n\tNSUInteger count = 0;\n\tfor (id currentObject = object; currentObject != nil; currentObject = va_arg(args, id)) {\n\t\t++count;\n\t}\n\n\tva_end(args);\n\n\tif (count == 0) {\n\t\ttuple.backingArray = @[];\n\t\treturn tuple;\n\t}\n\t\n\tNSMutableArray *objects = [[NSMutableArray alloc] initWithCapacity:count];\n\t\n\tva_start(args, object);\n\tfor (id currentObject = object; currentObject != nil; currentObject = va_arg(args, id)) {\n\t\t[objects addObject:currentObject];\n\t}\n\n\tva_end(args);\n\t\n\ttuple.backingArray = objects;\n\treturn tuple;\n}\n\n- (id)objectAtIndex:(NSUInteger)index {\n\tif (index >= self.count) return nil;\n\t\n\tid object = self.backingArray[index];\n\treturn (object == RACTupleNil.tupleNil ? nil : object);\n}\n\n- (NSArray *)allObjects {\n\tNSMutableArray *newArray = [NSMutableArray arrayWithCapacity:self.backingArray.count];\n\tfor (id object in self.backingArray) {\n\t\t[newArray addObject:(object == RACTupleNil.tupleNil ? NSNull.null : object)];\n\t}\n\t\n\treturn newArray;\n}\n\n- (instancetype)tupleByAddingObject:(id)obj {\n\tNSArray *newArray = [self.backingArray arrayByAddingObject:obj ?: RACTupleNil.tupleNil];\n\treturn [self.class tupleWithObjectsFromArray:newArray];\n}\n\n- (NSUInteger)count {\n\treturn self.backingArray.count;\n}\n\n- (id)first {\n\treturn self[0];\n}\n\n- (id)second {\n\treturn self[1];\n}\n\n- (id)third {\n\treturn self[2];\n}\n\n- (id)fourth {\n\treturn self[3];\n}\n\n- (id)fifth {\n\treturn self[4];\n}\n\n- (id)last {\n\treturn self[self.count - 1];\n}\n\n@end\n\n\n@implementation RACTuple (RACSequenceAdditions)\n\n- (RACSequence *)rac_sequence {\n\treturn [RACTupleSequence sequenceWithTupleBackingArray:self.backingArray offset:0];\n}\n\n@end\n\n@implementation RACTuple (ObjectSubscripting)\n\n- (id)objectAtIndexedSubscript:(NSUInteger)idx {\n\treturn [self objectAtIndex:idx];\n}\n\n@end\n\n\n@implementation RACTupleUnpackingTrampoline\n\n#pragma mark Lifecycle\n\n+ (instancetype)trampoline {\n\tstatic dispatch_once_t onceToken;\n\tstatic id trampoline = nil;\n\tdispatch_once(&onceToken, ^{\n\t\ttrampoline = [[self alloc] init];\n\t});\n\t\n\treturn trampoline;\n}\n\n- (void)setObject:(RACTuple *)tuple forKeyedSubscript:(NSArray *)variables {\n\tNSCParameterAssert(variables != nil);\n\t\n\t[variables enumerateObjectsUsingBlock:^(NSValue *value, NSUInteger index, BOOL *stop) {\n\t\t__strong id *ptr = (__strong id *)value.pointerValue;\n\t\t*ptr = tuple[index];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTupleSequence.h",
    "content": "//\n//  RACTupleSequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class that adapts a RACTuple to the RACSequence interface.\n@interface RACTupleSequence : RACSequence\n\n// Returns a sequence for enumerating over the given backing array (from a\n// RACTuple), starting from the given offset.\n+ (instancetype)sequenceWithTupleBackingArray:(NSArray *)backingArray offset:(NSUInteger)offset;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACTupleSequence.m",
    "content": "//\n//  RACTupleSequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTupleSequence.h\"\n#import \"RACTuple.h\"\n\n@interface RACTupleSequence ()\n\n// The array being sequenced, as taken from RACTuple.backingArray.\n@property (nonatomic, strong, readonly) NSArray *tupleBackingArray;\n\n// The index in the array from which the sequence starts.\n@property (nonatomic, assign, readonly) NSUInteger offset;\n\n@end\n\n@implementation RACTupleSequence\n\n#pragma mark Lifecycle\n\n+ (instancetype)sequenceWithTupleBackingArray:(NSArray *)backingArray offset:(NSUInteger)offset {\n\tNSCParameterAssert(offset <= backingArray.count);\n\n\tif (offset == backingArray.count) return self.empty;\n\n\tRACTupleSequence *seq = [[self alloc] init];\n\tseq->_tupleBackingArray = backingArray;\n\tseq->_offset = offset;\n\treturn seq;\n}\n\n#pragma mark RACSequence\n\n- (id)head {\n\tid object = self.tupleBackingArray[self.offset];\n\treturn (object == RACTupleNil.tupleNil ? NSNull.null : object);\n}\n\n- (RACSequence *)tail {\n\tRACSequence *sequence = [self.class sequenceWithTupleBackingArray:self.tupleBackingArray offset:self.offset + 1];\n\tsequence.name = self.name;\n\treturn sequence;\n}\n\n- (NSArray *)array {\n\tNSRange range = NSMakeRange(self.offset, self.tupleBackingArray.count - self.offset);\n\tNSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:range.length];\n\n\t[self.tupleBackingArray enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:range] options:0 usingBlock:^(id object, NSUInteger index, BOOL *stop) {\n\t\tid mappedObject = (object == RACTupleNil.tupleNil ? NSNull.null : object);\n\t\t[array addObject:mappedObject];\n\t}];\n\n\treturn array;\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, tuple = %@ }\", self.class, self, self.name, self.tupleBackingArray];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACUnarySequence.h",
    "content": "//\n//  RACUnarySequence.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSequence.h\"\n\n// Private class representing a sequence of exactly one value.\n@interface RACUnarySequence : RACSequence\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACUnarySequence.m",
    "content": "//\n//  RACUnarySequence.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-05-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACUnarySequence.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"NSObject+RACDescription.h\"\n\n@interface RACUnarySequence ()\n\n// The single value stored in this sequence.\n@property (nonatomic, strong, readwrite) id head;\n\n@end\n\n@implementation RACUnarySequence\n\n#pragma mark Properties\n\n@synthesize head = _head;\n\n#pragma mark Lifecycle\n\n+ (instancetype)return:(id)value {\n\tRACUnarySequence *sequence = [[self alloc] init];\n\tsequence.head = value;\n\treturn [sequence setNameWithFormat:@\"+return: %@\", RACDescription(value)];\n}\n\n#pragma mark RACSequence\n\n- (RACSequence *)tail {\n\treturn nil;\n}\n\n- (instancetype)bind:(RACStreamBindBlock (^)(void))block {\n\tRACStreamBindBlock bindBlock = block();\n\tBOOL stop = NO;\n\n\tRACSequence *result = (id)[bindBlock(self.head, &stop) setNameWithFormat:@\"[%@] -bind:\", self.name];\n\treturn result ?: self.class.empty;\n}\n\n#pragma mark NSCoding\n\n- (Class)classForCoder {\n\t// Unary sequences should be encoded as themselves, not array sequences.\n\treturn self.class;\n}\n\n- (id)initWithCoder:(NSCoder *)coder {\n\tid value = [coder decodeObjectForKey:@keypath(self.head)];\n\treturn [self.class return:value];\n}\n\n- (void)encodeWithCoder:(NSCoder *)coder {\n\tif (self.head != nil) [coder encodeObject:self.head forKey:@keypath(self.head)];\n}\n\n#pragma mark NSObject\n\n- (NSString *)description {\n\treturn [NSString stringWithFormat:@\"<%@: %p>{ name = %@, head = %@ }\", self.class, self, self.name, self.head];\n}\n\n- (NSUInteger)hash {\n\treturn [self.head hash];\n}\n\n- (BOOL)isEqual:(RACUnarySequence *)seq {\n\tif (self == seq) return YES;\n\tif (![seq isKindOfClass:RACUnarySequence.class]) return NO;\n\n\treturn self.head == seq.head || [(NSObject *)self.head isEqual:seq.head];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACUnit.h",
    "content": "//\n//  RACUnit.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/27/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n/// A unit represents an empty value.\n///\n/// It should never be necessary to create a unit yourself. Just use +defaultUnit.\n@interface RACUnit : NSObject\n\n/// A singleton instance.\n+ (RACUnit *)defaultUnit;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACUnit.m",
    "content": "//\n//  RACUnit.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/27/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACUnit.h\"\n\n@implementation RACUnit\n\n#pragma mark API\n\n+ (RACUnit *)defaultUnit {\n\tstatic dispatch_once_t onceToken;\n\tstatic RACUnit *defaultUnit = nil;\n\tdispatch_once(&onceToken, ^{\n\t\tdefaultUnit = [[self alloc] init];\n\t});\n\t\n\treturn defaultUnit;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACValueTransformer.h",
    "content": "//\n//  RACValueTransformer.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/6/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n// A private block based transformer.\n@interface RACValueTransformer : NSValueTransformer\n\n+ (instancetype)transformerWithBlock:(id (^)(id value))block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/RACValueTransformer.m",
    "content": "//\n//  RACValueTransformer.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/6/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACValueTransformer.h\"\n\n@interface RACValueTransformer ()\n@property (nonatomic, copy) id (^transformBlock)(id value);\n@end\n\n\n@implementation RACValueTransformer\n\n\n#pragma mark NSValueTransformer\n\n+ (BOOL)allowsReverseTransformation {\n\treturn NO;\n}\n\n- (id)transformedValue:(id)value {\n    return self.transformBlock(value);\n}\n\n\n#pragma mark API\n\n@synthesize transformBlock;\n\n+ (instancetype)transformerWithBlock:(id (^)(id value))block {\n\tNSCParameterAssert(block != NULL);\n\t\n\tRACValueTransformer *transformer = [[self alloc] init];\n\ttransformer.transformBlock = block;\n\treturn transformer;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/ReactiveCocoa-Bridging-Header.h",
    "content": "//\n//  Use this file to import your target's public headers that you would like to expose to Swift.\n//\n\n#import \"RACCommand.h\"\n#import \"RACDisposable.h\"\n#import \"RACEvent.h\"\n#import \"RACScheduler.h\"\n#import \"RACTargetQueueScheduler.h\"\n#import \"RACSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACStream.h\"\n#import \"RACSubscriber.h\"\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIActionSheet+RACSignalSupport.h",
    "content": "//\n//  UIActionSheet+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Dave Lee on 2013-06-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACDelegateProxy;\n@class RACSignal;\n\n@interface UIActionSheet (RACSignalSupport)\n\n/// A delegate proxy which will be set as the receiver's delegate when any of the\n/// methods in this category are used.\n@property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;\n\n/// Creates a signal for button clicks on the receiver.\n///\n/// When this method is invoked, the `rac_delegateProxy` will become the\n/// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy\n/// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't\n/// know how to handle. Setting the receiver's `delegate` afterward is\n/// considered undefined behavior.\n///\n/// Returns a signal which will send the index of the specific button clicked.\n/// The signal will complete when the receiver is deallocated.\n- (RACSignal *)rac_buttonClickedSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIActionSheet+RACSignalSupport.m",
    "content": "//\n//  UIActionSheet+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Dave Lee on 2013-06-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIActionSheet+RACSignalSupport.h\"\n#import \"RACDelegateProxy.h\"\n#import \"RACSignal+Operations.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import <objc/runtime.h>\n\n@implementation UIActionSheet (RACSignalSupport)\n\nstatic void RACUseDelegateProxy(UIActionSheet *self) {\n    if (self.delegate == self.rac_delegateProxy) return;\n\n    self.rac_delegateProxy.rac_proxiedDelegate = self.delegate;\n    self.delegate = (id)self.rac_delegateProxy;\n}\n\n- (RACDelegateProxy *)rac_delegateProxy {\n\tRACDelegateProxy *proxy = objc_getAssociatedObject(self, _cmd);\n\tif (proxy == nil) {\n\t\tproxy = [[RACDelegateProxy alloc] initWithProtocol:@protocol(UIActionSheetDelegate)];\n\t\tobjc_setAssociatedObject(self, _cmd, proxy, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t}\n\n\treturn proxy;\n}\n\n- (RACSignal *)rac_buttonClickedSignal {\n\tRACSignal *signal = [[[[self.rac_delegateProxy\n\t\tsignalForSelector:@selector(actionSheet:clickedButtonAtIndex:)]\n\t\treduceEach:^(UIActionSheet *actionSheet, NSNumber *buttonIndex) {\n\t\t\treturn buttonIndex;\n\t\t}]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_buttonClickedSignal\", RACDescription(self)];\n\n\tRACUseDelegateProxy(self);\n\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIAlertView+RACSignalSupport.h",
    "content": "//\n//  UIAlertView+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Henrik Hodne on 6/16/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACDelegateProxy;\n@class RACSignal;\n\n@interface UIAlertView (RACSignalSupport)\n\n/// A delegate proxy which will be set as the receiver's delegate when any of the\n/// methods in this category are used.\n@property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;\n\n/// Creates a signal for button clicks on the receiver.\n///\n/// When this method is invoked, the `rac_delegateProxy` will become the\n/// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy\n/// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't\n/// know how to handle. Setting the receiver's `delegate` afterward is considered\n/// undefined behavior.\n///\n/// Note that this signal will not send a value when the alert is dismissed\n/// programatically.\n///\n/// Returns a signal which will send the index of the specific button clicked.\n/// The signal will complete itself when the receiver is deallocated.\n- (RACSignal *)rac_buttonClickedSignal;\n\n/// Creates a signal for dismissal of the receiver.\n///\n/// When this method is invoked, the `rac_delegateProxy` will become the\n/// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy\n/// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't\n/// know how to handle. Setting the receiver's `delegate` afterward is considered\n/// undefined behavior.\n///\n/// Returns a signal which will send the index of the button associated with the\n/// dismissal. The signal will complete itself when the receiver is deallocated.\n- (RACSignal *)rac_willDismissSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIAlertView+RACSignalSupport.m",
    "content": "//\n//  UIAlertView+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Henrik Hodne on 6/16/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIAlertView+RACSignalSupport.h\"\n#import \"RACDelegateProxy.h\"\n#import \"RACSignal+Operations.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import <objc/runtime.h>\n\n@implementation UIAlertView (RACSignalSupport)\n\nstatic void RACUseDelegateProxy(UIAlertView *self) {\n\tif (self.delegate == self.rac_delegateProxy) return;\n\n\tself.rac_delegateProxy.rac_proxiedDelegate = self.delegate;\n\tself.delegate = (id)self.rac_delegateProxy;\n}\n\n- (RACDelegateProxy *)rac_delegateProxy {\n\tRACDelegateProxy *proxy = objc_getAssociatedObject(self, _cmd);\n\tif (proxy == nil) {\n\t\tproxy = [[RACDelegateProxy alloc] initWithProtocol:@protocol(UIAlertViewDelegate)];\n\t\tobjc_setAssociatedObject(self, _cmd, proxy, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t}\n\n\treturn proxy;\n}\n\n- (RACSignal *)rac_buttonClickedSignal {\n\tRACSignal *signal = [[[[self.rac_delegateProxy\n\t\tsignalForSelector:@selector(alertView:clickedButtonAtIndex:)]\n\t\treduceEach:^(UIAlertView *alertView, NSNumber *buttonIndex) {\n\t\t\treturn buttonIndex;\n\t\t}]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_buttonClickedSignal\", RACDescription(self)];\n\n\tRACUseDelegateProxy(self);\n\n\treturn signal;\n}\n\n- (RACSignal *)rac_willDismissSignal {\n\tRACSignal *signal = [[[[self.rac_delegateProxy\n\t\tsignalForSelector:@selector(alertView:willDismissWithButtonIndex:)]\n\t\treduceEach:^(UIAlertView *alertView, NSNumber *buttonIndex) {\n\t\t\treturn buttonIndex;\n\t\t}]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_willDismissSignal\", RACDescription(self)];\n\n\tRACUseDelegateProxy(self);\n\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIBarButtonItem+RACCommandSupport.h",
    "content": "//\n//  UIBarButtonItem+RACCommandSupport.h\n//  ReactiveCocoa\n//\n//  Created by Kyle LeNeau on 3/27/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACCommand<__contravariant InputType>;\n\n@interface UIBarButtonItem (RACCommandSupport)\n\n/// Sets the control's command. When the control is clicked, the command is\n/// executed with the sender of the event. The control's enabledness is bound\n/// to the command's `canExecute`.\n///\n/// Note: this will reset the control's target and action.\n@property (nonatomic, strong) RACCommand<__kindof UIBarButtonItem *> *rac_command;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIBarButtonItem+RACCommandSupport.m",
    "content": "//\n//  UIBarButtonItem+RACCommandSupport.m\n//  ReactiveCocoa\n//\n//  Created by Kyle LeNeau on 3/27/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIBarButtonItem+RACCommandSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"RACCommand.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import <objc/runtime.h>\n\nstatic void *UIControlRACCommandKey = &UIControlRACCommandKey;\nstatic void *UIControlEnabledDisposableKey = &UIControlEnabledDisposableKey;\n\n@implementation UIBarButtonItem (RACCommandSupport)\n\n- (RACCommand *)rac_command {\n\treturn objc_getAssociatedObject(self, UIControlRACCommandKey);\n}\n\n- (void)setRac_command:(RACCommand *)command {\n\tobjc_setAssociatedObject(self, UIControlRACCommandKey, command, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t\n\t// Check for stored signal in order to remove it and add a new one\n\tRACDisposable *disposable = objc_getAssociatedObject(self, UIControlEnabledDisposableKey);\n\t[disposable dispose];\n\t\n\tif (command == nil) return;\n\t\n\tdisposable = [command.enabled setKeyPath:@keypath(self.enabled) onObject:self];\n\tobjc_setAssociatedObject(self, UIControlEnabledDisposableKey, disposable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t\n\t[self rac_hijackActionAndTargetIfNeeded];\n}\n\n- (void)rac_hijackActionAndTargetIfNeeded {\n\tSEL hijackSelector = @selector(rac_commandPerformAction:);\n\tif (self.target == self && self.action == hijackSelector) return;\n\t\n\tif (self.target != nil) NSLog(@\"WARNING: UIBarButtonItem.rac_command hijacks the control's existing target and action.\");\n\t\n\tself.target = self;\n\tself.action = hijackSelector;\n}\n\n- (void)rac_commandPerformAction:(id)sender {\n\t[self.rac_command execute:sender];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIButton+RACCommandSupport.h",
    "content": "//\n//  UIButton+RACCommandSupport.h\n//  ReactiveCocoa\n//\n//  Created by Ash Furrow on 2013-06-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACCommand<__contravariant InputType>;\n\n@interface UIButton (RACCommandSupport)\n\n/// Sets the button's command. When the button is clicked, the command is\n/// executed with the sender of the event. The button's enabledness is bound\n/// to the command's `canExecute`.\n@property (nonatomic, strong) RACCommand<__kindof UIButton *> *rac_command;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIButton+RACCommandSupport.m",
    "content": "//\n//  UIButton+RACCommandSupport.m\n//  ReactiveCocoa\n//\n//  Created by Ash Furrow on 2013-06-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIButton+RACCommandSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"RACCommand.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import <objc/runtime.h>\n\nstatic void *UIButtonRACCommandKey = &UIButtonRACCommandKey;\nstatic void *UIButtonEnabledDisposableKey = &UIButtonEnabledDisposableKey;\n\n@implementation UIButton (RACCommandSupport)\n\n- (RACCommand *)rac_command {\n\treturn objc_getAssociatedObject(self, UIButtonRACCommandKey);\n}\n\n- (void)setRac_command:(RACCommand *)command {\n\tobjc_setAssociatedObject(self, UIButtonRACCommandKey, command, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t\n\t// Check for stored signal in order to remove it and add a new one\n\tRACDisposable *disposable = objc_getAssociatedObject(self, UIButtonEnabledDisposableKey);\n\t[disposable dispose];\n\t\n\tif (command == nil) return;\n\t\n\tdisposable = [command.enabled setKeyPath:@keypath(self.enabled) onObject:self];\n\tobjc_setAssociatedObject(self, UIButtonEnabledDisposableKey, disposable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t\n\t[self rac_hijackActionAndTargetIfNeeded];\n}\n\n- (void)rac_hijackActionAndTargetIfNeeded {\n\tSEL hijackSelector = @selector(rac_commandPerformAction:);\n\t\n\tfor (NSString *selector in [self actionsForTarget:self forControlEvent:UIControlEventTouchUpInside]) {\n\t\tif (hijackSelector == NSSelectorFromString(selector)) {\n\t\t\treturn;\n\t\t}\n\t}\n\t\n\t[self addTarget:self action:hijackSelector forControlEvents:UIControlEventTouchUpInside];\n}\n\n- (void)rac_commandPerformAction:(id)sender {\n\t[self.rac_command execute:sender];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UICollectionReusableView+RACSignalSupport.h",
    "content": "//\n//  UICollectionReusableView+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Kent Wong on 2013-10-04.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACSignal;\n\n// This category is only applicable to iOS >= 6.0.\n@interface UICollectionReusableView (RACSignalSupport)\n\n/// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon\n/// the receiver.\n///\n/// Examples\n///\n///  [[[self.cancelButton\n///     rac_signalForControlEvents:UIControlEventTouchUpInside]\n///     takeUntil:self.rac_prepareForReuseSignal]\n///     subscribeNext:^(UIButton *x) {\n///         // do other things\n///     }];\n@property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UICollectionReusableView+RACSignalSupport.m",
    "content": "//\n//  UICollectionReusableView+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Kent Wong on 2013-10-04.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UICollectionReusableView+RACSignalSupport.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACUnit.h\"\n#import <objc/runtime.h>\n\n@implementation UICollectionReusableView (RACSignalSupport)\n\n- (RACSignal *)rac_prepareForReuseSignal {\n\tRACSignal *signal = objc_getAssociatedObject(self, _cmd);\n\tif (signal != nil) return signal;\n\t\n\tsignal = [[[self\n\t\trac_signalForSelector:@selector(prepareForReuse)]\n\t\tmapReplace:RACUnit.defaultUnit]\n\t\tsetNameWithFormat:@\"%@ -rac_prepareForReuseSignal\", RACDescription(self)];\n\t\n\tobjc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIControl+RACSignalSupport.h",
    "content": "//\n//  UIControl+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACSignal;\n\n@interface UIControl (RACSignalSupport)\n\n/// Creates and returns a signal that sends the sender of the control event\n/// whenever one of the control events is triggered.\n- (RACSignal *)rac_signalForControlEvents:(UIControlEvents)controlEvents;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIControl+RACSignalSupport.m",
    "content": "//\n//  UIControl+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIControl+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n\n@implementation UIControl (RACSignalSupport)\n\n- (RACSignal *)rac_signalForControlEvents:(UIControlEvents)controlEvents {\n\t@weakify(self);\n\n\treturn [[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t@strongify(self);\n\n\t\t\t[self addTarget:subscriber action:@selector(sendNext:) forControlEvents:controlEvents];\n\n\t\t\tRACDisposable *disposable = [RACDisposable disposableWithBlock:^{\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}];\n\t\t\t[self.rac_deallocDisposable addDisposable:disposable];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t@strongify(self);\n\t\t\t\t[self.rac_deallocDisposable removeDisposable:disposable];\n\t\t\t\t[self removeTarget:subscriber action:@selector(sendNext:) forControlEvents:controlEvents];\n\t\t\t}];\n\t\t}]\n\t\tsetNameWithFormat:@\"%@ -rac_signalForControlEvents: %lx\", RACDescription(self), (unsigned long)controlEvents];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIControl+RACSignalSupportPrivate.h",
    "content": "//\n//  UIControl+RACSignalSupportPrivate.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 06/08/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UIControl (RACSignalSupportPrivate)\n\n// Adds a RACChannel-based interface to the receiver for the given\n// UIControlEvents and exposes it.\n//\n// controlEvents - A mask of UIControlEvents on which to send new values.\n// key           - The key whose value should be read and set when a control\n//                 event fires and when a value is sent to the\n//                 RACChannelTerminal respectively.\n// nilValue      - The value to be assigned to the key when `nil` is sent to the\n//                 RACChannelTerminal.\n//\n// Returns a RACChannelTerminal which will send future values from the receiver,\n// and update the receiver when values are sent to the terminal.\n- (RACChannelTerminal *)rac_channelForControlEvents:(UIControlEvents)controlEvents key:(NSString *)key nilValue:(id)nilValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIControl+RACSignalSupportPrivate.m",
    "content": "//\n//  UIControl+RACSignalSupportPrivate.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 06/08/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIControl+RACSignalSupportPrivate.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACLifting.h\"\n#import \"RACChannel.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import \"UIControl+RACSignalSupport.h\"\n\n@implementation UIControl (RACSignalSupportPrivate)\n\n- (RACChannelTerminal *)rac_channelForControlEvents:(UIControlEvents)controlEvents key:(NSString *)key nilValue:(id)nilValue {\n\tNSCParameterAssert(key.length > 0);\n\tkey = [key copy];\n\tRACChannel *channel = [[RACChannel alloc] init];\n\n\t[self.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t[channel.followingTerminal sendCompleted];\n\t}]];\n\n\tRACSignal *eventSignal = [[[self\n\t\trac_signalForControlEvents:controlEvents]\n\t\tmapReplace:key]\n\t\ttakeUntil:[[channel.followingTerminal\n\t\t\tignoreValues]\n\t\t\tcatchTo:RACSignal.empty]];\n\t[[self\n\t\trac_liftSelector:@selector(valueForKey:) withSignals:eventSignal, nil]\n\t\tsubscribe:channel.followingTerminal];\n\n\tRACSignal *valuesSignal = [channel.followingTerminal\n\t\tmap:^(id value) {\n\t\t\treturn value ?: nilValue;\n\t\t}];\n\t[self rac_liftSelector:@selector(setValue:forKey:) withSignals:valuesSignal, [RACSignal return:key], nil];\n\n\treturn channel.leadingTerminal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIDatePicker+RACSignalSupport.h",
    "content": "//\n//  UIDatePicker+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UIDatePicker (RACSignalSupport)\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// nilValue - The date to set when the terminal receives `nil`.\n///\n/// Returns a RACChannelTerminal that sends the receiver's date whenever the\n/// UIControlEventValueChanged control event is fired, and sets the date to the\n/// values it receives.\n- (RACChannelTerminal *)rac_newDateChannelWithNilValue:(NSDate *)nilValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIDatePicker+RACSignalSupport.m",
    "content": "//\n//  UIDatePicker+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIDatePicker+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UIDatePicker (RACSignalSupport)\n\n- (RACChannelTerminal *)rac_newDateChannelWithNilValue:(NSDate *)nilValue {\n\treturn [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.date) nilValue:nilValue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIGestureRecognizer+RACSignalSupport.h",
    "content": "//\n//  UIGestureRecognizer+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Vera on 5/5/13.\n//  Copyright (c) 2013 GitHub. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACSignal;\n\n@interface UIGestureRecognizer (RACSignalSupport)\n\n/// Returns a signal that sends the receiver when its gesture occurs.\n- (RACSignal *)rac_gestureSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIGestureRecognizer+RACSignalSupport.m",
    "content": "//\n//  UIGestureRecognizer+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Vera on 5/5/13.\n//  Copyright (c) 2013 GitHub. All rights reserved.\n//\n\n#import \"UIGestureRecognizer+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSubscriber.h\"\n\n@implementation UIGestureRecognizer (RACSignalSupport)\n\n- (RACSignal *)rac_gestureSignal {\n\t@weakify(self);\n\n\treturn [[RACSignal\n\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t@strongify(self);\n\n\t\t\t[self addTarget:subscriber action:@selector(sendNext:)];\n\t\t\t[self.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}]];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t@strongify(self);\n\t\t\t\t[self removeTarget:subscriber action:@selector(sendNext:)];\n\t\t\t}];\n\t\t}]\n\t\tsetNameWithFormat:@\"%@ -rac_gestureSignal\", RACDescription(self)];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIImagePickerController+RACSignalSupport.h",
    "content": "//\n//  UIImagePickerController+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Timur Kuchkarov on 28.03.14.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACDelegateProxy;\n@class RACSignal;\n\n@interface UIImagePickerController (RACSignalSupport)\n\n/// A delegate proxy which will be set as the receiver's delegate when any of the\n/// methods in this category are used.\n@property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;\n\n/// Creates a signal for every new selected image.\n///\n/// When this method is invoked, the `rac_delegateProxy` will become the\n/// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy\n/// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't\n/// know how to handle. Setting the receiver's `delegate` afterward is considered\n/// undefined behavior.\n///\n/// Returns a signal which will send the dictionary with info for the selected image.\n/// Caller is responsible for picker controller dismissal. The signal will complete\n/// itself when the receiver is deallocated or when user cancels selection.\n- (RACSignal *)rac_imageSelectedSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIImagePickerController+RACSignalSupport.m",
    "content": "//\n//  UIImagePickerController+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Timur Kuchkarov on 28.03.14.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n#import \"UIImagePickerController+RACSignalSupport.h\"\n#import \"RACDelegateProxy.h\"\n#import \"RACSignal+Operations.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import <objc/runtime.h>\n\n@implementation UIImagePickerController (RACSignalSupport)\n\nstatic void RACUseDelegateProxy(UIImagePickerController *self) {\n\tif (self.delegate == self.rac_delegateProxy) return;\n    \n\tself.rac_delegateProxy.rac_proxiedDelegate = self.delegate;\n\tself.delegate = (id)self.rac_delegateProxy;\n}\n\n- (RACDelegateProxy *)rac_delegateProxy {\n\tRACDelegateProxy *proxy = objc_getAssociatedObject(self, _cmd);\n\tif (proxy == nil) {\n\t\tproxy = [[RACDelegateProxy alloc] initWithProtocol:@protocol(UIImagePickerControllerDelegate)];\n\t\tobjc_setAssociatedObject(self, _cmd, proxy, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t}\n    \n\treturn proxy;\n}\n\n- (RACSignal *)rac_imageSelectedSignal {\n\tRACSignal *pickerCancelledSignal = [[self.rac_delegateProxy\n\t\tsignalForSelector:@selector(imagePickerControllerDidCancel:)]\n\t\tmerge:self.rac_willDeallocSignal];\n\t\t\n\tRACSignal *imagePickerSignal = [[[[self.rac_delegateProxy\n\t\tsignalForSelector:@selector(imagePickerController:didFinishPickingMediaWithInfo:)]\n\t\treduceEach:^(UIImagePickerController *pickerController, NSDictionary *userInfo) {\n\t\t\treturn userInfo;\n\t\t}]\n\t\ttakeUntil:pickerCancelledSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_imageSelectedSignal\", RACDescription(self)];\n    \n\tRACUseDelegateProxy(self);\n    \n\treturn imagePickerSignal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIRefreshControl+RACCommandSupport.h",
    "content": "//\n//  UIRefreshControl+RACCommandSupport.h\n//  ReactiveCocoa\n//\n//  Created by Dave Lee on 2013-10-17.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACCommand<__contravariant InputType>;\n\n@interface UIRefreshControl (RACCommandSupport)\n\n/// Manipulate the RACCommand property associated with this refresh control.\n///\n/// When this refresh control is activated by the user, the command will be\n/// executed. Upon completion or error of the execution signal, -endRefreshing\n/// will be invoked.\n@property (nonatomic, strong) RACCommand<__kindof UIRefreshControl *> *rac_command;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIRefreshControl+RACCommandSupport.m",
    "content": "//\n//  UIRefreshControl+RACCommandSupport.m\n//  ReactiveCocoa\n//\n//  Created by Dave Lee on 2013-10-17.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIRefreshControl+RACCommandSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"RACCommand.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"UIControl+RACSignalSupport.h\"\n#import <objc/runtime.h>\n\nstatic void *UIRefreshControlRACCommandKey = &UIRefreshControlRACCommandKey;\nstatic void *UIRefreshControlDisposableKey = &UIRefreshControlDisposableKey;\n\n@implementation UIRefreshControl (RACCommandSupport)\n\n- (RACCommand *)rac_command {\n\treturn objc_getAssociatedObject(self, UIRefreshControlRACCommandKey);\n}\n\n- (void)setRac_command:(RACCommand *)command {\n\tobjc_setAssociatedObject(self, UIRefreshControlRACCommandKey, command, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\n\t// Dispose of any active command associations.\n\t[objc_getAssociatedObject(self, UIRefreshControlDisposableKey) dispose];\n\n\tif (command == nil) return;\n\n\t// Like RAC(self, enabled) = command.enabled; but with access to disposable.\n\tRACDisposable *enabledDisposable = [command.enabled setKeyPath:@keypath(self.enabled) onObject:self];\n\n\tRACDisposable *executionDisposable = [[[[[self\n\t\trac_signalForControlEvents:UIControlEventValueChanged]\n\t\tmap:^(UIRefreshControl *x) {\n\t\t\treturn [[[command\n\t\t\t\texecute:x]\n\t\t\t\tcatchTo:[RACSignal empty]]\n\t\t\t\tthen:^{\n\t\t\t\t\treturn [RACSignal return:x];\n\t\t\t\t}];\n\t\t}]\n\t\tconcat]\n\t\tdeliverOnMainThread]\n\t\tsubscribeNext:^(UIRefreshControl *x) {\n\t\t\t[x endRefreshing];\n\t\t}];\n\n\tRACDisposable *commandDisposable = [RACCompoundDisposable compoundDisposableWithDisposables:@[ enabledDisposable, executionDisposable ]];\n\tobjc_setAssociatedObject(self, UIRefreshControlDisposableKey, commandDisposable, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISegmentedControl+RACSignalSupport.h",
    "content": "//\n//  UISegmentedControl+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UISegmentedControl (RACSignalSupport)\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// nilValue - The segment to select when the terminal receives `nil`.\n///\n/// Returns a RACChannelTerminal that sends the receiver's currently selected\n/// segment's index whenever the UIControlEventValueChanged control event is\n/// fired, and sets the selected segment index to the values it receives.\n- (RACChannelTerminal *)rac_newSelectedSegmentIndexChannelWithNilValue:(NSNumber *)nilValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISegmentedControl+RACSignalSupport.m",
    "content": "//\n//  UISegmentedControl+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UISegmentedControl+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UISegmentedControl (RACSignalSupport)\n\n- (RACChannelTerminal *)rac_newSelectedSegmentIndexChannelWithNilValue:(NSNumber *)nilValue {\n\treturn [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.selectedSegmentIndex) nilValue:nilValue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISlider+RACSignalSupport.h",
    "content": "//\n//  UISlider+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UISlider (RACSignalSupport)\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// nilValue - The value to set when the terminal receives `nil`.\n///\n/// Returns a RACChannelTerminal that sends the receiver's value whenever the\n/// UIControlEventValueChanged control event is fired, and sets the value to the\n/// values it receives.\n- (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISlider+RACSignalSupport.m",
    "content": "//\n//  UISlider+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UISlider+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UISlider (RACSignalSupport)\n\n- (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue {\n\treturn [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.value) nilValue:nilValue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIStepper+RACSignalSupport.h",
    "content": "//\n//  UIStepper+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UIStepper (RACSignalSupport)\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// nilValue - The value to set when the terminal receives `nil`.\n///\n/// Returns a RACChannelTerminal that sends the receiver's value whenever the\n/// UIControlEventValueChanged control event is fired, and sets the value to the\n/// values it receives.\n- (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UIStepper+RACSignalSupport.m",
    "content": "//\n//  UIStepper+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UIStepper+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UIStepper (RACSignalSupport)\n\n- (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue {\n\treturn [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.value) nilValue:nilValue];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISwitch+RACSignalSupport.h",
    "content": "//\n//  UISwitch+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n\n@interface UISwitch (RACSignalSupport)\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// Returns a RACChannelTerminal that sends whether the receiver is on whenever\n/// the UIControlEventValueChanged control event is fired, and sets it on or off\n/// when it receives @YES or @NO respectively.\n- (RACChannelTerminal *)rac_newOnChannel;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UISwitch+RACSignalSupport.m",
    "content": "//\n//  UISwitch+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 20/07/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UISwitch+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UISwitch (RACSignalSupport)\n\n- (RACChannelTerminal *)rac_newOnChannel {\n\treturn [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.on) nilValue:@NO];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITableViewCell+RACSignalSupport.h",
    "content": "//\n//  UITableViewCell+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACSignal;\n\n@interface UITableViewCell (RACSignalSupport)\n\n/// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon\n/// the receiver.\n///\n/// Examples\n///\n///  [[[self.cancelButton\n///     rac_signalForControlEvents:UIControlEventTouchUpInside]\n///     takeUntil:self.rac_prepareForReuseSignal]\n///     subscribeNext:^(UIButton *x) {\n///         // do other things\n///     }];\n@property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITableViewCell+RACSignalSupport.m",
    "content": "//\n//  UITableViewCell+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UITableViewCell+RACSignalSupport.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACUnit.h\"\n#import <objc/runtime.h>\n\n@implementation UITableViewCell (RACSignalSupport)\n\n- (RACSignal *)rac_prepareForReuseSignal {\n\tRACSignal *signal = objc_getAssociatedObject(self, _cmd);\n\tif (signal != nil) return signal;\n\n\tsignal = [[[self\n\t\trac_signalForSelector:@selector(prepareForReuse)]\n\t\tmapReplace:RACUnit.defaultUnit]\n\t\tsetNameWithFormat:@\"%@ -rac_prepareForReuseSignal\", RACDescription(self)];\n\t\n\tobjc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITableViewHeaderFooterView+RACSignalSupport.h",
    "content": "//\n//  UITableViewHeaderFooterView+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Syo Ikeda on 12/30/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACSignal;\n\n// This category is only applicable to iOS >= 6.0.\n@interface UITableViewHeaderFooterView (RACSignalSupport)\n\n/// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon\n/// the receiver.\n///\n/// Examples\n///\n///  [[[self.cancelButton\n///     rac_signalForControlEvents:UIControlEventTouchUpInside]\n///     takeUntil:self.rac_prepareForReuseSignal]\n///     subscribeNext:^(UIButton *x) {\n///         // do other things\n///     }];\n@property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITableViewHeaderFooterView+RACSignalSupport.m",
    "content": "//\n//  UITableViewHeaderFooterView+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Syo Ikeda on 12/30/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"UITableViewHeaderFooterView+RACSignalSupport.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACUnit.h\"\n#import <objc/runtime.h>\n\n@implementation UITableViewHeaderFooterView (RACSignalSupport)\n\n- (RACSignal *)rac_prepareForReuseSignal {\n\tRACSignal *signal = objc_getAssociatedObject(self, _cmd);\n\tif (signal != nil) return signal;\n\n\tsignal = [[[self\n\t\trac_signalForSelector:@selector(prepareForReuse)]\n\t\tmapReplace:RACUnit.defaultUnit]\n\t\tsetNameWithFormat:@\"%@ -rac_prepareForReuseSignal\", RACDescription(self)];\n\n\tobjc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITextField+RACSignalSupport.h",
    "content": "//\n//  UITextField+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACChannelTerminal;\n@class RACSignal;\n\n@interface UITextField (RACSignalSupport)\n\n/// Creates and returns a signal for the text of the field. It always starts with\n/// the current text. The signal sends next when the UIControlEventAllEditingEvents\n/// control event is fired on the control.\n- (RACSignal *)rac_textSignal;\n\n/// Creates a new RACChannel-based binding to the receiver.\n///\n/// Returns a RACChannelTerminal that sends the receiver's text whenever the\n/// UIControlEventAllEditingEvents control event is fired, and sets the text\n/// to the values it receives.\n- (RACChannelTerminal *)rac_newTextChannel;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITextField+RACSignalSupport.m",
    "content": "//\n//  UITextField+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 4/17/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"UITextField+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACSignal+Operations.h\"\n#import \"UIControl+RACSignalSupport.h\"\n#import \"UIControl+RACSignalSupportPrivate.h\"\n\n@implementation UITextField (RACSignalSupport)\n\n- (RACSignal *)rac_textSignal {\n\t@weakify(self);\n\treturn [[[[[RACSignal\n\t\tdefer:^{\n\t\t\t@strongify(self);\n\t\t\treturn [RACSignal return:self];\n\t\t}]\n\t\tconcat:[self rac_signalForControlEvents:UIControlEventAllEditingEvents]]\n\t\tmap:^(UITextField *x) {\n\t\t\treturn x.text;\n\t\t}]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_textSignal\", RACDescription(self)];\n}\n\n- (RACChannelTerminal *)rac_newTextChannel {\n\treturn [self rac_channelForControlEvents:UIControlEventAllEditingEvents key:@keypath(self.text) nilValue:@\"\"];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITextView+RACSignalSupport.h",
    "content": "//\n//  UITextView+RACSignalSupport.h\n//  ReactiveCocoa\n//\n//  Created by Cody Krieger on 5/18/12.\n//  Copyright (c) 2012 Cody Krieger. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n@class RACDelegateProxy;\n@class RACSignal;\n\n@interface UITextView (RACSignalSupport)\n\n/// A delegate proxy which will be set as the receiver's delegate when any of the\n/// methods in this category are used.\n@property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;\n\n/// Creates a signal for the text of the receiver.\n///\n/// When this method is invoked, the `rac_delegateProxy` will become the\n/// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy\n/// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't\n/// know how to handle. Setting the receiver's `delegate` afterward is\n/// considered undefined behavior.\n///\n/// Returns a signal which will send the current text upon subscription, then\n/// again whenever the receiver's text is changed. The signal will complete when\n/// the receiver is deallocated.\n- (RACSignal *)rac_textSignal;\n\n@end\n\n@interface UITextView (RACSignalSupportUnavailable)\n\n- (RACSignal *)rac_signalForDelegateMethod:(SEL)method __attribute__((unavailable(\"Use -rac_signalForSelector:fromProtocol: instead\")));\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/UITextView+RACSignalSupport.m",
    "content": "//\n//  UITextView+RACSignalSupport.m\n//  ReactiveCocoa\n//\n//  Created by Cody Krieger on 5/18/12.\n//  Copyright (c) 2012 Cody Krieger. All rights reserved.\n//\n\n#import \"UITextView+RACSignalSupport.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACDescription.h\"\n#import \"RACDelegateProxy.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACTuple.h\"\n#import <objc/runtime.h>\n\n@implementation UITextView (RACSignalSupport)\n\nstatic void RACUseDelegateProxy(UITextView *self) {\n    if (self.delegate == self.rac_delegateProxy) return;\n\n    self.rac_delegateProxy.rac_proxiedDelegate = self.delegate;\n    self.delegate = (id)self.rac_delegateProxy;\n}\n\n- (RACDelegateProxy *)rac_delegateProxy {\n\tRACDelegateProxy *proxy = objc_getAssociatedObject(self, _cmd);\n\tif (proxy == nil) {\n\t\tproxy = [[RACDelegateProxy alloc] initWithProtocol:@protocol(UITextViewDelegate)];\n\t\tobjc_setAssociatedObject(self, _cmd, proxy, OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n\t}\n\n\treturn proxy;\n}\n\n- (RACSignal *)rac_textSignal {\n\t@weakify(self);\n\tRACSignal *signal = [[[[[RACSignal\n\t\tdefer:^{\n\t\t\t@strongify(self);\n\t\t\treturn [RACSignal return:RACTuplePack(self)];\n\t\t}]\n\t\tconcat:[self.rac_delegateProxy signalForSelector:@selector(textViewDidChange:)]]\n\t\treduceEach:^(UITextView *x) {\n\t\t\treturn x.text;\n\t\t}]\n\t\ttakeUntil:self.rac_willDeallocSignal]\n\t\tsetNameWithFormat:@\"%@ -rac_textSignal\", RACDescription(self)];\n\n\tRACUseDelegateProxy(self);\n\n\treturn signal;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/extobjc/EXTKeyPathCoding.h",
    "content": "//\n//  EXTKeyPathCoding.h\n//  extobjc\n//\n//  Created by Justin Spahr-Summers on 19.06.12.\n//  Copyright (C) 2012 Justin Spahr-Summers.\n//  Released under the MIT license.\n//\n\n#import <Foundation/Foundation.h>\n#import \"metamacros.h\"\n\n/**\n * \\@keypath allows compile-time verification of key paths. Given a real object\n * receiver and key path:\n *\n * @code\n\nNSString *UTF8StringPath = @keypath(str.lowercaseString.UTF8String);\n// => @\"lowercaseString.UTF8String\"\n\nNSString *versionPath = @keypath(NSObject, version);\n// => @\"version\"\n\nNSString *lowercaseStringPath = @keypath(NSString.new, lowercaseString);\n// => @\"lowercaseString\"\n\n * @endcode\n *\n * ... the macro returns an \\c NSString containing all but the first path\n * component or argument (e.g., @\"lowercaseString.UTF8String\", @\"version\").\n *\n * In addition to simply creating a key path, this macro ensures that the key\n * path is valid at compile-time (causing a syntax error if not), and supports\n * refactoring, such that changing the name of the property will also update any\n * uses of \\@keypath.\n */\n#define keypath(...) \\\n    metamacro_if_eq(1, metamacro_argcount(__VA_ARGS__))(keypath1(__VA_ARGS__))(keypath2(__VA_ARGS__))\n\n#define keypath1(PATH) \\\n    (((void)(NO && ((void)PATH, NO)), strchr(# PATH, '.') + 1))\n\n#define keypath2(OBJ, PATH) \\\n    (((void)(NO && ((void)OBJ.PATH, NO)), # PATH))\n\n/**\n * \\@collectionKeypath allows compile-time verification of key paths across collections NSArray/NSSet etc. Given a real object\n * receiver, collection object receiver and related keypaths:\n *\n * @code\n \n NSString *employessFirstNamePath = @collectionKeypath(department.employees, Employee.new, firstName)\n // => @\"employees.firstName\"\n \n NSString *employessFirstNamePath = @collectionKeypath(Department.new, employees, Employee.new, firstName)\n // => @\"employees.firstName\"\n\n * @endcode\n *\n */\n#define collectionKeypath(...) \\\n    metamacro_if_eq(3, metamacro_argcount(__VA_ARGS__))(collectionKeypath3(__VA_ARGS__))(collectionKeypath4(__VA_ARGS__))\n\n#define collectionKeypath3(PATH, COLLECTION_OBJECT, COLLECTION_PATH) ([[NSString stringWithFormat:@\"%s.%s\",keypath(PATH), keypath(COLLECTION_OBJECT, COLLECTION_PATH)] UTF8String])\n\n#define collectionKeypath4(OBJ, PATH, COLLECTION_OBJECT, COLLECTION_PATH) ([[NSString stringWithFormat:@\"%s.%s\",keypath(OBJ, PATH), keypath(COLLECTION_OBJECT, COLLECTION_PATH)] UTF8String])\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/extobjc/EXTRuntimeExtensions.h",
    "content": "//\n//  EXTRuntimeExtensions.h\n//  extobjc\n//\n//  Created by Justin Spahr-Summers on 2011-03-05.\n//  Copyright (C) 2012 Justin Spahr-Summers.\n//  Released under the MIT license.\n//\n\n#import <objc/runtime.h>\n\n/**\n * Describes the memory management policy of a property.\n */\ntypedef enum {\n    /**\n     * The value is assigned.\n     */\n    rac_propertyMemoryManagementPolicyAssign = 0,\n\n    /**\n     * The value is retained.\n     */\n    rac_propertyMemoryManagementPolicyRetain,\n\n    /**\n     * The value is copied.\n     */\n    rac_propertyMemoryManagementPolicyCopy\n} rac_propertyMemoryManagementPolicy;\n\n/**\n * Describes the attributes and type information of a property.\n */\ntypedef struct {\n    /**\n     * Whether this property was declared with the \\c readonly attribute.\n     */\n    BOOL readonly;\n\n    /**\n     * Whether this property was declared with the \\c nonatomic attribute.\n     */\n    BOOL nonatomic;\n\n    /**\n     * Whether the property is a weak reference.\n     */\n    BOOL weak;\n\n    /**\n     * Whether the property is eligible for garbage collection.\n     */\n    BOOL canBeCollected;\n\n    /**\n     * Whether this property is defined with \\c \\@dynamic.\n     */\n    BOOL dynamic;\n\n    /**\n     * The memory management policy for this property. This will always be\n     * #rac_propertyMemoryManagementPolicyAssign if #readonly is \\c YES.\n     */\n    rac_propertyMemoryManagementPolicy memoryManagementPolicy;\n\n    /**\n     * The selector for the getter of this property. This will reflect any\n     * custom \\c getter= attribute provided in the property declaration, or the\n     * inferred getter name otherwise.\n     */\n    SEL getter;\n\n    /**\n     * The selector for the setter of this property. This will reflect any\n     * custom \\c setter= attribute provided in the property declaration, or the\n     * inferred setter name otherwise.\n     *\n     * @note If #readonly is \\c YES, this value will represent what the setter\n     * \\e would be, if the property were writable.\n     */\n    SEL setter;\n\n    /**\n     * The backing instance variable for this property, or \\c NULL if \\c\n     * \\c @synthesize was not used, and therefore no instance variable exists. This\n     * would also be the case if the property is implemented dynamically.\n     */\n    const char *ivar;\n\n    /**\n     * If this property is defined as being an instance of a specific class,\n     * this will be the class object representing it.\n     *\n     * This will be \\c nil if the property was defined as type \\c id, if the\n     * property is not of an object type, or if the class could not be found at\n     * runtime.\n     */\n    Class objectClass;\n\n    /**\n     * The type encoding for the value of this property. This is the type as it\n     * would be returned by the \\c \\@encode() directive.\n     */\n    char type[];\n} rac_propertyAttributes;\n\n/**\n * Finds the instance method named \\a aSelector on \\a aClass and returns it, or\n * returns \\c NULL if no such instance method exists. Unlike \\c\n * class_getInstanceMethod(), this does not search superclasses.\n *\n * @note To get class methods in this manner, use a metaclass for \\a aClass.\n */\nMethod rac_getImmediateInstanceMethod (Class aClass, SEL aSelector);\n\n/**\n * Returns a pointer to a structure containing information about \\a property.\n * You must \\c free() the returned pointer. Returns \\c NULL if there is an error\n * obtaining information from \\a property.\n */\nrac_propertyAttributes *rac_copyPropertyAttributes (objc_property_t property);\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/extobjc/EXTRuntimeExtensions.m",
    "content": "//\n//  EXTRuntimeExtensions.m\n//  extobjc\n//\n//  Created by Justin Spahr-Summers on 2011-03-05.\n//  Copyright (C) 2012 Justin Spahr-Summers.\n//  Released under the MIT license.\n//\n\n#import <ReactiveCocoa/EXTRuntimeExtensions.h>\n\n#import <ctype.h>\n#import <Foundation/Foundation.h>\n#import <libkern/OSAtomic.h>\n#import <objc/message.h>\n#import <pthread.h>\n#import <stdio.h>\n#import <stdlib.h>\n#import <string.h>\n\nrac_propertyAttributes *rac_copyPropertyAttributes (objc_property_t property) {\n    const char * const attrString = property_getAttributes(property);\n    if (!attrString) {\n        fprintf(stderr, \"ERROR: Could not get attribute string from property %s\\n\", property_getName(property));\n        return NULL;\n    }\n\n    if (attrString[0] != 'T') {\n        fprintf(stderr, \"ERROR: Expected attribute string \\\"%s\\\" for property %s to start with 'T'\\n\", attrString, property_getName(property));\n        return NULL;\n    }\n\n    const char *typeString = attrString + 1;\n    const char *next = NSGetSizeAndAlignment(typeString, NULL, NULL);\n    if (!next) {\n        fprintf(stderr, \"ERROR: Could not read past type in attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n        return NULL;\n    }\n\n    size_t typeLength = (size_t)(next - typeString);\n    if (!typeLength) {\n        fprintf(stderr, \"ERROR: Invalid type in attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n        return NULL;\n    }\n\n    // allocate enough space for the structure and the type string (plus a NUL)\n    rac_propertyAttributes *attributes = calloc(1, sizeof(rac_propertyAttributes) + typeLength + 1);\n    if (!attributes) {\n        fprintf(stderr, \"ERROR: Could not allocate rac_propertyAttributes structure for attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n        return NULL;\n    }\n\n    // copy the type string\n    strncpy(attributes->type, typeString, typeLength);\n    attributes->type[typeLength] = '\\0';\n\n    // if this is an object type, and immediately followed by a quoted string...\n    if (typeString[0] == *(@encode(id)) && typeString[1] == '\"') {\n        // we should be able to extract a class name\n        const char *className = typeString + 2;\n        next = strchr(className, '\"');\n\n        if (!next) {\n            fprintf(stderr, \"ERROR: Could not read class name in attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n            return NULL;\n        }\n\n        if (className != next) {\n            size_t classNameLength = (size_t)(next - className);\n            char trimmedName[classNameLength + 1];\n\n            strncpy(trimmedName, className, classNameLength);\n            trimmedName[classNameLength] = '\\0';\n\n            // attempt to look up the class in the runtime\n            attributes->objectClass = objc_getClass(trimmedName);\n        }\n    }\n\n    if (*next != '\\0') {\n        // skip past any junk before the first flag\n        next = strchr(next, ',');\n    }\n\n    while (next && *next == ',') {\n        char flag = next[1];\n        next += 2;\n\n        switch (flag) {\n        case '\\0':\n            break;\n\n        case 'R':\n            attributes->readonly = YES;\n            break;\n\n        case 'C':\n            attributes->memoryManagementPolicy = rac_propertyMemoryManagementPolicyCopy;\n            break;\n\n        case '&':\n            attributes->memoryManagementPolicy = rac_propertyMemoryManagementPolicyRetain;\n            break;\n\n        case 'N':\n            attributes->nonatomic = YES;\n            break;\n\n        case 'G':\n        case 'S':\n            {\n                const char *nextFlag = strchr(next, ',');\n                SEL name = NULL;\n\n                if (!nextFlag) {\n                    // assume that the rest of the string is the selector\n                    const char *selectorString = next;\n                    next = \"\";\n\n                    name = sel_registerName(selectorString);\n                } else {\n                    size_t selectorLength = (size_t)(nextFlag - next);\n                    if (!selectorLength) {\n                        fprintf(stderr, \"ERROR: Found zero length selector name in attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n                        goto errorOut;\n                    }\n\n                    char selectorString[selectorLength + 1];\n\n                    strncpy(selectorString, next, selectorLength);\n                    selectorString[selectorLength] = '\\0';\n\n                    name = sel_registerName(selectorString);\n                    next = nextFlag;\n                }\n\n                if (flag == 'G')\n                    attributes->getter = name;\n                else\n                    attributes->setter = name;\n            }\n\n            break;\n\n        case 'D':\n            attributes->dynamic = YES;\n            attributes->ivar = NULL;\n            break;\n\n        case 'V':\n            // assume that the rest of the string (if present) is the ivar name\n            if (*next == '\\0') {\n                // if there's nothing there, let's assume this is dynamic\n                attributes->ivar = NULL;\n            } else {\n                attributes->ivar = next;\n                next = \"\";\n            }\n\n            break;\n\n        case 'W':\n            attributes->weak = YES;\n            break;\n\n        case 'P':\n            attributes->canBeCollected = YES;\n            break;\n\n        case 't':\n            fprintf(stderr, \"ERROR: Old-style type encoding is unsupported in attribute string \\\"%s\\\" for property %s\\n\", attrString, property_getName(property));\n\n            // skip over this type encoding\n            while (*next != ',' && *next != '\\0')\n                ++next;\n\n            break;\n\n        default:\n            fprintf(stderr, \"ERROR: Unrecognized attribute string flag '%c' in attribute string \\\"%s\\\" for property %s\\n\", flag, attrString, property_getName(property));\n        }\n    }\n\n    if (next && *next != '\\0') {\n        fprintf(stderr, \"Warning: Unparsed data \\\"%s\\\" in attribute string \\\"%s\\\" for property %s\\n\", next, attrString, property_getName(property));\n    }\n\n    if (!attributes->getter) {\n        // use the property name as the getter by default\n        attributes->getter = sel_registerName(property_getName(property));\n    }\n\n    if (!attributes->setter) {\n        const char *propertyName = property_getName(property);\n        size_t propertyNameLength = strlen(propertyName);\n\n        // we want to transform the name to setProperty: style\n        size_t setterLength = propertyNameLength + 4;\n\n        char setterName[setterLength + 1];\n        strncpy(setterName, \"set\", 3);\n        strncpy(setterName + 3, propertyName, propertyNameLength);\n\n        // capitalize property name for the setter\n        setterName[3] = (char)toupper(setterName[3]);\n\n        setterName[setterLength - 1] = ':';\n        setterName[setterLength] = '\\0';\n\n        attributes->setter = sel_registerName(setterName);\n    }\n\n    return attributes;\n\nerrorOut:\n    free(attributes);\n    return NULL;\n}\n\nMethod rac_getImmediateInstanceMethod (Class aClass, SEL aSelector) {\n    unsigned methodCount = 0;\n    Method *methods = class_copyMethodList(aClass, &methodCount);\n    Method foundMethod = NULL;\n\n    for (unsigned methodIndex = 0;methodIndex < methodCount;++methodIndex) {\n        if (method_getName(methods[methodIndex]) == aSelector) {\n            foundMethod = methods[methodIndex];\n            break;\n        }\n    }\n\n    free(methods);\n    return foundMethod;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/extobjc/EXTScope.h",
    "content": "//\n//  EXTScope.h\n//  extobjc\n//\n//  Created by Justin Spahr-Summers on 2011-05-04.\n//  Copyright (C) 2012 Justin Spahr-Summers.\n//  Released under the MIT license.\n//\n\n#import \"metamacros.h\"\n\n/**\n * \\@onExit defines some code to be executed when the current scope exits. The\n * code must be enclosed in braces and terminated with a semicolon, and will be\n * executed regardless of how the scope is exited, including from exceptions,\n * \\c goto, \\c return, \\c break, and \\c continue.\n *\n * Provided code will go into a block to be executed later. Keep this in mind as\n * it pertains to memory management, restrictions on assignment, etc. Because\n * the code is used within a block, \\c return is a legal (though perhaps\n * confusing) way to exit the cleanup block early.\n *\n * Multiple \\@onExit statements in the same scope are executed in reverse\n * lexical order. This helps when pairing resource acquisition with \\@onExit\n * statements, as it guarantees teardown in the opposite order of acquisition.\n *\n * @note This statement cannot be used within scopes defined without braces\n * (like a one line \\c if). In practice, this is not an issue, since \\@onExit is\n * a useless construct in such a case anyways.\n */\n#define onExit \\\n    rac_keywordify \\\n    __strong rac_cleanupBlock_t metamacro_concat(rac_exitBlock_, __LINE__) __attribute__((cleanup(rac_executeCleanupBlock), unused)) = ^\n\n/**\n * Creates \\c __weak shadow variables for each of the variables provided as\n * arguments, which can later be made strong again with #strongify.\n *\n * This is typically used to weakly reference variables in a block, but then\n * ensure that the variables stay alive during the actual execution of the block\n * (if they were live upon entry).\n *\n * See #strongify for an example of usage.\n */\n#define weakify(...) \\\n    rac_keywordify \\\n    metamacro_foreach_cxt(rac_weakify_,, __weak, __VA_ARGS__)\n\n/**\n * Like #weakify, but uses \\c __unsafe_unretained instead, for targets or\n * classes that do not support weak references.\n */\n#define unsafeify(...) \\\n    rac_keywordify \\\n    metamacro_foreach_cxt(rac_weakify_,, __unsafe_unretained, __VA_ARGS__)\n\n/**\n * Strongly references each of the variables provided as arguments, which must\n * have previously been passed to #weakify.\n *\n * The strong references created will shadow the original variable names, such\n * that the original names can be used without issue (and a significantly\n * reduced risk of retain cycles) in the current scope.\n *\n * @code\n\n    id foo = [[NSObject alloc] init];\n    id bar = [[NSObject alloc] init];\n\n    @weakify(foo, bar);\n\n    // this block will not keep 'foo' or 'bar' alive\n    BOOL (^matchesFooOrBar)(id) = ^ BOOL (id obj){\n        // but now, upon entry, 'foo' and 'bar' will stay alive until the block has\n        // finished executing\n        @strongify(foo, bar);\n\n        return [foo isEqual:obj] || [bar isEqual:obj];\n    };\n\n * @endcode\n */\n#define strongify(...) \\\n    rac_keywordify \\\n    _Pragma(\"clang diagnostic push\") \\\n    _Pragma(\"clang diagnostic ignored \\\"-Wshadow\\\"\") \\\n    metamacro_foreach(rac_strongify_,, __VA_ARGS__) \\\n    _Pragma(\"clang diagnostic pop\")\n\n/*** implementation details follow ***/\ntypedef void (^rac_cleanupBlock_t)();\n\nstatic inline void rac_executeCleanupBlock (__strong rac_cleanupBlock_t *block) {\n    (*block)();\n}\n\n#define rac_weakify_(INDEX, CONTEXT, VAR) \\\n    CONTEXT __typeof__(VAR) metamacro_concat(VAR, _weak_) = (VAR);\n\n#define rac_strongify_(INDEX, VAR) \\\n    __strong __typeof__(VAR) VAR = metamacro_concat(VAR, _weak_);\n\n// Details about the choice of backing keyword:\n//\n// The use of @try/@catch/@finally can cause the compiler to suppress\n// return-type warnings.\n// The use of @autoreleasepool {} is not optimized away by the compiler,\n// resulting in superfluous creation of autorelease pools.\n//\n// Since neither option is perfect, and with no other alternatives, the\n// compromise is to use @autorelease in DEBUG builds to maintain compiler\n// analysis, and to use @try/@catch otherwise to avoid insertion of unnecessary\n// autorelease pools.\n#if DEBUG\n#define rac_keywordify autoreleasepool {}\n#else\n#define rac_keywordify try {} @catch (...) {}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Objective-C/extobjc/metamacros.h",
    "content": "/**\n * Macros for metaprogramming\n * ExtendedC\n *\n * Copyright (C) 2012 Justin Spahr-Summers\n * Released under the MIT license\n */\n\n#ifndef EXTC_METAMACROS_H\n#define EXTC_METAMACROS_H\n\n/**\n * Executes one or more expressions (which may have a void type, such as a call\n * to a function that returns no value) and always returns true.\n */\n#define metamacro_exprify(...) \\\n    ((__VA_ARGS__), true)\n\n/**\n * Returns a string representation of VALUE after full macro expansion.\n */\n#define metamacro_stringify(VALUE) \\\n        metamacro_stringify_(VALUE)\n\n/**\n * Returns A and B concatenated after full macro expansion.\n */\n#define metamacro_concat(A, B) \\\n        metamacro_concat_(A, B)\n\n/**\n * Returns the Nth variadic argument (starting from zero). At least\n * N + 1 variadic arguments must be given. N must be between zero and twenty,\n * inclusive.\n */\n#define metamacro_at(N, ...) \\\n        metamacro_concat(metamacro_at, N)(__VA_ARGS__)\n\n/**\n * Returns the number of arguments (up to twenty) provided to the macro. At\n * least one argument must be provided.\n *\n * Inspired by P99: http://p99.gforge.inria.fr\n */\n#define metamacro_argcount(...) \\\n        metamacro_at(20, __VA_ARGS__, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1)\n\n/**\n * Identical to #metamacro_foreach_cxt, except that no CONTEXT argument is\n * given. Only the index and current argument will thus be passed to MACRO.\n */\n#define metamacro_foreach(MACRO, SEP, ...) \\\n        metamacro_foreach_cxt(metamacro_foreach_iter, SEP, MACRO, __VA_ARGS__)\n\n/**\n * For each consecutive variadic argument (up to twenty), MACRO is passed the\n * zero-based index of the current argument, CONTEXT, and then the argument\n * itself. The results of adjoining invocations of MACRO are then separated by\n * SEP.\n *\n * Inspired by P99: http://p99.gforge.inria.fr\n */\n#define metamacro_foreach_cxt(MACRO, SEP, CONTEXT, ...) \\\n        metamacro_concat(metamacro_foreach_cxt, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__)\n\n/**\n * Identical to #metamacro_foreach_cxt. This can be used when the former would\n * fail due to recursive macro expansion.\n */\n#define metamacro_foreach_cxt_recursive(MACRO, SEP, CONTEXT, ...) \\\n        metamacro_concat(metamacro_foreach_cxt_recursive, metamacro_argcount(__VA_ARGS__))(MACRO, SEP, CONTEXT, __VA_ARGS__)\n\n/**\n * In consecutive order, appends each variadic argument (up to twenty) onto\n * BASE. The resulting concatenations are then separated by SEP.\n *\n * This is primarily useful to manipulate a list of macro invocations into instead\n * invoking a different, possibly related macro.\n */\n#define metamacro_foreach_concat(BASE, SEP, ...) \\\n        metamacro_foreach_cxt(metamacro_foreach_concat_iter, SEP, BASE, __VA_ARGS__)\n\n/**\n * Iterates COUNT times, each time invoking MACRO with the current index\n * (starting at zero) and CONTEXT. The results of adjoining invocations of MACRO\n * are then separated by SEP.\n *\n * COUNT must be an integer between zero and twenty, inclusive.\n */\n#define metamacro_for_cxt(COUNT, MACRO, SEP, CONTEXT) \\\n        metamacro_concat(metamacro_for_cxt, COUNT)(MACRO, SEP, CONTEXT)\n\n/**\n * Returns the first argument given. At least one argument must be provided.\n *\n * This is useful when implementing a variadic macro, where you may have only\n * one variadic argument, but no way to retrieve it (for example, because \\c ...\n * always needs to match at least one argument).\n *\n * @code\n\n#define varmacro(...) \\\n    metamacro_head(__VA_ARGS__)\n\n * @endcode\n */\n#define metamacro_head(...) \\\n        metamacro_head_(__VA_ARGS__, 0)\n\n/**\n * Returns every argument except the first. At least two arguments must be\n * provided.\n */\n#define metamacro_tail(...) \\\n        metamacro_tail_(__VA_ARGS__)\n\n/**\n * Returns the first N (up to twenty) variadic arguments as a new argument list.\n * At least N variadic arguments must be provided.\n */\n#define metamacro_take(N, ...) \\\n        metamacro_concat(metamacro_take, N)(__VA_ARGS__)\n\n/**\n * Removes the first N (up to twenty) variadic arguments from the given argument\n * list. At least N variadic arguments must be provided.\n */\n#define metamacro_drop(N, ...) \\\n        metamacro_concat(metamacro_drop, N)(__VA_ARGS__)\n\n/**\n * Decrements VAL, which must be a number between zero and twenty, inclusive.\n *\n * This is primarily useful when dealing with indexes and counts in\n * metaprogramming.\n */\n#define metamacro_dec(VAL) \\\n        metamacro_at(VAL, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)\n\n/**\n * Increments VAL, which must be a number between zero and twenty, inclusive.\n *\n * This is primarily useful when dealing with indexes and counts in\n * metaprogramming.\n */\n#define metamacro_inc(VAL) \\\n        metamacro_at(VAL, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)\n\n/**\n * If A is equal to B, the next argument list is expanded; otherwise, the\n * argument list after that is expanded. A and B must be numbers between zero\n * and twenty, inclusive. Additionally, B must be greater than or equal to A.\n *\n * @code\n\n// expands to true\nmetamacro_if_eq(0, 0)(true)(false)\n\n// expands to false\nmetamacro_if_eq(0, 1)(true)(false)\n\n * @endcode\n *\n * This is primarily useful when dealing with indexes and counts in\n * metaprogramming.\n */\n#define metamacro_if_eq(A, B) \\\n        metamacro_concat(metamacro_if_eq, A)(B)\n\n/**\n * Identical to #metamacro_if_eq. This can be used when the former would fail\n * due to recursive macro expansion.\n */\n#define metamacro_if_eq_recursive(A, B) \\\n        metamacro_concat(metamacro_if_eq_recursive, A)(B)\n\n/**\n * Returns 1 if N is an even number, or 0 otherwise. N must be between zero and\n * twenty, inclusive.\n *\n * For the purposes of this test, zero is considered even.\n */\n#define metamacro_is_even(N) \\\n        metamacro_at(N, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)\n\n/**\n * Returns the logical NOT of B, which must be the number zero or one.\n */\n#define metamacro_not(B) \\\n        metamacro_at(B, 1, 0)\n\n// IMPLEMENTATION DETAILS FOLLOW!\n// Do not write code that depends on anything below this line.\n#define metamacro_stringify_(VALUE) # VALUE\n#define metamacro_concat_(A, B) A ## B\n#define metamacro_foreach_iter(INDEX, MACRO, ARG) MACRO(INDEX, ARG)\n#define metamacro_head_(FIRST, ...) FIRST\n#define metamacro_tail_(FIRST, ...) __VA_ARGS__\n#define metamacro_consume_(...)\n#define metamacro_expand_(...) __VA_ARGS__\n\n// implemented from scratch so that metamacro_concat() doesn't end up nesting\n#define metamacro_foreach_concat_iter(INDEX, BASE, ARG) metamacro_foreach_concat_iter_(BASE, ARG)\n#define metamacro_foreach_concat_iter_(BASE, ARG) BASE ## ARG\n\n// metamacro_at expansions\n#define metamacro_at0(...) metamacro_head(__VA_ARGS__)\n#define metamacro_at1(_0, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at2(_0, _1, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at3(_0, _1, _2, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at4(_0, _1, _2, _3, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at5(_0, _1, _2, _3, _4, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at6(_0, _1, _2, _3, _4, _5, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at7(_0, _1, _2, _3, _4, _5, _6, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at8(_0, _1, _2, _3, _4, _5, _6, _7, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at9(_0, _1, _2, _3, _4, _5, _6, _7, _8, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at10(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at11(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at12(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at13(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at14(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at15(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at16(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at17(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at18(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at19(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, ...) metamacro_head(__VA_ARGS__)\n#define metamacro_at20(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, ...) metamacro_head(__VA_ARGS__)\n\n// metamacro_foreach_cxt expansions\n#define metamacro_foreach_cxt0(MACRO, SEP, CONTEXT)\n#define metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0)\n\n#define metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \\\n    metamacro_foreach_cxt1(MACRO, SEP, CONTEXT, _0) \\\n    SEP \\\n    MACRO(1, CONTEXT, _1)\n\n#define metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \\\n    metamacro_foreach_cxt2(MACRO, SEP, CONTEXT, _0, _1) \\\n    SEP \\\n    MACRO(2, CONTEXT, _2)\n\n#define metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \\\n    metamacro_foreach_cxt3(MACRO, SEP, CONTEXT, _0, _1, _2) \\\n    SEP \\\n    MACRO(3, CONTEXT, _3)\n\n#define metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \\\n    metamacro_foreach_cxt4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \\\n    SEP \\\n    MACRO(4, CONTEXT, _4)\n\n#define metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \\\n    metamacro_foreach_cxt5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \\\n    SEP \\\n    MACRO(5, CONTEXT, _5)\n\n#define metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \\\n    metamacro_foreach_cxt6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \\\n    SEP \\\n    MACRO(6, CONTEXT, _6)\n\n#define metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \\\n    metamacro_foreach_cxt7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \\\n    SEP \\\n    MACRO(7, CONTEXT, _7)\n\n#define metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \\\n    metamacro_foreach_cxt8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \\\n    SEP \\\n    MACRO(8, CONTEXT, _8)\n\n#define metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \\\n    metamacro_foreach_cxt9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \\\n    SEP \\\n    MACRO(9, CONTEXT, _9)\n\n#define metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \\\n    metamacro_foreach_cxt10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \\\n    SEP \\\n    MACRO(10, CONTEXT, _10)\n\n#define metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \\\n    metamacro_foreach_cxt11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \\\n    SEP \\\n    MACRO(11, CONTEXT, _11)\n\n#define metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \\\n    metamacro_foreach_cxt12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \\\n    SEP \\\n    MACRO(12, CONTEXT, _12)\n\n#define metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \\\n    metamacro_foreach_cxt13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \\\n    SEP \\\n    MACRO(13, CONTEXT, _13)\n\n#define metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \\\n    metamacro_foreach_cxt14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \\\n    SEP \\\n    MACRO(14, CONTEXT, _14)\n\n#define metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \\\n    metamacro_foreach_cxt15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \\\n    SEP \\\n    MACRO(15, CONTEXT, _15)\n\n#define metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \\\n    metamacro_foreach_cxt16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \\\n    SEP \\\n    MACRO(16, CONTEXT, _16)\n\n#define metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \\\n    metamacro_foreach_cxt17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \\\n    SEP \\\n    MACRO(17, CONTEXT, _17)\n\n#define metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \\\n    metamacro_foreach_cxt18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \\\n    SEP \\\n    MACRO(18, CONTEXT, _18)\n\n#define metamacro_foreach_cxt20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \\\n    metamacro_foreach_cxt19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \\\n    SEP \\\n    MACRO(19, CONTEXT, _19)\n\n// metamacro_foreach_cxt_recursive expansions\n#define metamacro_foreach_cxt_recursive0(MACRO, SEP, CONTEXT)\n#define metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) MACRO(0, CONTEXT, _0)\n\n#define metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \\\n    metamacro_foreach_cxt_recursive1(MACRO, SEP, CONTEXT, _0) \\\n    SEP \\\n    MACRO(1, CONTEXT, _1)\n\n#define metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \\\n    metamacro_foreach_cxt_recursive2(MACRO, SEP, CONTEXT, _0, _1) \\\n    SEP \\\n    MACRO(2, CONTEXT, _2)\n\n#define metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \\\n    metamacro_foreach_cxt_recursive3(MACRO, SEP, CONTEXT, _0, _1, _2) \\\n    SEP \\\n    MACRO(3, CONTEXT, _3)\n\n#define metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \\\n    metamacro_foreach_cxt_recursive4(MACRO, SEP, CONTEXT, _0, _1, _2, _3) \\\n    SEP \\\n    MACRO(4, CONTEXT, _4)\n\n#define metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \\\n    metamacro_foreach_cxt_recursive5(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4) \\\n    SEP \\\n    MACRO(5, CONTEXT, _5)\n\n#define metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \\\n    metamacro_foreach_cxt_recursive6(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5) \\\n    SEP \\\n    MACRO(6, CONTEXT, _6)\n\n#define metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \\\n    metamacro_foreach_cxt_recursive7(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6) \\\n    SEP \\\n    MACRO(7, CONTEXT, _7)\n\n#define metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \\\n    metamacro_foreach_cxt_recursive8(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7) \\\n    SEP \\\n    MACRO(8, CONTEXT, _8)\n\n#define metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \\\n    metamacro_foreach_cxt_recursive9(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8) \\\n    SEP \\\n    MACRO(9, CONTEXT, _9)\n\n#define metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \\\n    metamacro_foreach_cxt_recursive10(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9) \\\n    SEP \\\n    MACRO(10, CONTEXT, _10)\n\n#define metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \\\n    metamacro_foreach_cxt_recursive11(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) \\\n    SEP \\\n    MACRO(11, CONTEXT, _11)\n\n#define metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \\\n    metamacro_foreach_cxt_recursive12(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) \\\n    SEP \\\n    MACRO(12, CONTEXT, _12)\n\n#define metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \\\n    metamacro_foreach_cxt_recursive13(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12) \\\n    SEP \\\n    MACRO(13, CONTEXT, _13)\n\n#define metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \\\n    metamacro_foreach_cxt_recursive14(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13) \\\n    SEP \\\n    MACRO(14, CONTEXT, _14)\n\n#define metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \\\n    metamacro_foreach_cxt_recursive15(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14) \\\n    SEP \\\n    MACRO(15, CONTEXT, _15)\n\n#define metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \\\n    metamacro_foreach_cxt_recursive16(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15) \\\n    SEP \\\n    MACRO(16, CONTEXT, _16)\n\n#define metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \\\n    metamacro_foreach_cxt_recursive17(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \\\n    SEP \\\n    MACRO(17, CONTEXT, _17)\n\n#define metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \\\n    metamacro_foreach_cxt_recursive18(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17) \\\n    SEP \\\n    MACRO(18, CONTEXT, _18)\n\n#define metamacro_foreach_cxt_recursive20(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19) \\\n    metamacro_foreach_cxt_recursive19(MACRO, SEP, CONTEXT, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18) \\\n    SEP \\\n    MACRO(19, CONTEXT, _19)\n\n// metamacro_for_cxt expansions\n#define metamacro_for_cxt0(MACRO, SEP, CONTEXT)\n#define metamacro_for_cxt1(MACRO, SEP, CONTEXT) MACRO(0, CONTEXT)\n\n#define metamacro_for_cxt2(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt1(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(1, CONTEXT)\n\n#define metamacro_for_cxt3(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt2(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(2, CONTEXT)\n\n#define metamacro_for_cxt4(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt3(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(3, CONTEXT)\n\n#define metamacro_for_cxt5(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt4(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(4, CONTEXT)\n\n#define metamacro_for_cxt6(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt5(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(5, CONTEXT)\n\n#define metamacro_for_cxt7(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt6(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(6, CONTEXT)\n\n#define metamacro_for_cxt8(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt7(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(7, CONTEXT)\n\n#define metamacro_for_cxt9(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt8(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(8, CONTEXT)\n\n#define metamacro_for_cxt10(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt9(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(9, CONTEXT)\n\n#define metamacro_for_cxt11(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt10(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(10, CONTEXT)\n\n#define metamacro_for_cxt12(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt11(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(11, CONTEXT)\n\n#define metamacro_for_cxt13(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt12(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(12, CONTEXT)\n\n#define metamacro_for_cxt14(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt13(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(13, CONTEXT)\n\n#define metamacro_for_cxt15(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt14(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(14, CONTEXT)\n\n#define metamacro_for_cxt16(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt15(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(15, CONTEXT)\n\n#define metamacro_for_cxt17(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt16(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(16, CONTEXT)\n\n#define metamacro_for_cxt18(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt17(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(17, CONTEXT)\n\n#define metamacro_for_cxt19(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt18(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(18, CONTEXT)\n\n#define metamacro_for_cxt20(MACRO, SEP, CONTEXT) \\\n    metamacro_for_cxt19(MACRO, SEP, CONTEXT) \\\n    SEP \\\n    MACRO(19, CONTEXT)\n\n// metamacro_if_eq expansions\n#define metamacro_if_eq0(VALUE) \\\n    metamacro_concat(metamacro_if_eq0_, VALUE)\n\n#define metamacro_if_eq0_0(...) __VA_ARGS__ metamacro_consume_\n#define metamacro_if_eq0_1(...) metamacro_expand_\n#define metamacro_if_eq0_2(...) metamacro_expand_\n#define metamacro_if_eq0_3(...) metamacro_expand_\n#define metamacro_if_eq0_4(...) metamacro_expand_\n#define metamacro_if_eq0_5(...) metamacro_expand_\n#define metamacro_if_eq0_6(...) metamacro_expand_\n#define metamacro_if_eq0_7(...) metamacro_expand_\n#define metamacro_if_eq0_8(...) metamacro_expand_\n#define metamacro_if_eq0_9(...) metamacro_expand_\n#define metamacro_if_eq0_10(...) metamacro_expand_\n#define metamacro_if_eq0_11(...) metamacro_expand_\n#define metamacro_if_eq0_12(...) metamacro_expand_\n#define metamacro_if_eq0_13(...) metamacro_expand_\n#define metamacro_if_eq0_14(...) metamacro_expand_\n#define metamacro_if_eq0_15(...) metamacro_expand_\n#define metamacro_if_eq0_16(...) metamacro_expand_\n#define metamacro_if_eq0_17(...) metamacro_expand_\n#define metamacro_if_eq0_18(...) metamacro_expand_\n#define metamacro_if_eq0_19(...) metamacro_expand_\n#define metamacro_if_eq0_20(...) metamacro_expand_\n\n#define metamacro_if_eq1(VALUE) metamacro_if_eq0(metamacro_dec(VALUE))\n#define metamacro_if_eq2(VALUE) metamacro_if_eq1(metamacro_dec(VALUE))\n#define metamacro_if_eq3(VALUE) metamacro_if_eq2(metamacro_dec(VALUE))\n#define metamacro_if_eq4(VALUE) metamacro_if_eq3(metamacro_dec(VALUE))\n#define metamacro_if_eq5(VALUE) metamacro_if_eq4(metamacro_dec(VALUE))\n#define metamacro_if_eq6(VALUE) metamacro_if_eq5(metamacro_dec(VALUE))\n#define metamacro_if_eq7(VALUE) metamacro_if_eq6(metamacro_dec(VALUE))\n#define metamacro_if_eq8(VALUE) metamacro_if_eq7(metamacro_dec(VALUE))\n#define metamacro_if_eq9(VALUE) metamacro_if_eq8(metamacro_dec(VALUE))\n#define metamacro_if_eq10(VALUE) metamacro_if_eq9(metamacro_dec(VALUE))\n#define metamacro_if_eq11(VALUE) metamacro_if_eq10(metamacro_dec(VALUE))\n#define metamacro_if_eq12(VALUE) metamacro_if_eq11(metamacro_dec(VALUE))\n#define metamacro_if_eq13(VALUE) metamacro_if_eq12(metamacro_dec(VALUE))\n#define metamacro_if_eq14(VALUE) metamacro_if_eq13(metamacro_dec(VALUE))\n#define metamacro_if_eq15(VALUE) metamacro_if_eq14(metamacro_dec(VALUE))\n#define metamacro_if_eq16(VALUE) metamacro_if_eq15(metamacro_dec(VALUE))\n#define metamacro_if_eq17(VALUE) metamacro_if_eq16(metamacro_dec(VALUE))\n#define metamacro_if_eq18(VALUE) metamacro_if_eq17(metamacro_dec(VALUE))\n#define metamacro_if_eq19(VALUE) metamacro_if_eq18(metamacro_dec(VALUE))\n#define metamacro_if_eq20(VALUE) metamacro_if_eq19(metamacro_dec(VALUE))\n\n// metamacro_if_eq_recursive expansions\n#define metamacro_if_eq_recursive0(VALUE) \\\n    metamacro_concat(metamacro_if_eq_recursive0_, VALUE)\n\n#define metamacro_if_eq_recursive0_0(...) __VA_ARGS__ metamacro_consume_\n#define metamacro_if_eq_recursive0_1(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_2(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_3(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_4(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_5(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_6(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_7(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_8(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_9(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_10(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_11(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_12(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_13(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_14(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_15(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_16(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_17(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_18(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_19(...) metamacro_expand_\n#define metamacro_if_eq_recursive0_20(...) metamacro_expand_\n\n#define metamacro_if_eq_recursive1(VALUE) metamacro_if_eq_recursive0(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive2(VALUE) metamacro_if_eq_recursive1(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive3(VALUE) metamacro_if_eq_recursive2(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive4(VALUE) metamacro_if_eq_recursive3(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive5(VALUE) metamacro_if_eq_recursive4(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive6(VALUE) metamacro_if_eq_recursive5(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive7(VALUE) metamacro_if_eq_recursive6(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive8(VALUE) metamacro_if_eq_recursive7(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive9(VALUE) metamacro_if_eq_recursive8(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive10(VALUE) metamacro_if_eq_recursive9(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive11(VALUE) metamacro_if_eq_recursive10(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive12(VALUE) metamacro_if_eq_recursive11(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive13(VALUE) metamacro_if_eq_recursive12(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive14(VALUE) metamacro_if_eq_recursive13(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive15(VALUE) metamacro_if_eq_recursive14(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive16(VALUE) metamacro_if_eq_recursive15(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive17(VALUE) metamacro_if_eq_recursive16(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive18(VALUE) metamacro_if_eq_recursive17(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive19(VALUE) metamacro_if_eq_recursive18(metamacro_dec(VALUE))\n#define metamacro_if_eq_recursive20(VALUE) metamacro_if_eq_recursive19(metamacro_dec(VALUE))\n\n// metamacro_take expansions\n#define metamacro_take0(...)\n#define metamacro_take1(...) metamacro_head(__VA_ARGS__)\n#define metamacro_take2(...) metamacro_head(__VA_ARGS__), metamacro_take1(metamacro_tail(__VA_ARGS__))\n#define metamacro_take3(...) metamacro_head(__VA_ARGS__), metamacro_take2(metamacro_tail(__VA_ARGS__))\n#define metamacro_take4(...) metamacro_head(__VA_ARGS__), metamacro_take3(metamacro_tail(__VA_ARGS__))\n#define metamacro_take5(...) metamacro_head(__VA_ARGS__), metamacro_take4(metamacro_tail(__VA_ARGS__))\n#define metamacro_take6(...) metamacro_head(__VA_ARGS__), metamacro_take5(metamacro_tail(__VA_ARGS__))\n#define metamacro_take7(...) metamacro_head(__VA_ARGS__), metamacro_take6(metamacro_tail(__VA_ARGS__))\n#define metamacro_take8(...) metamacro_head(__VA_ARGS__), metamacro_take7(metamacro_tail(__VA_ARGS__))\n#define metamacro_take9(...) metamacro_head(__VA_ARGS__), metamacro_take8(metamacro_tail(__VA_ARGS__))\n#define metamacro_take10(...) metamacro_head(__VA_ARGS__), metamacro_take9(metamacro_tail(__VA_ARGS__))\n#define metamacro_take11(...) metamacro_head(__VA_ARGS__), metamacro_take10(metamacro_tail(__VA_ARGS__))\n#define metamacro_take12(...) metamacro_head(__VA_ARGS__), metamacro_take11(metamacro_tail(__VA_ARGS__))\n#define metamacro_take13(...) metamacro_head(__VA_ARGS__), metamacro_take12(metamacro_tail(__VA_ARGS__))\n#define metamacro_take14(...) metamacro_head(__VA_ARGS__), metamacro_take13(metamacro_tail(__VA_ARGS__))\n#define metamacro_take15(...) metamacro_head(__VA_ARGS__), metamacro_take14(metamacro_tail(__VA_ARGS__))\n#define metamacro_take16(...) metamacro_head(__VA_ARGS__), metamacro_take15(metamacro_tail(__VA_ARGS__))\n#define metamacro_take17(...) metamacro_head(__VA_ARGS__), metamacro_take16(metamacro_tail(__VA_ARGS__))\n#define metamacro_take18(...) metamacro_head(__VA_ARGS__), metamacro_take17(metamacro_tail(__VA_ARGS__))\n#define metamacro_take19(...) metamacro_head(__VA_ARGS__), metamacro_take18(metamacro_tail(__VA_ARGS__))\n#define metamacro_take20(...) metamacro_head(__VA_ARGS__), metamacro_take19(metamacro_tail(__VA_ARGS__))\n\n// metamacro_drop expansions\n#define metamacro_drop0(...) __VA_ARGS__\n#define metamacro_drop1(...) metamacro_tail(__VA_ARGS__)\n#define metamacro_drop2(...) metamacro_drop1(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop3(...) metamacro_drop2(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop4(...) metamacro_drop3(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop5(...) metamacro_drop4(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop6(...) metamacro_drop5(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop7(...) metamacro_drop6(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop8(...) metamacro_drop7(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop9(...) metamacro_drop8(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop10(...) metamacro_drop9(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop11(...) metamacro_drop10(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop12(...) metamacro_drop11(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop13(...) metamacro_drop12(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop14(...) metamacro_drop13(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop15(...) metamacro_drop14(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop16(...) metamacro_drop15(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop17(...) metamacro_drop16(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop18(...) metamacro_drop17(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop19(...) metamacro_drop18(metamacro_tail(__VA_ARGS__))\n#define metamacro_drop20(...) metamacro_drop19(metamacro_tail(__VA_ARGS__))\n\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/ReactiveCocoa.h",
    "content": "//\n//  ReactiveCocoa.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/5/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Foundation/Foundation.h>\n\n//! Project version number for ReactiveCocoa.\nFOUNDATION_EXPORT double ReactiveCocoaVersionNumber;\n\n//! Project version string for ReactiveCocoa.\nFOUNDATION_EXPORT const unsigned char ReactiveCocoaVersionString[];\n\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import <ReactiveCocoa/EXTScope.h>\n#import <ReactiveCocoa/NSArray+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSData+RACSupport.h>\n#import <ReactiveCocoa/NSDictionary+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSEnumerator+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSFileHandle+RACSupport.h>\n#import <ReactiveCocoa/NSNotificationCenter+RACSupport.h>\n#import <ReactiveCocoa/NSObject+RACDeallocating.h>\n#import <ReactiveCocoa/NSObject+RACLifting.h>\n#import <ReactiveCocoa/NSObject+RACPropertySubscribing.h>\n#import <ReactiveCocoa/NSObject+RACSelectorSignal.h>\n#import <ReactiveCocoa/NSOrderedSet+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSSet+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSString+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSString+RACSupport.h>\n#import <ReactiveCocoa/NSIndexSet+RACSequenceAdditions.h>\n#import <ReactiveCocoa/NSUserDefaults+RACSupport.h>\n#import <ReactiveCocoa/RACBehaviorSubject.h>\n#import <ReactiveCocoa/RACChannel.h>\n#import <ReactiveCocoa/RACCommand.h>\n#import <ReactiveCocoa/RACCompoundDisposable.h>\n#import <ReactiveCocoa/RACDelegateProxy.h>\n#import <ReactiveCocoa/RACDisposable.h>\n#import <ReactiveCocoa/RACDynamicPropertySuperclass.h>\n#import <ReactiveCocoa/RACEvent.h>\n#import <ReactiveCocoa/RACGroupedSignal.h>\n#import <ReactiveCocoa/RACKVOChannel.h>\n#import <ReactiveCocoa/RACMulticastConnection.h>\n#import <ReactiveCocoa/RACQueueScheduler.h>\n#import <ReactiveCocoa/RACQueueScheduler+Subclass.h>\n#import <ReactiveCocoa/RACReplaySubject.h>\n#import <ReactiveCocoa/RACScheduler.h>\n#import <ReactiveCocoa/RACScheduler+Subclass.h>\n#import <ReactiveCocoa/RACScopedDisposable.h>\n#import <ReactiveCocoa/RACSequence.h>\n#import <ReactiveCocoa/RACSerialDisposable.h>\n#import <ReactiveCocoa/RACSignal+Operations.h>\n#import <ReactiveCocoa/RACSignal.h>\n#import <ReactiveCocoa/RACStream.h>\n#import <ReactiveCocoa/RACSubject.h>\n#import <ReactiveCocoa/RACSubscriber.h>\n#import <ReactiveCocoa/RACSubscriptingAssignmentTrampoline.h>\n#import <ReactiveCocoa/RACTargetQueueScheduler.h>\n#import <ReactiveCocoa/RACTestScheduler.h>\n#import <ReactiveCocoa/RACTuple.h>\n#import <ReactiveCocoa/RACUnit.h>\n\n#if TARGET_OS_WATCH\n#elif TARGET_OS_IOS || TARGET_OS_TV\n\t#import <ReactiveCocoa/UIBarButtonItem+RACCommandSupport.h>\n\t#import <ReactiveCocoa/UIButton+RACCommandSupport.h>\n\t#import <ReactiveCocoa/UICollectionReusableView+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UIControl+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UIGestureRecognizer+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UISegmentedControl+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UITableViewCell+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UITableViewHeaderFooterView+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UITextField+RACSignalSupport.h>\n\t#import <ReactiveCocoa/UITextView+RACSignalSupport.h>\n\n\t#if TARGET_OS_IOS\n\t\t#import <ReactiveCocoa/NSURLConnection+RACSupport.h>\n\t\t#import <ReactiveCocoa/UIStepper+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UIDatePicker+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UIAlertView+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UIActionSheet+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/MKAnnotationView+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UIImagePickerController+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UIRefreshControl+RACCommandSupport.h>\n\t\t#import <ReactiveCocoa/UISlider+RACSignalSupport.h>\n\t\t#import <ReactiveCocoa/UISwitch+RACSignalSupport.h>\n\t#endif\n#elif TARGET_OS_MAC\n\t#import <ReactiveCocoa/NSControl+RACCommandSupport.h>\n\t#import <ReactiveCocoa/NSControl+RACTextSignalSupport.h>\n\t#import <ReactiveCocoa/NSObject+RACAppKitBindings.h>\n\t#import <ReactiveCocoa/NSText+RACSignalSupport.h>\n\t#import <ReactiveCocoa/NSURLConnection+RACSupport.h>\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Action.swift",
    "content": "import Foundation\nimport enum Result.NoError\n\n/// Represents an action that will do some work when executed with a value of\n/// type `Input`, then return zero or more values of type `Output` and/or fail\n/// with an error of type `Error`. If no failure should be possible, NoError can\n/// be specified for the `Error` parameter.\n///\n/// Actions enforce serial execution. Any attempt to execute an action multiple\n/// times concurrently will return an error.\npublic final class Action<Input, Output, Error: ErrorType> {\n\tprivate let executeClosure: Input -> SignalProducer<Output, Error>\n\tprivate let eventsObserver: Signal<Event<Output, Error>, NoError>.Observer\n\n\t/// A signal of all events generated from applications of the Action.\n\t///\n\t/// In other words, this will send every `Event` from every signal generated\n\t/// by each SignalProducer returned from apply().\n\tpublic let events: Signal<Event<Output, Error>, NoError>\n\n\t/// A signal of all values generated from applications of the Action.\n\t///\n\t/// In other words, this will send every value from every signal generated\n\t/// by each SignalProducer returned from apply().\n\tpublic let values: Signal<Output, NoError>\n\n\t/// A signal of all errors generated from applications of the Action.\n\t///\n\t/// In other words, this will send errors from every signal generated by\n\t/// each SignalProducer returned from apply().\n\tpublic let errors: Signal<Error, NoError>\n\n\t/// Whether the action is currently executing.\n\tpublic var executing: AnyProperty<Bool> {\n\t\treturn AnyProperty(_executing)\n\t}\n\n\tprivate let _executing: MutableProperty<Bool> = MutableProperty(false)\n\n\t/// Whether the action is currently enabled.\n\tpublic var enabled: AnyProperty<Bool> {\n\t\treturn AnyProperty(_enabled)\n\t}\n\n\tprivate let _enabled: MutableProperty<Bool> = MutableProperty(false)\n\n\t/// Whether the instantiator of this action wants it to be enabled.\n\tprivate let userEnabled: AnyProperty<Bool>\n\n\t/// This queue is used for read-modify-write operations on the `_executing`\n\t/// property.\n\tprivate let executingQueue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.Action.executingQueue\", DISPATCH_QUEUE_SERIAL)\n\n\t/// Whether the action should be enabled for the given combination of user\n\t/// enabledness and executing status.\n\tprivate static func shouldBeEnabled(userEnabled userEnabled: Bool, executing: Bool) -> Bool {\n\t\treturn userEnabled && !executing\n\t}\n\n\t/// Initializes an action that will be conditionally enabled, and creates a\n\t/// SignalProducer for each input.\n\t///\n\t/// - parameters:\n\t///   - enabledIf: Boolean property that shows whether the action is\n\t///                enabled.\n\t///   - execute: A closure that returns the signal producer returned by\n\t///              calling `apply(Input)` on the action.\n\tpublic init<P: PropertyType where P.Value == Bool>(enabledIf: P, _ execute: Input -> SignalProducer<Output, Error>) {\n\t\texecuteClosure = execute\n\t\tuserEnabled = AnyProperty(enabledIf)\n\n\t\t(events, eventsObserver) = Signal<Event<Output, Error>, NoError>.pipe()\n\n\t\tvalues = events.map { $0.value }.ignoreNil()\n\t\terrors = events.map { $0.error }.ignoreNil()\n\n\t\t_enabled <~ enabledIf.producer\n\t\t\t.combineLatestWith(_executing.producer)\n\t\t\t.map(Action.shouldBeEnabled)\n\t}\n\n\t/// Initializes an action that will be enabled by default, and creates a\n\t/// SignalProducer for each input.\n\t///\n\t/// - parameters:\n\t///   - execute: A closure that returns the signal producer returned by\n\t///              calling `apply(Input)` on the action.\n\tpublic convenience init(_ execute: Input -> SignalProducer<Output, Error>) {\n\t\tself.init(enabledIf: ConstantProperty(true), execute)\n\t}\n\n\tdeinit {\n\t\teventsObserver.sendCompleted()\n\t}\n\n\t/// Creates a SignalProducer that, when started, will execute the action\n\t/// with the given input, then forward the results upon the produced Signal.\n\t///\n\t/// - note: If the action is disabled when the returned SignalProducer is\n\t///         started, the produced signal will send `ActionError.NotEnabled`,\n\t///         and nothing will be sent upon `values` or `errors` for that\n\t///         particular signal.\n\t///\n\t/// - parameters:\n\t///   - input: A value that will be passed to the closure creating the signal\n\t///            producer.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func apply(input: Input) -> SignalProducer<Output, ActionError<Error>> {\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tvar startedExecuting = false\n\n\t\t\tdispatch_sync(self.executingQueue) {\n\t\t\t\tif self._enabled.value {\n\t\t\t\t\tself._executing.value = true\n\t\t\t\t\tstartedExecuting = true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif !startedExecuting {\n\t\t\t\tobserver.sendFailed(.NotEnabled)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tself.executeClosure(input).startWithSignal { signal, signalDisposable in\n\t\t\t\tdisposable.addDisposable(signalDisposable)\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tobserver.action(event.mapError(ActionError.ProducerError))\n\t\t\t\t\tself.eventsObserver.sendNext(event)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisposable += {\n\t\t\t\tself._executing.value = false\n\t\t\t}\n\t\t}\n\t}\n}\n\npublic protocol ActionType {\n\t/// The type of argument to apply the action to.\n\tassociatedtype Input\n\t/// The type of values returned by the action.\n\tassociatedtype Output\n\t/// The type of error when the action fails. If errors aren't possible then\n\t/// `NoError` can be used.\n\tassociatedtype Error: ErrorType\n\n\t/// Whether the action is currently enabled.\n\tvar enabled: AnyProperty<Bool> { get }\n\n\t/// Extracts an action from the receiver.\n\tvar action: Action<Input, Output, Error> { get }\n\n\t/// Creates a SignalProducer that, when started, will execute the action\n\t/// with the given input, then forward the results upon the produced Signal.\n\t///\n\t/// - note: If the action is disabled when the returned SignalProducer is\n\t///         started, the produced signal will send `ActionError.NotEnabled`,\n\t///         and nothing will be sent upon `values` or `errors` for that\n\t///         particular signal.\n\t///\n\t/// - parameters:\n\t///   - input: A value that will be passed to the closure creating the signal\n\t///            producer.\n\tfunc apply(input: Input) -> SignalProducer<Output, ActionError<Error>>\n}\n\nextension Action: ActionType {\n\tpublic var action: Action {\n\t\treturn self\n\t}\n}\n\n/// The type of error that can occur from Action.apply, where `Error` is the \n/// type of error that can be generated by the specific Action instance.\npublic enum ActionError<Error: ErrorType>: ErrorType {\n\t/// The producer returned from apply() was started while the Action was\n\t/// disabled.\n\tcase NotEnabled\n\n\t/// The producer returned from apply() sent the given error.\n\tcase ProducerError(Error)\n}\n\npublic func == <Error: Equatable>(lhs: ActionError<Error>, rhs: ActionError<Error>) -> Bool {\n\tswitch (lhs, rhs) {\n\tcase (.NotEnabled, .NotEnabled):\n\t\treturn true\n\n\tcase let (.ProducerError(left), .ProducerError(right)):\n\t\treturn left == right\n\n\tdefault:\n\t\treturn false\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Atomic.swift",
    "content": "//\n//  Atomic.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-06-10.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Foundation\n\n/// An atomic variable.\npublic final class Atomic<Value> {\n\tprivate var mutex = pthread_mutex_t()\n\tprivate var _value: Value\n\t\n\t/// Atomically get or set the value of the variable.\n\tpublic var value: Value {\n\t\tget {\n\t\t\treturn withValue { $0 }\n\t\t}\n\t\n\t\tset(newValue) {\n\t\t\tmodify { _ in newValue }\n\t\t}\n\t}\n\t\n\t/// Initialize the variable with the given initial value.\n\t/// \n\t/// - parameters:\n\t///   - value: Initial value for `self`.\n\tpublic init(_ value: Value) {\n\t\t_value = value\n\t\tlet result = pthread_mutex_init(&mutex, nil)\n\t\tassert(result == 0, \"Failed to initialize mutex with error \\(result).\")\n\t}\n\n\tdeinit {\n\t\tlet result = pthread_mutex_destroy(&mutex)\n\t\tassert(result == 0, \"Failed to destroy mutex with error \\(result).\")\n\t}\n\n\tprivate func lock() {\n\t\tlet result = pthread_mutex_lock(&mutex)\n\t\tassert(result == 0, \"Failed to lock \\(self) with error \\(result).\")\n\t}\n\t\n\tprivate func unlock() {\n\t\tlet result = pthread_mutex_unlock(&mutex)\n\t\tassert(result == 0, \"Failed to unlock \\(self) with error \\(result).\")\n\t}\n\t\n\t/// Atomically replace the contents of the variable.\n\t///\n\t/// - parameters:\n\t///   - newValue: A new value for the variable.\n\t///\n\t/// - returns: The old value.\n\tpublic func swap(newValue: Value) -> Value {\n\t\treturn modify { _ in newValue }\n\t}\n\n\t/// Atomically modify the variable.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that takes the current value.\n\t///\n\t/// - returns: The old value.\n\tpublic func modify(@noescape action: (Value) throws -> Value) rethrows -> Value {\n\t\treturn try withValue { value in\n\t\t\t_value = try action(value)\n\t\t\treturn value\n\t\t}\n\t}\n\t\n\t/// Atomically perform an arbitrary action using the current value of the\n\t/// variable.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that takes the current value.\n\t///\n\t/// - returns: The result of the action.\n\tpublic func withValue<Result>(@noescape action: (Value) throws -> Result) rethrows -> Result {\n\t\tlock()\n\t\tdefer { unlock() }\n\n\t\treturn try action(_value)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Bag.swift",
    "content": "//\n//  Bag.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-10.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n/// A uniquely identifying token for removing a value that was inserted into a\n/// Bag.\npublic final class RemovalToken {\n\tprivate var identifier: UInt?\n\n\tprivate init(identifier: UInt) {\n\t\tself.identifier = identifier\n\t}\n}\n\n/// An unordered, non-unique collection of values of type `Element`.\npublic struct Bag<Element> {\n\tprivate var elements: [BagElement<Element>] = []\n\tprivate var currentIdentifier: UInt = 0\n\n\tpublic init() {\n\t}\n\n\t/// Insert the given value into `self`, and return a token that can\n\t/// later be passed to `removeValueForToken()`.\n\t///\n\t/// - parameters:\n\t///   - value: A value that will be inserted.\n\tpublic mutating func insert(value: Element) -> RemovalToken {\n\t\tlet (nextIdentifier, overflow) = UInt.addWithOverflow(currentIdentifier, 1)\n\t\tif overflow {\n\t\t\treindex()\n\t\t}\n\n\t\tlet token = RemovalToken(identifier: currentIdentifier)\n\t\tlet element = BagElement(value: value, identifier: currentIdentifier, token: token)\n\n\t\telements.append(element)\n\t\tcurrentIdentifier = nextIdentifier\n\n\t\treturn token\n\t}\n\n\t/// Remove a value, given the token returned from `insert()`.\n\t///\n\t/// - note: If the value has already been removed, nothing happens.\n\t///\n\t/// - parameters:\n\t///   - token: A token returned from a call to `insert()`.\n\tpublic mutating func removeValueForToken(token: RemovalToken) {\n\t\tif let identifier = token.identifier {\n\t\t\t// Removal is more likely for recent objects than old ones.\n\t\t\tfor i in elements.indices.reverse() {\n\t\t\t\tif elements[i].identifier == identifier {\n\t\t\t\t\telements.removeAtIndex(i)\n\t\t\t\t\ttoken.identifier = nil\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// In the event of an identifier overflow (highly, highly unlikely), reset\n\t/// all current identifiers to reclaim a contiguous set of available\n\t/// identifiers for the future.\n\tprivate mutating func reindex() {\n\t\tfor i in elements.indices {\n\t\t\tcurrentIdentifier = UInt(i)\n\n\t\t\telements[i].identifier = currentIdentifier\n\t\t\telements[i].token.identifier = currentIdentifier\n\t\t}\n\t}\n}\n\nextension Bag: CollectionType {\n\tpublic typealias Index = Array<Element>.Index\n\n\tpublic var startIndex: Index {\n\t\treturn elements.startIndex\n\t}\n\t\n\tpublic var endIndex: Index {\n\t\treturn elements.endIndex\n\t}\n\n\tpublic subscript(index: Index) -> Element {\n\t\treturn elements[index].value\n\t}\n}\n\nprivate struct BagElement<Value> {\n\tlet value: Value\n\tvar identifier: UInt\n\tlet token: RemovalToken\n}\n\nextension BagElement: CustomStringConvertible {\n\tvar description: String {\n\t\treturn \"BagElement(\\(value))\"\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/CocoaAction.swift",
    "content": "import Foundation\n\n/// Wraps an Action for use by a GUI control (such as `NSControl` or\n/// `UIControl`), with KVO, or with Cocoa Bindings.\npublic final class CocoaAction: NSObject {\n\t/// The selector that a caller should invoke upon a CocoaAction in order to\n\t/// execute it.\n\tpublic static let selector: Selector = #selector(CocoaAction.execute(_:))\n\t\n\t/// Whether the action is enabled.\n\t///\n\t/// This property will only change on the main thread, and will generate a\n\t/// KVO notification for every change.\n\tpublic private(set) var enabled: Bool = false\n\t\n\t/// Whether the action is executing.\n\t///\n\t/// This property will only change on the main thread, and will generate a\n\t/// KVO notification for every change.\n\tpublic private(set) var executing: Bool = false\n\t\n\tprivate let _execute: AnyObject? -> Void\n\tprivate let disposable = CompositeDisposable()\n\t\n\t/// Initializes a Cocoa action that will invoke the given Action by\n\t/// transforming the object given to execute().\n\t///\n\t/// - note: You must cast the passed in object to the control type you need\n\t///         since there is no way to know where this cocoa action will be\n\t///         added as a target.\n\t///\n\t/// - parameters:\n\t///   - action: Executable action.\n\t///   - inputTransform: Closure that accepts the UI control performing the\n\t///                     action and returns a value (e.g. \n\t///                     `(UISwitch) -> (Bool)` to reflect whether a provided\n\t///                     switch is currently on.\n\tpublic init<Input, Output, Error>(_ action: Action<Input, Output, Error>, _ inputTransform: AnyObject? -> Input) {\n\t\t_execute = { input in\n\t\t\tlet producer = action.apply(inputTransform(input))\n\t\t\tproducer.start()\n\t\t}\n\t\t\n\t\tsuper.init()\n\t\t\n\t\tdisposable += action.enabled.producer\n\t\t\t.observeOn(UIScheduler())\n\t\t\t.startWithNext { [weak self] value in\n\t\t\t\tself?.willChangeValueForKey(\"enabled\")\n\t\t\t\tself?.enabled = value\n\t\t\t\tself?.didChangeValueForKey(\"enabled\")\n\t\t}\n\t\t\n\t\tdisposable += action.executing.producer\n\t\t\t.observeOn(UIScheduler())\n\t\t\t.startWithNext { [weak self] value in\n\t\t\t\tself?.willChangeValueForKey(\"executing\")\n\t\t\t\tself?.executing = value\n\t\t\t\tself?.didChangeValueForKey(\"executing\")\n\t\t}\n\t}\n\t\n\t/// Initializes a Cocoa action that will invoke the given Action by always\n\t/// providing the given input.\n\t///\n\t/// - parameters:\n\t///   - action: Executable action.\n\t///   - input: A value given as input to the action.\n\tpublic convenience init<Input, Output, Error>(_ action: Action<Input, Output, Error>, input: Input) {\n\t\tself.init(action, { _ in input })\n\t}\n\t\n\tdeinit {\n\t\tdisposable.dispose()\n\t}\n\t\n\t/// Attempts to execute the underlying action with the given input, subject\n\t/// to the behavior described by the initializer that was used.\n\t///\n\t/// - parameters:\n\t///   - input: A value for the action passed during initialization.\n\t@IBAction public func execute(input: AnyObject?) {\n\t\t_execute(input)\n\t}\n\t\n\tpublic override class func automaticallyNotifiesObserversForKey(key: String) -> Bool {\n\t\treturn false\n\t}\n}\n\nextension Action {\n\t/// A UI bindable `CocoaAction`.\n\t///\n\t/// - warning: The default behavior force casts the `AnyObject?` input to \n\t///            match the action's `Input` type. This makes it unsafe for use \n\t///            when the action is parameterized for something like `Void` \n\t///            input. In those cases, explicitly assign a value to this\n\t///            property that transforms the input to suit your needs.\n\tpublic var unsafeCocoaAction: CocoaAction {\n\t\treturn CocoaAction(self) { $0 as! Input }\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Disposable.swift",
    "content": "//\n//  Disposable.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-06-02.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n/// Represents something that can be “disposed,” usually associated with freeing\n/// resources or canceling work.\npublic protocol Disposable: class {\n\t/// Whether this disposable has been disposed already.\n\tvar disposed: Bool { get }\n\n\t/// Method for disposing of resources when appropriate.\n\tfunc dispose()\n}\n\n/// A disposable that only flips `disposed` upon disposal, and performs no other\n/// work.\npublic final class SimpleDisposable: Disposable {\n\tprivate let _disposed = Atomic(false)\n\n\tpublic var disposed: Bool {\n\t\treturn _disposed.value\n\t}\n\n\tpublic init() {}\n\n\tpublic func dispose() {\n\t\t_disposed.value = true\n\t}\n}\n\n/// A disposable that will run an action upon disposal.\npublic final class ActionDisposable: Disposable {\n\tprivate let action: Atomic<(() -> Void)?>\n\n\tpublic var disposed: Bool {\n\t\treturn action.value == nil\n\t}\n\n\t/// Initialize the disposable to run the given action upon disposal.\n\t///\n\t/// - parameters:\n\t///   - action: A closure to run when calling `dispose()`.\n\tpublic init(action: () -> Void) {\n\t\tself.action = Atomic(action)\n\t}\n\n\tpublic func dispose() {\n\t\tlet oldAction = action.swap(nil)\n\t\toldAction?()\n\t}\n}\n\n/// A disposable that will dispose of any number of other disposables.\npublic final class CompositeDisposable: Disposable {\n\tprivate let disposables: Atomic<Bag<Disposable>?>\n\n\t/// Represents a handle to a disposable previously added to a\n\t/// CompositeDisposable.\n\tpublic final class DisposableHandle {\n\t\tprivate let bagToken: Atomic<RemovalToken?>\n\t\tprivate weak var disposable: CompositeDisposable?\n\n\t\tprivate static let empty = DisposableHandle()\n\n\t\tprivate init() {\n\t\t\tself.bagToken = Atomic(nil)\n\t\t}\n\n\t\tprivate init(bagToken: RemovalToken, disposable: CompositeDisposable) {\n\t\t\tself.bagToken = Atomic(bagToken)\n\t\t\tself.disposable = disposable\n\t\t}\n\n\t\t/// Remove the pointed-to disposable from its `CompositeDisposable`.\n\t\t///\n\t\t/// - note: This is useful to minimize memory growth, by removing\n\t\t///         disposables that are no longer needed.\n\t\tpublic func remove() {\n\t\t\tif let token = bagToken.swap(nil) {\n\t\t\t\tdisposable?.disposables.modify { bag in\n\t\t\t\t\tguard var bag = bag else {\n\t\t\t\t\t\treturn nil\n\t\t\t\t\t}\n\n\t\t\t\t\tbag.removeValueForToken(token)\n\t\t\t\t\treturn bag\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic var disposed: Bool {\n\t\treturn disposables.value == nil\n\t}\n\n\t/// Initialize a `CompositeDisposable` containing the given sequence of\n\t/// disposables.\n\t///\n\t/// - parameters:\n\t///   - disposables: A collection of objects conforming to the `Disposable`\n\t///                  protocol\n\tpublic init<S: SequenceType where S.Generator.Element == Disposable>(_ disposables: S) {\n\t\tvar bag: Bag<Disposable> = Bag()\n\n\t\tfor disposable in disposables {\n\t\t\tbag.insert(disposable)\n\t\t}\n\n\t\tself.disposables = Atomic(bag)\n\t}\n\t\n\t/// Initialize a `CompositeDisposable` containing the given sequence of\n\t/// disposables.\n\t///\n\t/// - parameters:\n\t///   - disposables: A collection of objects conforming to the `Disposable`\n\t///                  protocol\n\tpublic convenience init<S: SequenceType where S.Generator.Element == Disposable?>(_ disposables: S) {\n\t\tself.init(disposables.flatMap { $0 })\n\t}\n\n\t/// Initializes an empty `CompositeDisposable`.\n\tpublic convenience init() {\n\t\tself.init([Disposable]())\n\t}\n\n\tpublic func dispose() {\n\t\tif let ds = disposables.swap(nil) {\n\t\t\tfor d in ds.reverse() {\n\t\t\t\td.dispose()\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Add the given disposable to the list, then return a handle which can\n\t/// be used to opaquely remove the disposable later (if desired).\n\t///\n\t/// - parameters:\n\t///   - d: Optional disposable.\n\t///\n\t/// - returns: An instance of `DisposableHandle` that can be used to\n\t///            opaquely remove the disposable later (if desired).\n\tpublic func addDisposable(d: Disposable?) -> DisposableHandle {\n\t\tguard let d = d else {\n\t\t\treturn DisposableHandle.empty\n\t\t}\n\n\t\tvar handle: DisposableHandle? = nil\n\t\tdisposables.modify { ds in\n\t\t\tguard var ds = ds else {\n\t\t\t\treturn nil\n\t\t\t}\n\n\t\t\tlet token = ds.insert(d)\n\t\t\thandle = DisposableHandle(bagToken: token, disposable: self)\n\n\t\t\treturn ds\n\t\t}\n\n\t\tif let handle = handle {\n\t\t\treturn handle\n\t\t} else {\n\t\t\td.dispose()\n\t\t\treturn DisposableHandle.empty\n\t\t}\n\t}\n\n\t/// Add an ActionDisposable to the list.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that will be invoked when `dispose()` is called.\n\t///\n\t/// - returns: An instance of `DisposableHandle` that can be used to\n\t///            opaquely remove the disposable later (if desired).\n\tpublic func addDisposable(action: () -> Void) -> DisposableHandle {\n\t\treturn addDisposable(ActionDisposable(action: action))\n\t}\n}\n\n/// A disposable that, upon deinitialization, will automatically dispose of\n/// another disposable.\npublic final class ScopedDisposable: Disposable {\n\t/// The disposable which will be disposed when the ScopedDisposable\n\t/// deinitializes.\n\tpublic let innerDisposable: Disposable\n\n\tpublic var disposed: Bool {\n\t\treturn innerDisposable.disposed\n\t}\n\n\t/// Initialize the receiver to dispose of the argument upon\n\t/// deinitialization.\n\t///\n\t/// - parameters:\n\t///   - disposable: A disposable to dispose of when deinitializing.\n\tpublic init(_ disposable: Disposable) {\n\t\tinnerDisposable = disposable\n\t}\n\n\tdeinit {\n\t\tdispose()\n\t}\n\n\tpublic func dispose() {\n\t\tinnerDisposable.dispose()\n\t}\n}\n\n/// A disposable that will optionally dispose of another disposable.\npublic final class SerialDisposable: Disposable {\n\tprivate struct State {\n\t\tvar innerDisposable: Disposable? = nil\n\t\tvar disposed = false\n\t}\n\n\tprivate let state = Atomic(State())\n\n\tpublic var disposed: Bool {\n\t\treturn state.value.disposed\n\t}\n\n\t/// The inner disposable to dispose of.\n\t///\n\t/// Whenever this property is set (even to the same value!), the previous\n\t/// disposable is automatically disposed.\n\tpublic var innerDisposable: Disposable? {\n\t\tget {\n\t\t\treturn state.value.innerDisposable\n\t\t}\n\n\t\tset(d) {\n\t\t\tlet oldState = state.modify { state in\n\t\t\t\tvar state = state\n\t\t\t\tstate.innerDisposable = d\n\t\t\t\treturn state\n\t\t\t}\n\n\t\t\toldState.innerDisposable?.dispose()\n\t\t\tif oldState.disposed {\n\t\t\t\td?.dispose()\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Initializes the receiver to dispose of the argument when the\n\t/// SerialDisposable is disposed.\n\t///\n\t/// - parameters:\n\t///   - disposable: Optional disposable.\n\tpublic init(_ disposable: Disposable? = nil) {\n\t\tinnerDisposable = disposable\n\t}\n\n\tpublic func dispose() {\n\t\tlet orig = state.swap(State(innerDisposable: nil, disposed: true))\n\t\torig.innerDisposable?.dispose()\n\t}\n}\n\n/// Adds the right-hand-side disposable to the left-hand-side\n/// `CompositeDisposable`.\n///\n/// ````\n///  disposable += producer\n///      .filter { ... }\n///      .map    { ... }\n///      .start(observer)\n/// ````\n///\n/// - parameters:\n///   - lhs: Disposable to add to.\n///   - rhs: Disposable to add.\n///\n/// - returns: An instance of `DisposableHandle` that can be used to opaquely\n///            remove the disposable later (if desired).\npublic func +=(lhs: CompositeDisposable, rhs: Disposable?) -> CompositeDisposable.DisposableHandle {\n\treturn lhs.addDisposable(rhs)\n}\n\n/// Adds the right-hand-side `ActionDisposable` to the left-hand-side\n/// `CompositeDisposable`.\n///\n/// ````\n/// disposable += { ... }\n/// ````\n///\n/// - parameters:\n///   - lhs: Disposable to add to.\n///   - rhs: Closure to add as a disposable.\n///\n/// - returns: An instance of `DisposableHandle` that can be used to opaquely\n///            remove the disposable later (if desired).\npublic func +=(lhs: CompositeDisposable, rhs: () -> ()) -> CompositeDisposable.DisposableHandle {\n\treturn lhs.addDisposable(rhs)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/DynamicProperty.swift",
    "content": "import Foundation\nimport enum Result.NoError\n\n/// Wraps a `dynamic` property, or one defined in Objective-C, using Key-Value\n/// Coding and Key-Value Observing.\n///\n/// Use this class only as a last resort! `MutableProperty` is generally better\n/// unless KVC/KVO is required by the API you're using (for example,\n/// `NSOperation`).\n@objc public final class DynamicProperty: RACDynamicPropertySuperclass, MutablePropertyType {\n\tpublic typealias Value = AnyObject?\n\n\tprivate weak var object: NSObject?\n\tprivate let keyPath: String\n\n\tprivate var property: MutableProperty<AnyObject?>?\n\n\t/// The current value of the property, as read and written using Key-Value\n\t/// Coding.\n\tpublic var value: AnyObject? {\n\t\t@objc(rac_value) get {\n\t\t\treturn object?.valueForKeyPath(keyPath)\n\t\t}\n\n\t\t@objc(setRac_value:) set(newValue) {\n\t\t\tobject?.setValue(newValue, forKeyPath: keyPath)\n\t\t}\n\t}\n\n\t/// A producer that will create a Key-Value Observer for the given object,\n\t/// send its initial value then all changes over time, and then complete\n\t/// when the observed object has deallocated.\n\t///\n\t/// - important: This only works if the object given to init() is KVO-compliant.\n\t///              Most UI controls are not!\n\tpublic var producer: SignalProducer<AnyObject?, NoError> {\n\t\treturn property?.producer ?? .empty\n\t}\n\n\tpublic var signal: Signal<AnyObject?, NoError> {\n\t\treturn property?.signal ?? .empty\n\t}\n\n\t/// Initializes a property that will observe and set the given key path of\n\t/// the given object.\n\t///\n\t/// - important: `object` must support weak references!\n\t///\n\t/// - parameters:\n\t///   - object: An object to be observed.\n\t///   - keyPath: Key path to observe on the object.\n\tpublic init(object: NSObject?, keyPath: String) {\n\t\tself.object = object\n\t\tself.keyPath = keyPath\n\t\tself.property = MutableProperty(nil)\n\n\t\t/// A DynamicProperty will stay alive as long as its object is alive.\n\t\t/// This is made possible by strong reference cycles.\n\t\tsuper.init()\n\n\t\tobject?.rac_valuesForKeyPath(keyPath, observer: nil)?\n\t\t\t.toSignalProducer()\n\t\t\t.start { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(newValue):\n\t\t\t\t\tself.property?.value = newValue\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tfatalError(\"Received unexpected error from KVO signal: \\(error)\")\n\t\t\t\tcase .Interrupted, .Completed:\n\t\t\t\t\tself.property = nil\n\t\t\t\t}\n\t\t\t}\n\t}\n}\n\n// MARK: Operators\n\n/// Binds a signal to a `DynamicProperty`, automatically bridging values to Objective-C.\npublic func <~ <S: SignalType where S.Value: _ObjectiveCBridgeable, S.Error == NoError>(property: DynamicProperty, signal: S) -> Disposable {\n\treturn property <~ signal.map { $0._bridgeToObjectiveC() }\n}\n\n/// Binds a signal producer to a `DynamicProperty`, automatically bridging values to Objective-C.\npublic func <~ <S: SignalProducerType where S.Value: _ObjectiveCBridgeable, S.Error == NoError>(property: DynamicProperty, producer: S) -> Disposable {\n\treturn property <~ producer.map { $0._bridgeToObjectiveC() }\n}\n\n/// Binds `destinationProperty` to the latest values of `sourceProperty`, automatically bridging values to Objective-C.\npublic func <~ <Source: PropertyType where Source.Value: _ObjectiveCBridgeable>(destinationProperty: DynamicProperty, sourceProperty: Source) -> Disposable {\n\treturn destinationProperty <~ sourceProperty.producer\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Errors.swift",
    "content": "//\n//  Errors.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-13.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n/// An “error” that is impossible to construct.\n///\n/// This can be used to describe signals or producers where errors will never\n/// be generated. For example, `Signal<Int, NoError>` describes a signal that\n/// sends integers and is guaranteed never to error out.\npublic enum NoError: ErrorType {\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Event.swift",
    "content": "//\n//  Event.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2015-01-16.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\n/// Represents a signal event.\n///\n/// Signals must conform to the grammar:\n/// `Next* (Failed | Completed | Interrupted)?`\npublic enum Event<Value, Error: ErrorType> {\n\t/// A value provided by the signal.\n\tcase Next(Value)\n\n\t/// The signal terminated because of an error. No further events will be\n\t/// received.\n\tcase Failed(Error)\n\n\t/// The signal successfully terminated. No further events will be received.\n\tcase Completed\n\n\t/// Event production on the signal has been interrupted. No further events\n\t/// will be received.\n\t///\n\t/// - important: This event does not signify the successful or failed\n\t///              completion of the signal.\n\tcase Interrupted\n\n\t/// Whether this event indicates signal termination (i.e., that no further\n\t/// events will be received).\n\tpublic var isTerminating: Bool {\n\t\tswitch self {\n\t\tcase .Next:\n\t\t\treturn false\n\n\t\tcase .Failed, .Completed, .Interrupted:\n\t\t\treturn true\n\t\t}\n\t}\n\n\t/// Lift the given closure over the event's value.\n\t///\n\t/// - important: The closure is called only on `Next` type events.\n\t///\n\t/// - parameters:\n\t///   - f: A closure that accepts a value and returns a new value\n\t///\n\t/// - returns: An event with function applied to a value in case `self` is a\n\t///            `Next` type of event.\n\tpublic func map<U>(f: Value -> U) -> Event<U, Error> {\n\t\tswitch self {\n\t\tcase let .Next(value):\n\t\t\treturn .Next(f(value))\n\n\t\tcase let .Failed(error):\n\t\t\treturn .Failed(error)\n\n\t\tcase .Completed:\n\t\t\treturn .Completed\n\n\t\tcase .Interrupted:\n\t\t\treturn .Interrupted\n\t\t}\n\t}\n\n\t/// Lift the given closure over the event's error.\n\t///\n\t/// - important: The closure is called only on `Failed` type event.\n\t///\n\t/// - parameters:\n\t///   - f: A closure that accepts an error object and returns\n\t///        a new error object\n\t///\n\t/// - returns: An event with function applied to an error object in case\n\t///            `self` is a `.Failed` type of event.\n\tpublic func mapError<F>(f: Error -> F) -> Event<Value, F> {\n\t\tswitch self {\n\t\tcase let .Next(value):\n\t\t\treturn .Next(value)\n\n\t\tcase let .Failed(error):\n\t\t\treturn .Failed(f(error))\n\n\t\tcase .Completed:\n\t\t\treturn .Completed\n\n\t\tcase .Interrupted:\n\t\t\treturn .Interrupted\n\t\t}\n\t}\n\n\t/// Unwrap the contained `Next` value.\n\tpublic var value: Value? {\n\t\tif case let .Next(value) = self {\n\t\t\treturn value\n\t\t} else {\n\t\t\treturn nil\n\t\t}\n\t}\n\n\t/// Unwrap the contained `Error` value.\n\tpublic var error: Error? {\n\t\tif case let .Failed(error) = self {\n\t\t\treturn error\n\t\t} else {\n\t\t\treturn nil\n\t\t}\n\t}\n}\n\npublic func == <Value: Equatable, Error: Equatable> (lhs: Event<Value, Error>, rhs: Event<Value, Error>) -> Bool {\n\tswitch (lhs, rhs) {\n\tcase let (.Next(left), .Next(right)):\n\t\treturn left == right\n\n\tcase let (.Failed(left), .Failed(right)):\n\t\treturn left == right\n\n\tcase (.Completed, .Completed):\n\t\treturn true\n\n\tcase (.Interrupted, .Interrupted):\n\t\treturn true\n\n\tdefault:\n\t\treturn false\n\t}\n}\n\nextension Event: CustomStringConvertible {\n\tpublic var description: String {\n\t\tswitch self {\n\t\tcase let .Next(value):\n\t\t\treturn \"NEXT \\(value)\"\n\n\t\tcase let .Failed(error):\n\t\t\treturn \"FAILED \\(error)\"\n\n\t\tcase .Completed:\n\t\t\treturn \"COMPLETED\"\n\n\t\tcase .Interrupted:\n\t\t\treturn \"INTERRUPTED\"\n\t\t}\n\t}\n}\n\n/// Event protocol for constraining signal extensions\npublic protocol EventType {\n\t/// The value type of an event.\n\tassociatedtype Value\n\t/// The error type of an event. If errors aren't possible then `NoError` can\n\t/// be used.\n\tassociatedtype Error: ErrorType\n\t/// Extracts the event from the receiver.\n\tvar event: Event<Value, Error> { get }\n}\n\nextension Event: EventType {\n\tpublic var event: Event<Value, Error> {\n\t\treturn self\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/EventLogger.swift",
    "content": "//\n//  EventLogger.swift\n//  ReactiveCocoa\n//\n//  Created by Rui Peres on 30/04/2016.\n//  Copyright © 2016 GitHub. All rights reserved.\n//\n\nimport Foundation\n\n/// A namespace for logging event types.\npublic enum LoggingEvent {\n\tpublic enum Signal: String {\n\t\tcase Next, Completed, Failed, Terminated, Disposed, Interrupted\n\n\t\tpublic static let allEvents: Set<Signal> = [\n\t\t\t.Next, .Completed, .Failed, .Terminated, .Disposed, .Interrupted,\n\t\t]\n\t}\n\n\tpublic enum SignalProducer: String {\n\t\tcase Started, Next, Completed, Failed, Terminated, Disposed, Interrupted\n\n\t\tpublic static let allEvents: Set<SignalProducer> = [\n\t\t\t.Started, .Next, .Completed, .Failed, .Terminated, .Disposed, .Interrupted,\n\t\t]\n\t}\n}\n\nprivate func defaultEventLog(identifier: String, event: String, fileName: String, functionName: String, lineNumber: Int) {\n\tprint(\"[\\(identifier)] \\(event) fileName: \\(fileName), functionName: \\(functionName), lineNumber: \\(lineNumber)\")\n}\n\n/// A type that represents an event logging function.\npublic typealias EventLogger = (identifier: String, event: String, fileName: String, functionName: String, lineNumber: Int) -> Void\n\nextension SignalType {\n\t/// Logs all events that the receiver sends. By default, it will print to \n\t/// the standard output.\n\t///\n\t/// - parameters:\n\t///   - identifier: a string to identify the Signal firing events.\n\t///   - events: Types of events to log.\n\t///   - fileName: Name of the file containing the code which fired the\n\t///               event.\n\t///   - functionName: Function where event was fired.\n\t///   - lineNumber: Line number where event was fired.\n\t///   - logger: Logger that logs the events.\n\t///\n\t/// - returns: Signal that, when observed, logs the fired events.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func logEvents(identifier identifier: String = \"\", events: Set<LoggingEvent.Signal> = LoggingEvent.Signal.allEvents, fileName: String = #file, functionName: String = #function, lineNumber: Int = #line, logger: EventLogger = defaultEventLog) -> Signal<Value, Error> {\n\t\tfunc log<T>(event: LoggingEvent.Signal) -> (T -> Void)? {\n\t\t\treturn event.logIfNeeded(events) { event in\n\t\t\t\tlogger(identifier: identifier, event: event, fileName: fileName, functionName: functionName, lineNumber: lineNumber)\n\t\t\t}\n\t\t}\n\n\t\treturn self.on(\n\t\t\tfailed: log(.Failed),\n\t\t\tcompleted: log(.Completed),\n\t\t\tinterrupted: log(.Interrupted),\n\t\t\tterminated: log(.Terminated),\n\t\t\tdisposed: log(.Disposed),\n\t\t\tnext: log(.Next)\n\t\t)\n\t}\n}\n\nextension SignalProducerType {\n\t/// Logs all events that the receiver sends. By default, it will print to \n\t/// the standard output.\n\t///\n\t/// - parameters:\n\t///   - identifier: a string to identify the SignalProducer firing events.\n\t///   - events: Types of events to log.\n\t///   - fileName: Name of the file containing the code which fired the\n\t///               event.\n\t///   - functionName: Function where event was fired.\n\t///   - lineNumber: Line number where event was fired.\n\t///   - logger: Logger that logs the events.\n\t///\n\t/// - returns: Signal producer that, when started, logs the fired events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func logEvents(identifier identifier: String = \"\", events: Set<LoggingEvent.SignalProducer> = LoggingEvent.SignalProducer.allEvents, fileName: String = #file, functionName: String = #function, lineNumber: Int = #line, logger: EventLogger = defaultEventLog) -> SignalProducer<Value, Error> {\n\t\tfunc log<T>(event: LoggingEvent.SignalProducer) -> (T -> Void)? {\n\t\t\treturn event.logIfNeeded(events) { event in\n\t\t\t\tlogger(identifier: identifier, event: event, fileName: fileName, functionName: functionName, lineNumber: lineNumber)\n\t\t\t}\n\t\t}\n\n\t\treturn self.on(\n\t\t\tstarted: log(.Started),\n\t\t\tfailed: log(.Failed),\n\t\t\tcompleted: log(.Completed),\n\t\t\tinterrupted: log(.Interrupted),\n\t\t\tterminated: log(.Terminated),\n\t\t\tdisposed: log(.Disposed),\n\t\t\tnext: log(.Next)\n\t\t)\n\t}\n}\n\nprivate protocol LoggingEventType: Hashable, RawRepresentable {}\nextension LoggingEvent.Signal: LoggingEventType {}\nextension LoggingEvent.SignalProducer: LoggingEventType {}\n\nprivate extension LoggingEventType {\n\tfunc logIfNeeded<T>(events: Set<Self>, logger: String -> Void) -> (T -> Void)? {\n\t\tguard events.contains(self) else {\n\t\t\treturn nil\n\t\t}\n\n\t\treturn { value in\n\t\t\tif value is Void {\n\t\t\t\tlogger(\"\\(self.rawValue)\")\n\t\t\t} else {\n\t\t\t\tlogger(\"\\(self.rawValue) \\(value)\")\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Flatten.swift",
    "content": "//\n//  Flatten.swift\n//  ReactiveCocoa\n//\n//  Created by Neil Pankey on 11/30/15.\n//  Copyright © 2015 GitHub. All rights reserved.\n//\n\nimport enum Result.NoError\n\n/// Describes how multiple producers should be joined together.\npublic enum FlattenStrategy: Equatable {\n\t/// The producers should be merged, so that any value received on any of the\n\t/// input producers will be forwarded immediately to the output producer.\n\t///\n\t/// The resulting producer will complete only when all inputs have\n\t/// completed.\n\tcase Merge\n\n\t/// The producers should be concatenated, so that their values are sent in\n\t/// the order of the producers themselves.\n\t///\n\t/// The resulting producer will complete only when all inputs have\n\t/// completed.\n\tcase Concat\n\n\t/// Only the events from the latest input producer should be considered for\n\t/// the output. Any producers received before that point will be disposed\n\t/// of.\n\t///\n\t/// The resulting producer will complete only when the producer-of-producers\n\t/// and the latest producer has completed.\n\tcase Latest\n}\n\n\nextension SignalType where Value: SignalProducerType, Error == Value.Error {\n\t/// Flattens the inner producers sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `signal` or an active inner producer fails, the returned\n\t///         signal will forward that failure immediately.\n\t///\n\t/// - note: `Interrupted` events on inner producers will be treated like\n\t///         `Completed events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Error> {\n\t\tswitch strategy {\n\t\tcase .Merge:\n\t\t\treturn self.merge()\n\n\t\tcase .Concat:\n\t\t\treturn self.concat()\n\n\t\tcase .Latest:\n\t\t\treturn self.switchToLatest()\n\t\t}\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Error == NoError {\n\t/// Flattens the inner producers sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If an active inner producer fails, the returned signal will\n\t///         forward that failure immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t///\n\t/// - parameters:\n\t///\t  - strategy: Strategy used when flattening signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.promoteErrors(Value.Error.self)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Error == NoError, Value.Error == NoError {\n\t/// Flattens the inner producers sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t///\n\t/// - parameters:\n\t///   - strategy: Strategy used when flattening signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Value.Error> {\n\t\tswitch strategy {\n\t\tcase .Merge:\n\t\t\treturn self.merge()\n\n\t\tcase .Concat:\n\t\t\treturn self.concat()\n\n\t\tcase .Latest:\n\t\t\treturn self.switchToLatest()\n\t\t}\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Value.Error == NoError {\n\t/// Flattens the inner producers sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `signal` fails, the returned signal will forward that failure\n\t///         immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Error> {\n\t\treturn self.flatMap(strategy) { $0.promoteErrors(Error.self) }\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == Value.Error {\n\t/// Flattens the inner producers sent upon `producer` (into a single\n\t/// producer of values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `producer` or an active inner producer fails, the returned\n\t///         producer will forward that failure immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Error> {\n\t\tswitch strategy {\n\t\tcase .Merge:\n\t\t\treturn self.merge()\n\n\t\tcase .Concat:\n\t\t\treturn self.concat()\n\n\t\tcase .Latest:\n\t\t\treturn self.switchToLatest()\n\t\t}\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == NoError {\n\t/// Flattens the inner producers sent upon `producer` (into a single\n\t/// producer of values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If an active inner producer fails, the returned producer will\n\t///         forward that failure immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.promoteErrors(Value.Error.self)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == NoError, Value.Error == NoError {\n\t/// Flattens the inner producers sent upon `producer` (into a single\n\t/// producer of values), according to the semantics of the given strategy.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Value.Error> {\n\t\tswitch strategy {\n\t\tcase .Merge:\n\t\t\treturn self.merge()\n\n\t\tcase .Concat:\n\t\t\treturn self.concat()\n\n\t\tcase .Latest:\n\t\t\treturn self.switchToLatest()\n\t\t}\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Value.Error == NoError {\n\t/// Flattens the inner producers sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `signal` fails, the returned signal will forward that failure\n\t///         immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner producers will be treated like\n\t///            `Completed` events on inner producers.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Error> {\n\t\treturn self.flatMap(strategy) { $0.promoteErrors(Error.self) }\n\t}\n}\n\nextension SignalType where Value: SignalType, Error == Value.Error {\n\t/// Flattens the inner signals sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `signal` or an active inner signal emits an error, the\n\t///         returned signal will forward that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Error> {\n\t\treturn self\n\t\t\t.map(SignalProducer.init)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalType where Value: SignalType, Error == NoError {\n\t/// Flattens the inner signals sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If an active inner signal emits an error, the returned signal\n\t///         will forward that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.promoteErrors(Value.Error.self)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalType where Value: SignalType, Error == NoError, Value.Error == NoError {\n\t/// Flattens the inner signals sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.map(SignalProducer.init)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalType where Value: SignalType, Value.Error == NoError {\n\t/// Flattens the inner signals sent upon `signal` (into a single signal of\n\t/// values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `signal` emits an error, the returned signal will forward\n\t///         that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Value, Error> {\n\t\treturn self.flatMap(strategy) { $0.promoteErrors(Error.self) }\n\t}\n}\n\nextension SignalType where Value: SequenceType, Error == NoError {\n\t/// Flattens the `sequence` value sent by `signal` according to\n\t/// the semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> Signal<Value.Generator.Element, Error> {\n\t\treturn self.flatMap(strategy) { .init(values: $0) }\n\t}\n}\n\nextension SignalProducerType where Value: SignalType, Error == Value.Error {\n\t/// Flattens the inner signals sent upon `producer` (into a single producer\n\t/// of values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `producer` or an active inner signal emits an error, the\n\t///         returned producer will forward that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Error> {\n\t\treturn self\n\t\t\t.map(SignalProducer.init)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalProducerType where Value: SignalType, Error == NoError {\n\t/// Flattens the inner signals sent upon `producer` (into a single producer\n\t/// of values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If an active inner signal emits an error, the returned producer\n\t///         will forward that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.promoteErrors(Value.Error.self)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalProducerType where Value: SignalType, Error == NoError, Value.Error == NoError {\n\t/// Flattens the inner signals sent upon `producer` (into a single producer\n\t/// of values), according to the semantics of the given strategy.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Value.Error> {\n\t\treturn self\n\t\t\t.map(SignalProducer.init)\n\t\t\t.flatten(strategy)\n\t}\n}\n\nextension SignalProducerType where Value: SignalType, Value.Error == NoError {\n\t/// Flattens the inner signals sent upon `producer` (into a single producer\n\t/// of values), according to the semantics of the given strategy.\n\t///\n\t/// - note: If `producer` emits an error, the returned producer will forward\n\t///         that error immediately.\n\t///\n\t/// - warning: `Interrupted` events on inner signals will be treated like\n\t///            `Completed` events on inner signals.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Value, Error> {\n\t\treturn self.flatMap(strategy) { $0.promoteErrors(Error.self) }\n\t}\n}\n\nextension SignalProducerType where Value: SequenceType, Error == NoError {\n\t/// Flattens the `sequence` value sent by `producer` according to\n\t/// the semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatten(strategy: FlattenStrategy) -> SignalProducer<Value.Generator.Element, Error> {\n\t\treturn self.flatMap(strategy) { .init(values: $0) }\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Error == Value.Error {\n\t/// Returns a signal which sends all the values from producer signal emitted\n\t/// from `signal`, waiting until each inner producer completes before\n\t/// beginning to send the values from the next inner producer.\n\t///\n\t/// - note: If any of the inner producers fail, the returned signal will\n\t///         forward that failure immediately\n\t///\n\t/// - note: The returned signal completes only when `signal` and all\n\t///         producers emitted from `signal` complete.\n\tprivate func concat() -> Signal<Value.Value, Error> {\n\t\treturn Signal<Value.Value, Error> { relayObserver in\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tlet relayDisposable = CompositeDisposable()\n\n\t\t\tdisposable += relayDisposable\n\t\t\tdisposable += self.observeConcat(relayObserver, relayDisposable)\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\tprivate func observeConcat(observer: Observer<Value.Value, Error>, _ disposable: CompositeDisposable? = nil) -> Disposable? {\n\t\tlet state = ConcatState(observer: observer, disposable: disposable)\n\n\t\treturn self.observe { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(value):\n\t\t\t\tstate.enqueueSignalProducer(value.producer)\n\n\t\t\tcase let .Failed(error):\n\t\t\t\tobserver.sendFailed(error)\n\n\t\t\tcase .Completed:\n\t\t\t\t// Add one last producer to the queue, whose sole job is to\n\t\t\t\t// \"turn out the lights\" by completing `observer`.\n\t\t\t\tstate.enqueueSignalProducer(SignalProducer.empty.on(completed: {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}))\n\n\t\t\tcase .Interrupted:\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == Value.Error {\n\t/// Returns a producer which sends all the values from each producer emitted\n\t/// from `producer`, waiting until each inner producer completes before\n\t/// beginning to send the values from the next inner producer.\n\t///\n\t/// - note: If any of the inner producers emit an error, the returned\n\t///         producer will emit that error.\n\t///\n\t/// - note: The returned producer completes only when `producer` and all\n\t///         producers emitted from `producer` complete.\n\tprivate func concat() -> SignalProducer<Value.Value, Error> {\n\t\treturn SignalProducer<Value.Value, Error> { observer, disposable in\n\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\tdisposable += signalDisposable\n\t\t\t\tsignal.observeConcat(observer, disposable)\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalProducerType {\n\t/// `concat`s `next` onto `self`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func concat(next: SignalProducer<Value, Error>) -> SignalProducer<Value, Error> {\n\t\treturn SignalProducer<SignalProducer<Value, Error>, Error>(values: [ self.producer, next ]).flatten(.Concat)\n\t}\n\t\n\t/// `concat`s `value` onto `self`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func concat(value value: Value) -> SignalProducer<Value, Error> {\n\t\treturn self.concat(SignalProducer(value: value))\n\t}\n\t\n\t/// `concat`s `self` onto initial `previous`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func prefix<P: SignalProducerType where P.Value == Value, P.Error == Error>(previous: P) -> SignalProducer<Value, Error> {\n\t\treturn previous.concat(self.producer)\n\t}\n\t\n\t/// `concat`s `self` onto initial `value`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func prefix(value value: Value) -> SignalProducer<Value, Error> {\n\t\treturn self.prefix(SignalProducer(value: value))\n\t}\n}\n\nprivate final class ConcatState<Value, Error: ErrorType> {\n\t/// The observer of a started `concat` producer.\n\tlet observer: Observer<Value, Error>\n\n\t/// The top level disposable of a started `concat` producer.\n\tlet disposable: CompositeDisposable?\n\n\t/// The active producer, if any, and the producers waiting to be started.\n\tlet queuedSignalProducers: Atomic<[SignalProducer<Value, Error>]> = Atomic([])\n\n\tinit(observer: Signal<Value, Error>.Observer, disposable: CompositeDisposable?) {\n\t\tself.observer = observer\n\t\tself.disposable = disposable\n\t}\n\n\tfunc enqueueSignalProducer(producer: SignalProducer<Value, Error>) {\n\t\tif let d = disposable where d.disposed {\n\t\t\treturn\n\t\t}\n\n\t\tvar shouldStart = true\n\n\t\tqueuedSignalProducers.modify {\n\t\t\t// An empty queue means the concat is idle, ready & waiting to start\n\t\t\t// the next producer.\n\t\t\tvar queue = $0\n\t\t\tshouldStart = queue.isEmpty\n\t\t\tqueue.append(producer)\n\t\t\treturn queue\n\t\t}\n\n\t\tif shouldStart {\n\t\t\tstartNextSignalProducer(producer)\n\t\t}\n\t}\n\n\tfunc dequeueSignalProducer() -> SignalProducer<Value, Error>? {\n\t\tif let d = disposable where d.disposed {\n\t\t\treturn nil\n\t\t}\n\n\t\tvar nextSignalProducer: SignalProducer<Value, Error>?\n\n\t\tqueuedSignalProducers.modify {\n\t\t\t// Active producers remain in the queue until completed. Since\n\t\t\t// dequeueing happens at completion of the active producer, the\n\t\t\t// first producer in the queue can be removed.\n\t\t\tvar queue = $0\n\t\t\tif !queue.isEmpty { queue.removeAtIndex(0) }\n\t\t\tnextSignalProducer = queue.first\n\t\t\treturn queue\n\t\t}\n\n\t\treturn nextSignalProducer\n\t}\n\n\t/// Subscribes to the given signal producer.\n\tfunc startNextSignalProducer(signalProducer: SignalProducer<Value, Error>) {\n\t\tsignalProducer.startWithSignal { signal, disposable in\n\t\t\tlet handle = self.disposable?.addDisposable(disposable) ?? nil\n\n\t\t\tsignal.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Completed, .Interrupted:\n\t\t\t\t\thandle?.remove()\n\n\t\t\t\t\tif let nextSignalProducer = self.dequeueSignalProducer() {\n\t\t\t\t\t\tself.startNextSignalProducer(nextSignalProducer)\n\t\t\t\t\t}\n\n\t\t\t\tcase .Next, .Failed:\n\t\t\t\t\tself.observer.action(event)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Error == Value.Error {\n\t/// Merges a `signal` of SignalProducers down into a single signal, biased\n\t/// toward the producer added earlier. Returns a Signal that will forward\n\t/// events from the inner producers as they arrive.\n\tprivate func merge() -> Signal<Value.Value, Error> {\n\t\treturn Signal<Value.Value, Error> { relayObserver in\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tlet relayDisposable = CompositeDisposable()\n\n\t\t\tdisposable += relayDisposable\n\t\t\tdisposable += self.observeMerge(relayObserver, relayDisposable)\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\tprivate func observeMerge(observer: Observer<Value.Value, Error>, _ disposable: CompositeDisposable) -> Disposable? {\n\t\tlet inFlight = Atomic(1)\n\t\tlet decrementInFlight = {\n\t\t\tlet orig = inFlight.modify { $0 - 1 }\n\t\t\tif orig == 1 {\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\t\t}\n\n\t\treturn self.observe { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(producer):\n\t\t\t\tproducer.startWithSignal { innerSignal, innerDisposable in\n\t\t\t\t\tinFlight.modify { $0 + 1 }\n\t\t\t\t\tlet handle = disposable.addDisposable(innerDisposable)\n\n\t\t\t\t\tinnerSignal.observe { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase .Completed, .Interrupted:\n\t\t\t\t\t\t\thandle.remove()\n\t\t\t\t\t\t\tdecrementInFlight()\n\n\t\t\t\t\t\tcase .Next, .Failed:\n\t\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\tcase let .Failed(error):\n\t\t\t\tobserver.sendFailed(error)\n\n\t\t\tcase .Completed:\n\t\t\t\tdecrementInFlight()\n\n\t\t\tcase .Interrupted:\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == Value.Error {\n\t/// Merges a `signal` of SignalProducers down into a single signal, biased\n\t/// toward the producer added earlier. Returns a Signal that will forward\n\t/// events from the inner producers as they arrive.\n\tprivate func merge() -> SignalProducer<Value.Value, Error> {\n\t\treturn SignalProducer<Value.Value, Error> { relayObserver, disposable in\n\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\tdisposable.addDisposable(signalDisposable)\n\n\t\t\t\tsignal.observeMerge(relayObserver, disposable)\n\t\t\t}\n\n\t\t}\n\t}\n}\n\nextension SignalType {\n\t/// Merges the given signals into a single `Signal` that will emit all\n\t/// values from each of them, and complete when all of them have completed.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic static func merge<Seq: SequenceType, S: SignalType where S.Value == Value, S.Error == Error, Seq.Generator.Element == S>(signals: Seq) -> Signal<Value, Error> {\n\t\tlet producer = SignalProducer<S, Error>(values: signals)\n\t\tvar result: Signal<Value, Error>!\n\n\t\tproducer.startWithSignal { signal, _ in\n\t\t\tresult = signal.flatten(.Merge)\n\t\t}\n\n\t\treturn result\n\t}\n\t\n\t/// Merges the given signals into a single `Signal` that will emit all\n\t/// values from each of them, and complete when all of them have completed.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic static func merge<S: SignalType where S.Value == Value, S.Error == Error>(signals: S...) -> Signal<Value, Error> {\n\t\treturn Signal.merge(signals)\n\t}\n}\n\nextension SignalProducerType {\n\t/// Merges the given producers into a single `SignalProducer` that will emit\n\t/// all values from each of them, and complete when all of them have\n\t/// completed.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic static func merge<Seq: SequenceType, S: SignalProducerType where S.Value == Value, S.Error == Error, Seq.Generator.Element == S>(producers: Seq) -> SignalProducer<Value, Error> {\n\t\treturn SignalProducer(values: producers).flatten(.Merge)\n\t}\n\t\n\t/// Merges the given producers into a single `SignalProducer` that will emit\n\t/// all values from each of them, and complete when all of them have\n\t/// completed.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic static func merge<S: SignalProducerType where S.Value == Value, S.Error == Error>(producers: S...) -> SignalProducer<Value, Error> {\n\t\treturn SignalProducer.merge(producers)\n\t}\n}\n\nextension SignalType where Value: SignalProducerType, Error == Value.Error {\n\t/// Returns a signal that forwards values from the latest signal sent on\n\t/// `signal`, ignoring values sent on previous inner signal.\n\t///\n\t/// An error sent on `signal` or the latest inner signal will be sent on the\n\t/// returned signal.\n\t///\n\t/// The returned signal completes when `signal` and the latest inner\n\t/// signal have both completed.\n\tprivate func switchToLatest() -> Signal<Value.Value, Error> {\n\t\treturn Signal<Value.Value, Error> { observer in\n\t\t\tlet composite = CompositeDisposable()\n\t\t\tlet serial = SerialDisposable()\n\n\t\t\tcomposite += serial\n\t\t\tcomposite += self.observeSwitchToLatest(observer, serial)\n\n\t\t\treturn composite\n\t\t}\n\t}\n\n\tprivate func observeSwitchToLatest(observer: Observer<Value.Value, Error>, _ latestInnerDisposable: SerialDisposable) -> Disposable? {\n\t\tlet state = Atomic(LatestState<Value, Error>())\n\n\t\treturn self.observe { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(innerProducer):\n\t\t\t\tinnerProducer.startWithSignal { innerSignal, innerDisposable in\n\t\t\t\t\tstate.modify {\n\t\t\t\t\t\t// When we replace the disposable below, this prevents\n\t\t\t\t\t\t// the generated Interrupted event from doing any work.\n\t\t\t\t\t\tvar state = $0\n\t\t\t\t\t\tstate.replacingInnerSignal = true\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\n\t\t\t\t\tlatestInnerDisposable.innerDisposable = innerDisposable\n\n\t\t\t\t\tstate.modify {\n\t\t\t\t\t\tvar state = $0\n\t\t\t\t\t\tstate.replacingInnerSignal = false\n\t\t\t\t\t\tstate.innerSignalComplete = false\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\n\t\t\t\t\tinnerSignal.observe { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\t\t// If interruption occurred as a result of a new\n\t\t\t\t\t\t\t// producer arriving, we don't want to notify our\n\t\t\t\t\t\t\t// observer.\n\t\t\t\t\t\t\tlet original = state.modify {\n\t\t\t\t\t\t\t\tvar state = $0\n\t\t\t\t\t\t\t\tif !state.replacingInnerSignal {\n\t\t\t\t\t\t\t\t\tstate.innerSignalComplete = true\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn state\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif !original.replacingInnerSignal && original.outerSignalComplete {\n\t\t\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tlet original = state.modify {\n\t\t\t\t\t\t\t\tvar state = $0\n\t\t\t\t\t\t\t\tstate.innerSignalComplete = true\n\t\t\t\t\t\t\t\treturn state\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif original.outerSignalComplete {\n\t\t\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcase .Next, .Failed:\n\t\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\tcase let .Failed(error):\n\t\t\t\tobserver.sendFailed(error)\n\t\t\tcase .Completed:\n\t\t\t\tlet original = state.modify {\n\t\t\t\t\tvar state = $0\n\t\t\t\t\tstate.outerSignalComplete = true\n\t\t\t\t\treturn state\n\t\t\t\t}\n\n\t\t\t\tif original.innerSignalComplete {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\t\t\tcase .Interrupted:\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalProducerType where Value: SignalProducerType, Error == Value.Error {\n\t/// Returns a signal that forwards values from the latest signal sent on\n\t/// `signal`, ignoring values sent on previous inner signal.\n\t///\n\t/// An error sent on `signal` or the latest inner signal will be sent on the\n\t/// returned signal.\n\t///\n\t/// The returned signal completes when `signal` and the latest inner\n\t/// signal have both completed.\n\tprivate func switchToLatest() -> SignalProducer<Value.Value, Error> {\n\t\treturn SignalProducer<Value.Value, Error> { observer, disposable in\n\t\t\tlet latestInnerDisposable = SerialDisposable()\n\t\t\tdisposable.addDisposable(latestInnerDisposable)\n\n\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\tdisposable += signalDisposable\n\t\t\t\tdisposable += signal.observeSwitchToLatest(observer, latestInnerDisposable)\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate struct LatestState<Value, Error: ErrorType> {\n\tvar outerSignalComplete: Bool = false\n\tvar innerSignalComplete: Bool = true\n\t\n\tvar replacingInnerSignal: Bool = false\n}\n\n\nextension SignalType {\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting producers (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `signal` or any of the created producers fail, the returned signal\n\t/// will forward that failure immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, Error>) -> Signal<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting producers (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `signal` fails, the returned signal will forward that failure\n\t/// immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, NoError>) -> Signal<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `signal` or any of the created signals emit an error, the returned\n\t/// signal will forward that error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, Error>) -> Signal<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `signal` emits an error, the returned signal will forward that\n\t/// error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, NoError>) -> Signal<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n}\n\nextension SignalType where Error == NoError {\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If any of the created signals emit an error, the returned signal\n\t/// will forward that error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U, E>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, E>) -> Signal<U, E> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, NoError>) -> Signal<U, NoError> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If any of the created signals emit an error, the returned signal\n\t/// will forward that error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U, E>(strategy: FlattenStrategy, transform: Value -> Signal<U, E>) -> Signal<U, E> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `signal` to a new signal, then flattens the\n\t/// resulting signals (into a signal of values), according to the\n\t/// semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, NoError>) -> Signal<U, NoError> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n}\n\nextension SignalProducerType {\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting producers (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `self` or any of the created producers fail, the returned producer\n\t/// will forward that failure immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, Error>) -> SignalProducer<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting producers (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `self` fails, the returned producer will forward that failure\n\t/// immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, NoError>) -> SignalProducer<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting signals (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `self` or any of the created signals emit an error, the returned\n\t/// producer will forward that error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, Error>) -> SignalProducer<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting signals (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If `self` emits an error, the returned producer will forward that\n\t/// error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, NoError>) -> SignalProducer<U, Error> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n}\n\nextension SignalProducerType where Error == NoError {\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting producers (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If any of the created producers fail, the returned producer will\n\t/// forward that failure immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U, E>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, E>) -> SignalProducer<U, E> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\t\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting producers (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> SignalProducer<U, NoError>) -> SignalProducer<U, NoError> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting signals (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t///\n\t/// If any of the created signals emit an error, the returned\n\t/// producer will forward that error immediately.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U, E>(strategy: FlattenStrategy, transform: Value -> Signal<U, E>) -> SignalProducer<U, E> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n\n\t/// Maps each event from `self` to a new producer, then flattens the\n\t/// resulting signals (into a producer of values), according to the\n\t/// semantics of the given strategy.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMap<U>(strategy: FlattenStrategy, transform: Value -> Signal<U, NoError>) -> SignalProducer<U, NoError> {\n\t\treturn map(transform).flatten(strategy)\n\t}\n}\n\n\nextension SignalType {\n\t/// Catches any failure that may occur on the input signal, mapping to a new\n\t/// producer that starts in its place.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func flatMapError<F>(handler: Error -> SignalProducer<Value, F>) -> Signal<Value, F> {\n\t\treturn Signal { observer in\n\t\t\tself.observeFlatMapError(handler, observer, SerialDisposable())\n\t\t}\n\t}\n\n\tprivate func observeFlatMapError<F>(handler: Error -> SignalProducer<Value, F>, _ observer: Observer<Value, F>, _ serialDisposable: SerialDisposable) -> Disposable? {\n\t\treturn self.observe { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(value):\n\t\t\t\tobserver.sendNext(value)\n\t\t\tcase let .Failed(error):\n\t\t\t\thandler(error).startWithSignal { signal, disposable in\n\t\t\t\t\tserialDisposable.innerDisposable = disposable\n\t\t\t\t\tsignal.observe(observer)\n\t\t\t\t}\n\t\t\tcase .Completed:\n\t\t\t\tobserver.sendCompleted()\n\t\t\tcase .Interrupted:\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalProducerType {\n\t/// Catches any failure that may occur on the input producer, mapping to a\n\t/// new producer that starts in its place.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func flatMapError<F>(handler: Error -> SignalProducer<Value, F>) -> SignalProducer<Value, F> {\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tlet serialDisposable = SerialDisposable()\n\t\t\tdisposable.addDisposable(serialDisposable)\n\n\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\tserialDisposable.innerDisposable = signalDisposable\n\n\t\t\t\tsignal.observeFlatMapError(handler, observer, serialDisposable)\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/FoundationExtensions.swift",
    "content": "//\n//  FoundationExtensions.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-10-19.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Foundation\nimport enum Result.NoError\n\nextension NSNotificationCenter {\n\t/// Returns a SignalProducer to observe posting of the specified\n\t/// notification.\n\t///\n\t/// - parameters:\n\t///   - name: name of the notification to observe\n\t///   - object: an instance which sends the notifications\n\t///\n\t/// - returns: A SignalProducer of notifications posted that match the given\n\t///            criteria.\n\t///\n\t/// - note: If the `object` is deallocated before starting the producer, it\n\t///         will terminate immediately with an `Interrupted` event.\n\t///         Otherwise, the producer will not terminate naturally, so it must\n\t///         be explicitly disposed to avoid leaks.\n\tpublic func rac_notifications(name: String? = nil, object: AnyObject? = nil) -> SignalProducer<NSNotification, NoError> {\n\t\t// We're weakly capturing an optional reference here, which makes destructuring awkward.\n\t\tlet objectWasNil = (object == nil)\n\t\treturn SignalProducer { [weak object] observer, disposable in\n\t\t\tguard object != nil || objectWasNil else {\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tlet notificationObserver = self.addObserverForName(name, object: object, queue: nil) { notification in\n\t\t\t\tobserver.sendNext(notification)\n\t\t\t}\n\n\t\t\tdisposable += {\n\t\t\t\tself.removeObserver(notificationObserver)\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate let defaultSessionError = NSError(domain: \"org.reactivecocoa.ReactiveCocoa.rac_dataWithRequest\", code: 1, userInfo: nil)\n\nextension NSURLSession {\n\t/// Returns a SignalProducer which performs the work associated with an\n\t/// `NSURLSession`\n\t///\n\t/// - parameters:\n\t///   - request: A request that will be performed when the producer is\n\t///              started\n\t///\n\t/// - returns: A producer that will execute the given request once for each\n\t///            invocation of `start()`.\n\t///\n\t/// - note: This method will not send an error event in the case of a server\n\t///         side error (i.e. when a response with status code other than\n\t///         200...299 is received).\n\tpublic func rac_dataWithRequest(request: NSURLRequest) -> SignalProducer<(NSData, NSURLResponse), NSError> {\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tlet task = self.dataTaskWithRequest(request) { data, response, error in\n\t\t\t\tif let data = data, response = response {\n\t\t\t\t\tobserver.sendNext((data, response))\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t} else {\n\t\t\t\t\tobserver.sendFailed(error ?? defaultSessionError)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisposable += {\n\t\t\t\ttask.cancel()\n\t\t\t}\n\t\t\ttask.resume()\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/ObjectiveCBridging.swift",
    "content": "//\n//  ObjectiveCBridging.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-02.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\nimport Result\n\nextension RACDisposable: Disposable {}\n\nextension RACScheduler: DateSchedulerType {\n\t/// The current date, as determined by this scheduler.\n\tpublic var currentDate: NSDate {\n\t\treturn NSDate()\n\t}\n\n\t/// Schedule an action for immediate execution.\n\t///\n\t/// - note: This method calls the Objective-C implementation of `schedule:`\n\t///         method.\n\t///\n\t/// - parameters:\n\t///   - action: Closure to perform.\n\t///\n\t/// - returns: Disposable that can be used to cancel the work before it\n\t///            begins.\n\tpublic func schedule(action: () -> Void) -> Disposable? {\n\t\tlet disposable: RACDisposable = self.schedule(action) // Call the Objective-C implementation\n\t\treturn disposable as Disposable?\n\t}\n\n\t/// Schedule an action for execution at or after the given date.\n\t///\n\t/// - parameters:\n\t///   - date: Starting date.\n\t///   - action: Closure to perform.\n\t///\n\t/// - returns: Optional disposable that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(date: NSDate, action: () -> Void) -> Disposable? {\n\t\treturn self.after(date, schedule: action)\n\t}\n\n\t/// Schedule a recurring action at the given interval, beginning at the\n\t/// given start time.\n\t///\n\t/// - parameters:\n\t///   - date: Starting date.\n\t///   - repeatingEvery: Repetition interval.\n\t///   - withLeeway: Some delta for repetition.\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, withLeeway: NSTimeInterval, action: () -> Void) -> Disposable? {\n\t\treturn self.after(date, repeatingEvery: repeatingEvery, withLeeway: withLeeway, schedule: action)\n\t}\n}\n\nextension ImmediateScheduler {\n\t/// Create `RACScheduler` that performs actions instantly.\n\t///\n\t/// - returns: `RACScheduler` that instantly performs actions.\n\tpublic func toRACScheduler() -> RACScheduler {\n\t\treturn RACScheduler.immediateScheduler()\n\t}\n}\n\nextension UIScheduler {\n\t/// Create `RACScheduler` for `UIScheduler`\n\t///\n\t/// - returns: `RACScheduler` instance that queues events on main thread.\n\tpublic func toRACScheduler() -> RACScheduler {\n\t\treturn RACScheduler.mainThreadScheduler()\n\t}\n}\n\nextension QueueScheduler {\n\t/// Create `RACScheduler` backed with own queue\n\t///\n\t/// - returns: Instance `RACScheduler` that queues events on\n\t///            `QueueScheduler`'s queue.\n\tpublic func toRACScheduler() -> RACScheduler {\n\t\treturn RACTargetQueueScheduler(name: \"org.reactivecocoa.ReactiveCocoa.QueueScheduler.toRACScheduler()\", targetQueue: queue)\n\t}\n}\n\nprivate func defaultNSError(message: String, file: String, line: Int) -> NSError {\n\treturn Result<(), NSError>.error(message, file: file, line: line)\n}\n\nextension RACSignal {\n\t/// Create a `SignalProducer` which will subscribe to the receiver once for\n\t/// each invocation of `start()`.\n\t///\n\t/// - parameters:\n\t///   - file: Current file name.\n\t///   - line: Current line in file.\n\t///\n\t/// - returns: Signal producer created from `self`.\n\tpublic func toSignalProducer(file: String = #file, line: Int = #line) -> SignalProducer<AnyObject?, NSError> {\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tlet next = { obj in\n\t\t\t\tobserver.sendNext(obj)\n\t\t\t}\n\n\t\t\tlet failed = { nsError in\n\t\t\t\tobserver.sendFailed(nsError ?? defaultNSError(\"Nil RACSignal error\", file: file, line: line))\n\t\t\t}\n\n\t\t\tlet completed = {\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\n\t\t\tdisposable += self.subscribeNext(next, error: failed, completed: completed)\n\t\t}\n\t}\n}\n\nextension SignalType {\n\t/// Turn each value into an Optional.\n\tprivate func optionalize() -> Signal<Value?, Error> {\n\t\treturn signal.map(Optional.init)\n\t}\n}\n\n// MARK: - toRACSignal\n\nextension SignalProducerType where Value: AnyObject {\n\t/// Create a `RACSignal` that will `start()` the producer once for each\n\t/// subscription.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.lift { $0.optionalize() }\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalProducerType where Value: OptionalType, Value.Wrapped: AnyObject {\n\t/// Create a `RACSignal` that will `start()` the producer once for each\n\t/// subscription.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.mapError { $0 as NSError }\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalProducerType where Value: AnyObject, Error: NSError {\n\t/// Create a `RACSignal` that will `start()` the producer once for each\n\t/// subscription.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.lift { $0.optionalize() }\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalProducerType where Value: OptionalType, Value.Wrapped: AnyObject, Error: NSError {\n\t/// Create a `RACSignal` that will `start()` the producer once for each\n\t/// subscription.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\t// This special casing of `Error: NSError` is a workaround for\n\t\t// rdar://22708537 which causes an NSError's UserInfo dictionary to get\n\t\t// discarded during a cast from ErrorType to NSError in a generic\n\t\t// function\n\t\treturn RACSignal.createSignal { subscriber in\n\t\t\tlet selfDisposable = self.start { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tsubscriber.sendNext(value.optional)\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tsubscriber.sendError(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tsubscriber.sendCompleted()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn RACDisposable {\n\t\t\t\tselfDisposable.dispose()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: AnyObject {\n\t/// Create a `RACSignal` that will observe the given signal.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.optionalize()\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalType where Value: AnyObject, Error: NSError {\n\t/// Create a `RACSignal` that will observe the given signal.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.optionalize()\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalType where Value: OptionalType, Value.Wrapped: AnyObject {\n\t/// Create a `RACSignal` that will observe the given signal.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\treturn self\n\t\t\t.mapError { $0 as NSError }\n\t\t\t.toRACSignal()\n\t}\n}\n\nextension SignalType where Value: OptionalType, Value.Wrapped: AnyObject, Error: NSError {\n\t/// Create a `RACSignal` that will observe the given signal.\n\t///\n\t/// - note: Any `Interrupted` events will be silently discarded.\n\t///\n\t/// - returns: `RACSignal` instantiated from `self`.\n\tpublic func toRACSignal() -> RACSignal {\n\t\t// This special casing of `Error: NSError` is a workaround for\n\t\t// rdar://22708537 which causes an NSError's UserInfo dictionary to get\n\t\t// discarded during a cast from ErrorType to NSError in a generic\n\t\t// function\n\t\treturn RACSignal.createSignal { subscriber in\n\t\t\tlet selfDisposable = self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tsubscriber.sendNext(value.optional)\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tsubscriber.sendError(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tsubscriber.sendCompleted()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn RACDisposable {\n\t\t\t\tselfDisposable?.dispose()\n\t\t\t}\n\t\t}\n\t}\n}\n\n// MARK: -\n\nextension RACCommand {\n\t/// Creates an Action that will execute the receiver.\n\t///\n\t/// - note: The returned Action will not necessarily be marked as executing\n\t///         when the command is. However, the reverse is always true: the\n\t///         RACCommand will always be marked as executing when the action\n\t///         is.\n\t///\n\t/// - parameters:\n\t///   - file: Current file name.\n\t///   - line: Current line in file.\n\t///\n\t/// - returns: Action created from `self`.\n\tpublic func toAction(file: String = #file, line: Int = #line) -> Action<AnyObject?, AnyObject?, NSError> {\n\t\tlet enabledProperty = MutableProperty(true)\n\n\t\tenabledProperty <~ self.enabled.toSignalProducer()\n\t\t\t.map { $0 as! Bool }\n\t\t\t.flatMapError { _ in SignalProducer<Bool, NoError>(value: false) }\n\n\t\treturn Action(enabledIf: enabledProperty) { input -> SignalProducer<AnyObject?, NSError> in\n\t\t\tlet executionSignal = RACSignal.`defer` {\n\t\t\t\treturn self.execute(input)\n\t\t\t}\n\n\t\t\treturn executionSignal.toSignalProducer(file, line: line)\n\t\t}\n\t}\n}\n\nextension ActionType {\n\tprivate var commandEnabled: RACSignal {\n\t\treturn self.enabled.producer\n\t\t\t.map { $0 as NSNumber }\n\t\t\t.toRACSignal()\n\t}\n}\n\n/// Create a `RACCommand` that will execute the action.\n///\n/// - note: The returned command will not necessarily be marked as executing\n///         when the action is. However, the reverse is always true: the Action\n///         will always be marked as executing when the RACCommand is.\n///\n/// - returns: `RACCommand` with bound action.\npublic func toRACCommand<Output: AnyObject, Error>(action: Action<AnyObject?, Output, Error>) -> RACCommand {\n\treturn RACCommand(enabled: action.commandEnabled) { input -> RACSignal in\n\t\treturn action\n\t\t\t.apply(input)\n\t\t\t.toRACSignal()\n\t}\n}\n\n/// Creates a RACCommand that will execute the action.\n///\n/// - note: The returned command will not necessarily be marked as executing\n///         when the action is. However, the reverse is always true: the Action\n///         will always be marked as executing when the RACCommand is.\n///\n/// - returns: `RACCommand` with bound action.\npublic func toRACCommand<Output: AnyObject, Error>(action: Action<AnyObject?, Output?, Error>) -> RACCommand {\n\treturn RACCommand(enabled: action.commandEnabled) { input -> RACSignal in\n\t\treturn action\n\t\t\t.apply(input)\n\t\t\t.toRACSignal()\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Observer.swift",
    "content": "//\n//  Observer.swift\n//  ReactiveCocoa\n//\n//  Created by Andy Matuschak on 10/2/15.\n//  Copyright © 2015 GitHub. All rights reserved.\n//\n\n/// A protocol for type-constrained extensions of `Observer`.\npublic protocol ObserverType {\n\tassociatedtype Value\n\tassociatedtype Error: ErrorType\n\n\t/// Puts a `Next` event into `self`.\n\tfunc sendNext(value: Value)\n\n\t/// Puts a `Failed` event into `self`.\n\tfunc sendFailed(error: Error)\n\n\t/// Puts a `Completed` event into `self`.\n\tfunc sendCompleted()\n\n\t/// Puts an `Interrupted` event into `self`.\n\tfunc sendInterrupted()\n}\n\n/// An Observer is a simple wrapper around a function which can receive Events\n/// (typically from a Signal).\npublic struct Observer<Value, Error: ErrorType> {\n\tpublic typealias Action = Event<Value, Error> -> Void\n\n\t/// An action that will be performed upon arrival of the event.\n\tpublic let action: Action\n\n\t/// An initializer that accepts a closure accepting an event for the \n\t/// observer.\n\t///\n\t/// - parameters:\n\t///   - action: A closure to lift over received event.\n\tpublic init(_ action: Action) {\n\t\tself.action = action\n\t}\n\n\t/// An initializer that accepts closures for different event types.\n\t///\n\t/// - parameters:\n\t///   - failed: Optional closure that accepts an `Error` parameter when a\n\t///             `Failed` event is observed.\n\t///   - completed: Optional closure executed when a `Completed` event is\n\t///                observed.\n\t///   - interruped: Optional closure executed when an `Interrupted` event is\n\t///                 observed.\n\t///   - next: Optional closure executed when a `Next` event is observed.\n\tpublic init(failed: (Error -> Void)? = nil, completed: (() -> Void)? = nil, interrupted: (() -> Void)? = nil, next: (Value -> Void)? = nil) {\n\t\tself.init { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(value):\n\t\t\t\tnext?(value)\n\n\t\t\tcase let .Failed(error):\n\t\t\t\tfailed?(error)\n\n\t\t\tcase .Completed:\n\t\t\t\tcompleted?()\n\n\t\t\tcase .Interrupted:\n\t\t\t\tinterrupted?()\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension Observer: ObserverType {\n\t/// Puts a `Next` event into `self`.\n\t///\n\t/// - parameters:\n\t///   - value: A value sent with the `Next` event.\n\tpublic func sendNext(value: Value) {\n\t\taction(.Next(value))\n\t}\n\n\t/// Puts a `Failed` event into `self`.\n\t///\n\t/// - parameters:\n\t///   - error: An error object sent with `Failed` event.\n\tpublic func sendFailed(error: Error) {\n\t\taction(.Failed(error))\n\t}\n\n\t/// Puts a `Completed` event into `self`.\n\tpublic func sendCompleted() {\n\t\taction(.Completed)\n\t}\n\n\t/// Puts an `Interrupted` event into `self`.\n\tpublic func sendInterrupted() {\n\t\taction(.Interrupted)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Optional.swift",
    "content": "//\n//  Optional.swift\n//  ReactiveCocoa\n//\n//  Created by Neil Pankey on 6/24/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\n/// An optional protocol for use in type constraints.\npublic protocol OptionalType {\n\t/// The type contained in the otpional.\n\tassociatedtype Wrapped\n\n\t/// Extracts an optional from the receiver.\n\tvar optional: Wrapped? { get }\n}\n\nextension Optional: OptionalType {\n\tpublic var optional: Wrapped? {\n\t\treturn self\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Property.swift",
    "content": "import Foundation\nimport enum Result.NoError\n\n/// Represents a property that allows observation of its changes.\npublic protocol PropertyType {\n\tassociatedtype Value\n\n\t/// The current value of the property.\n\tvar value: Value { get }\n\n\t/// A producer for Signals that will send the property's current value,\n\t/// followed by all changes over time.\n\tvar producer: SignalProducer<Value, NoError> { get }\n\n\t/// A signal that will send the property's changes over time.\n\tvar signal: Signal<Value, NoError> { get }\n}\n\n/// A read-only property that allows observation of its changes.\npublic struct AnyProperty<Value>: PropertyType {\n\n\tprivate let _value: () -> Value\n\tprivate let _producer: () -> SignalProducer<Value, NoError>\n\tprivate let _signal: () -> Signal<Value, NoError>\n\n\n\tpublic var value: Value {\n\t\treturn _value()\n\t}\n\n\tpublic var producer: SignalProducer<Value, NoError> {\n\t\treturn _producer()\n\t}\n\n\tpublic var signal: Signal<Value, NoError> {\n\t\treturn _signal()\n\t}\n\t\n\t/// Initializes a property as a read-only view of the given property.\n\t///\n\t/// - parameters:\n\t///   - property: A property to read as this property's own value.\n\tpublic init<P: PropertyType where P.Value == Value>(_ property: P) {\n\t\t_value = { property.value }\n\t\t_producer = { property.producer }\n\t\t_signal = { property.signal }\n\t}\n\t\n\t/// Initializes a property that first takes on `initialValue`, then each\n\t/// value sent on a signal created by `producer`.\n\t///\n\t/// - parameters:\n\t///   - initialValue: Starting value for the property.\n\t///   - producer: A producer that will start immediately and send values to\n\t///               the property.\n\tpublic init(initialValue: Value, producer: SignalProducer<Value, NoError>) {\n\t\tlet mutableProperty = MutableProperty(initialValue)\n\t\tmutableProperty <~ producer\n\t\tself.init(mutableProperty)\n\t}\n\t\n\t/// Initializes a property that first takes on `initialValue`, then each\n\t/// value sent on `signal`.\n\t///\n\t/// - parameters:\n\t///   - initialValue: Starting value for the property.\n\t///   - signal: A signal that will send values to the property.\n\tpublic init(initialValue: Value, signal: Signal<Value, NoError>) {\n\t\tlet mutableProperty = MutableProperty(initialValue)\n\t\tmutableProperty <~ signal\n\t\tself.init(mutableProperty)\n\t}\n}\n\nextension PropertyType {\n\t/// Maps the current value and all subsequent values to a new value.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that will map the current `value` of this\n\t///                `Property` to a new value.\n\t///\n\t/// - returns: A new instance of `AnyProperty` who's holds a mapped value\n\t///            from `self`.\n\tpublic func map<U>(transform: Value -> U) -> AnyProperty<U> {\n\t\tlet mappedProducer = SignalProducer<U, NoError> { observer, disposable in\n\t\t\tdisposable += ActionDisposable { self }\n\t\t\tdisposable += self.producer.map(transform).start(observer)\n\t\t}\n\t\treturn AnyProperty(initialValue: transform(value), producer: mappedProducer)\n\t}\n}\n\n/// A property that never changes.\npublic struct ConstantProperty<Value>: PropertyType {\n\n\tpublic let value: Value\n\tpublic let producer: SignalProducer<Value, NoError>\n\tpublic let signal: Signal<Value, NoError>\n\n\t/// Initializes the property to have the given value.\n\t///\n\t/// - parameters:\n\t///   - value: Property's value.\n\tpublic init(_ value: Value) {\n\t\tself.value = value\n\t\tself.producer = SignalProducer(value: value)\n\t\tself.signal = .empty\n\t}\n}\n\n/// Represents an observable property that can be mutated directly.\n///\n/// Only classes can conform to this protocol, because instances must support\n/// weak references (and value types currently do not).\npublic protocol MutablePropertyType: class, PropertyType {\n\tvar value: Value { get set }\n}\n\n/// A mutable property of type `Value` that allows observation of its changes.\n///\n/// Instances of this class are thread-safe.\npublic final class MutableProperty<Value>: MutablePropertyType {\n\n\tprivate let observer: Signal<Value, NoError>.Observer\n\n\t/// Need a recursive lock around `value` to allow recursive access to\n\t/// `value`. Note that recursive sets will still deadlock because the\n\t/// underlying producer prevents sending recursive events.\n\tprivate let lock: NSRecursiveLock\n\n\t/// The getter of the underlying storage, which may outlive the property\n\t/// if a returned producer is being retained.\n\tprivate let getter: () -> Value\n\n\t/// The setter of the underlying storage.\n\tprivate let setter: Value -> Void\n\n\t/// The current value of the property.\n\t///\n\t/// Setting this to a new value will notify all observers of any Signals\n\t/// created from the `values` producer.\n\tpublic var value: Value {\n\t\tget {\n\t\t\treturn withValue { $0 }\n\t\t}\n\n\t\tset {\n\t\t\tswap(newValue)\n\t\t}\n\t}\n\n\t/// A signal that will send the property's changes over time,\n\t/// then complete when the property has deinitialized.\n\tpublic let signal: Signal<Value, NoError>\n\n\t/// A producer for Signals that will send the property's current value,\n\t/// followed by all changes over time, then complete when the property has\n\t/// deinitialized.\n\tpublic var producer: SignalProducer<Value, NoError> {\n\t\treturn SignalProducer { [getter, weak self] producerObserver, producerDisposable in\n\t\t\tif let strongSelf = self {\n\t\t\t\tstrongSelf.withValue { value in\n\t\t\t\t\tproducerObserver.sendNext(value)\n\t\t\t\t\tproducerDisposable += strongSelf.signal.observe(producerObserver)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t/// As the setter would have been deinitialized with the property,\n\t\t\t\t/// the underlying storage would be immutable, and locking is no longer necessary.\n\t\t\t\tproducerObserver.sendNext(getter())\n\t\t\t\tproducerObserver.sendCompleted()\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Initializes a mutable property that first takes on `initialValue`\n\t///\n\t/// - parameters:\n\t///   - initialValue: Starting value for the mutable property.\n\tpublic init(_ initialValue: Value) {\n\t\tvar value = initialValue\n\n\t\tlock = NSRecursiveLock()\n\t\tlock.name = \"org.reactivecocoa.ReactiveCocoa.MutableProperty\"\n\n\t\tgetter = { value }\n\t\tsetter = { newValue in value = newValue }\n\n\t\t(signal, observer) = Signal.pipe()\n\t}\n\n\t/// Atomically replaces the contents of the variable.\n\t///\n\t/// - parameters:\n\t///   - newValue: New property value.\n\t///\n\t/// - returns: The previous property value.\n\tpublic func swap(newValue: Value) -> Value {\n\t\treturn modify { _ in newValue }\n\t}\n\n\t/// Atomically modifies the variable.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that accepts old property value and returns a new\n\t///             property value.\n\t/// - returns: The previous property value.\n\tpublic func modify(@noescape action: (Value) throws -> Value) rethrows -> Value {\n\t\treturn try withValue { value in\n\t\t\tlet newValue = try action(value)\n\t\t\tsetter(newValue)\n\t\t\tobserver.sendNext(newValue)\n\t\t\treturn value\n\t\t}\n\t}\n\n\t/// Atomically performs an arbitrary action using the current value of the\n\t/// variable.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that accepts current property value.\n\t///\n\t/// - returns: the result of the action.\n\tpublic func withValue<Result>(@noescape action: (Value) throws -> Result) rethrows -> Result {\n\t\tlock.lock()\n\t\tdefer { lock.unlock() }\n\n\t\treturn try action(getter())\n\t}\n\n\tdeinit {\n\t\tobserver.sendCompleted()\n\t}\n}\n\ninfix operator <~ {\n\tassociativity right\n\n\t// Binds tighter than assignment but looser than everything else\n\tprecedence 93\n}\n\n/// Binds a signal to a property, updating the property's value to the latest\n/// value sent by the signal.\n///\n/// - note: The binding will automatically terminate when the property is \n///         deinitialized, or when the signal sends a `Completed` event.\n///\n/// ````\n/// let property = MutableProperty(0)\n/// let signal = Signal({ /* do some work after some time */ })\n/// property <~ signal\n/// ````\n///\n/// ````\n/// let property = MutableProperty(0)\n/// let signal = Signal({ /* do some work after some time */ })\n/// let disposable = property <~ signal\n/// ...\n/// // Terminates binding before property dealloc or signal's \n/// // `Completed` event.\n/// disposable.dispose()\n/// ````\n///\n/// - parameters:\n///   - property: A property to bind to.\n///   - signal: A signal to bind.\n///\n/// - returns: A disposable that can be used to terminate binding before the\n///            deinitialization of property or signal's `Completed` event.\npublic func <~ <P: MutablePropertyType>(property: P, signal: Signal<P.Value, NoError>) -> Disposable {\n\tlet disposable = CompositeDisposable()\n\tdisposable += property.producer.startWithCompleted {\n\t\tdisposable.dispose()\n\t}\n\n\tdisposable += signal.observe { [weak property] event in\n\t\tswitch event {\n\t\tcase let .Next(value):\n\t\t\tproperty?.value = value\n\t\tcase .Completed:\n\t\t\tdisposable.dispose()\n\t\tcase .Failed, .Interrupted:\n\t\t\tbreak\n\t\t}\n\t}\n\n\treturn disposable\n}\n\n\n/// Creates a signal from the given producer, which will be immediately bound to\n/// the given property, updating the property's value to the latest value sent\n/// by the signal.\n///\n/// ````\n/// let property = MutableProperty(0)\n/// let producer = SignalProducer<Int, NoError>(value: 1)\n/// property <~ producer\n/// print(property.value) // prints `1`\n/// ````\n///\n/// ````\n/// let property = MutableProperty(0)\n/// let producer = SignalProducer({ /* do some work after some time */ })\n/// let disposable = (property <~ producer)\n/// ...\n/// // Terminates binding before property dealloc or\n/// // signal's `Completed` event.\n/// disposable.dispose()\n/// ````\n///\n/// - note: The binding will automatically terminate when the property is \n///         deinitialized, or when the created producer sends a `Completed` \n///         event.\n///\n/// - parameters:\n///   - property: A property to bind to.\n///   - producer: A producer to bind.\n///\n/// - returns: A disposable that can be used to terminate binding before the\n///            deinitialization of property or producer's `Completed` event.\npublic func <~ <P: MutablePropertyType>(property: P, producer: SignalProducer<P.Value, NoError>) -> Disposable {\n\tlet disposable = CompositeDisposable()\n\n\tproducer\n\t\t.on(completed: { disposable.dispose() })\n\t\t.startWithSignal { signal, signalDisposable in\n\t\t\tdisposable += property <~ signal\n\t\t\tdisposable += signalDisposable\n\n\t\t\tdisposable += property.producer.startWithCompleted {\n\t\t\t\tdisposable.dispose()\n\t\t\t}\n\t\t}\n\n\treturn disposable\n}\n\n\n/// Binds `destinationProperty` to the latest values of `sourceProperty`.\n///\n/// ````\n/// let dstProperty = MutableProperty(0)\n/// let srcProperty = ConstantProperty(10)\n/// dstProperty <~ srcProperty\n/// print(dstProperty.value) // prints 10\n/// ````\n///\n/// ````\n/// let dstProperty = MutableProperty(0)\n/// let srcProperty = ConstantProperty(10)\n/// let disposable = (dstProperty <~ srcProperty)\n/// ...\n/// disposable.dispose() // terminate the binding earlier if\n///                      // needed\n/// ````\n///\n/// - note: The binding will automatically terminate when either property is\n///         deinitialized.\n///\n/// - parameters:\n///   - destinationProperty: A property to bind to.\n///   - sourceProperty: A property to bind.\n///\n/// - returns: A disposable that can be used to terminate binding before the\n///            deinitialization of destination property or source property\n///            producer's `Completed` event.\npublic func <~ <Destination: MutablePropertyType, Source: PropertyType where Source.Value == Destination.Value>(destinationProperty: Destination, sourceProperty: Source) -> Disposable {\n\treturn destinationProperty <~ sourceProperty.producer\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Scheduler.swift",
    "content": "//\n//  Scheduler.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-06-02.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Foundation\n\n/// Represents a serial queue of work items.\npublic protocol SchedulerType {\n\t/// Enqueues an action on the scheduler.\n\t///\n\t/// When the work is executed depends on the scheduler in use.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tfunc schedule(action: () -> Void) -> Disposable?\n}\n\n/// A particular kind of scheduler that supports enqueuing actions at future\n/// dates.\npublic protocol DateSchedulerType: SchedulerType {\n\t/// The current date, as determined by this scheduler.\n\t///\n\t/// This can be implemented to deterministically return a known date (e.g.,\n\t/// for testing purposes).\n\tvar currentDate: NSDate { get }\n\n\t/// Schedules an action for execution at or after the given date.\n\t///\n\t/// - parameters:\n\t///   - date: Starting time.\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tfunc scheduleAfter(date: NSDate, action: () -> Void) -> Disposable?\n\n\t/// Schedules a recurring action at the given interval, beginning at the\n\t/// given date.\n\t///\n\t/// - parameters:\n\t///   - date: Starting time.\n\t///   - repeatingEvery: Repetition interval.\n\t///   - withLeeway: Some delta for repetition.\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tfunc scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, withLeeway: NSTimeInterval, action: () -> Void) -> Disposable?\n}\n\n/// A scheduler that performs all work synchronously.\npublic final class ImmediateScheduler: SchedulerType {\n\tpublic init() {}\n\n\t/// Immediately calls passed in `action`.\n\t///\n\t/// - parameters:\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: `nil`.\n\tpublic func schedule(action: () -> Void) -> Disposable? {\n\t\taction()\n\t\treturn nil\n\t}\n}\n\n/// A scheduler that performs all work on the main queue, as soon as possible.\n///\n/// If the caller is already running on the main queue when an action is\n/// scheduled, it may be run synchronously. However, ordering between actions\n/// will always be preserved.\npublic final class UIScheduler: SchedulerType {\n\tprivate static var dispatchOnceToken: dispatch_once_t = 0\n\tprivate static var dispatchSpecificKey: UInt8 = 0\n\tprivate static var dispatchSpecificContext: UInt8 = 0\n\n\tprivate var queueLength: Int32 = 0\n\n\t/// Initializes `UIScheduler`\n\tpublic init() {\n\t\tdispatch_once(&UIScheduler.dispatchOnceToken) {\n\t\t\tdispatch_queue_set_specific(\n\t\t\t\tdispatch_get_main_queue(),\n\t\t\t\t&UIScheduler.dispatchSpecificKey,\n\t\t\t\t&UIScheduler.dispatchSpecificContext,\n\t\t\t\tnil\n\t\t\t)\n\t\t}\n\t}\n\n\t/// Queues an action to be performed on main queue. If the action is called\n\t/// on the main thread and no work is queued, no scheduling takes place and\n\t/// the action is called instantly.\n\t///\n\t/// - parameters:\n\t///   - action: Closure of the action to perform on the main thread.\n\t///\n\t/// - returns: `Disposable` that can be used to cancel the work before it\n\t///            begins.\n\tpublic func schedule(action: () -> Void) -> Disposable? {\n\t\tlet disposable = SimpleDisposable()\n\t\tlet actionAndDecrement = {\n\t\t\tif !disposable.disposed {\n\t\t\t\taction()\n\t\t\t}\n\n\t\t\tOSAtomicDecrement32(&self.queueLength)\n\t\t}\n\n\t\tlet queued = OSAtomicIncrement32(&queueLength)\n\n\t\t// If we're already running on the main queue, and there isn't work\n\t\t// already enqueued, we can skip scheduling and just execute directly.\n\t\tif queued == 1 && dispatch_get_specific(&UIScheduler.dispatchSpecificKey) == &UIScheduler.dispatchSpecificContext {\n\t\t\tactionAndDecrement()\n\t\t} else {\n\t\t\tdispatch_async(dispatch_get_main_queue(), actionAndDecrement)\n\t\t}\n\n\t\treturn disposable\n\t}\n}\n\n/// A scheduler backed by a serial GCD queue.\npublic final class QueueScheduler: DateSchedulerType {\n\tinternal let queue: dispatch_queue_t\n\t\n\tinternal init(internalQueue: dispatch_queue_t) {\n\t\tqueue = internalQueue\n\t}\n\t\n\t/// Initializes a scheduler that will target the given queue with its\n\t/// work.\n\t///\n\t/// - note: Even if the queue is concurrent, all work items enqueued with\n\t///         the `QueueScheduler` will be serial with respect to each other.\n\t///\n  \t/// - warning: Obsoleted in OS X 10.11.\n\t@available(OSX, deprecated=10.10, obsoleted=10.11, message=\"Use init(qos:, name:) instead\")\n\tpublic convenience init(queue: dispatch_queue_t, name: String = \"org.reactivecocoa.ReactiveCocoa.QueueScheduler\") {\n\t\tself.init(internalQueue: dispatch_queue_create(name, DISPATCH_QUEUE_SERIAL))\n\t\tdispatch_set_target_queue(self.queue, queue)\n\t}\n\n\t/// A singleton `QueueScheduler` that always targets the main thread's GCD\n\t/// queue.\n\t///\n\t/// - note: Unlike `UIScheduler`, this scheduler supports scheduling for a\n\t///         future date, and will always schedule asynchronously (even if \n\t///         already running on the main thread).\n\tpublic static let mainQueueScheduler = QueueScheduler(internalQueue: dispatch_get_main_queue())\n\t\n\tpublic var currentDate: NSDate {\n\t\treturn NSDate()\n\t}\n\n\t/// Initializes a scheduler that will target a new serial queue with the\n\t/// given quality of service class.\n\t///\n\t/// - parameters:\n\t///   - qos: Dispatch queue's QoS value.\n\t///   - name: Name for the queue in the form of reverse domain.\n\t@available(iOS 8, watchOS 2, OSX 10.10, *)\n\tpublic convenience init(qos: dispatch_qos_class_t = QOS_CLASS_DEFAULT, name: String = \"org.reactivecocoa.ReactiveCocoa.QueueScheduler\") {\n\t\tself.init(internalQueue: dispatch_queue_create(name, dispatch_queue_attr_make_with_qos_class(DISPATCH_QUEUE_SERIAL, qos, 0)))\n\t}\n\n\t/// Schedules action for dispatch on internal queue\n\t///\n\t/// - parameters:\n\t///   - action: Closure of the action to schedule.\n\t///\n\t/// - returns: `Disposable` that can be used to cancel the work before it\n\t///            begins.\n\tpublic func schedule(action: () -> Void) -> Disposable? {\n\t\tlet d = SimpleDisposable()\n\n\t\tdispatch_async(queue) {\n\t\t\tif !d.disposed {\n\t\t\t\taction()\n\t\t\t}\n\t\t}\n\n\t\treturn d\n\t}\n\n\tprivate func wallTimeWithDate(date: NSDate) -> dispatch_time_t {\n\n\t\tlet (seconds, frac) = modf(date.timeIntervalSince1970)\n\n\t\tlet nsec: Double = frac * Double(NSEC_PER_SEC)\n\t\tvar walltime = timespec(tv_sec: Int(seconds), tv_nsec: Int(nsec))\n\n\t\treturn dispatch_walltime(&walltime, 0)\n\t}\n\n\t/// Schedules an action for execution at or after the given date.\n\t///\n\t/// - parameters:\n\t///   - date: Starting time.\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(date: NSDate, action: () -> Void) -> Disposable? {\n\t\tlet d = SimpleDisposable()\n\n\t\tdispatch_after(wallTimeWithDate(date), queue) {\n\t\t\tif !d.disposed {\n\t\t\t\taction()\n\t\t\t}\n\t\t}\n\n\t\treturn d\n\t}\n\n\t/// Schedules a recurring action at the given interval and beginning at the\n\t/// given start time. A reasonable default timer interval leeway is\n\t/// provided.\n\t///\n\t/// - parameters:\n\t///   - date: Date to schedule the first action for.\n\t///   - repeatingEvery: Repetition interval.\n\t///   - action: Closure of the action to repeat.\n\t///\n\t/// - returns: Optional disposable that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, action: () -> Void) -> Disposable? {\n\t\t// Apple's \"Power Efficiency Guide for Mac Apps\" recommends a leeway of\n\t\t// at least 10% of the timer interval.\n\t\treturn scheduleAfter(date, repeatingEvery: repeatingEvery, withLeeway: repeatingEvery * 0.1, action: action)\n\t}\n\n\t/// Schedules a recurring action at the given interval with provided leeway,\n\t/// beginning at the given start time.\n\t///\n\t/// - parameters:\n\t///   - date: Date to schedule the first action for.\n\t///   - repeatingEvery: Repetition interval.\n\t///   - leeway: Some delta for repetition interval.\n\t///   - action: Closure of the action to repeat.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, withLeeway leeway: NSTimeInterval, action: () -> Void) -> Disposable? {\n\t\tprecondition(repeatingEvery >= 0)\n\t\tprecondition(leeway >= 0)\n\n\t\tlet nsecInterval = repeatingEvery * Double(NSEC_PER_SEC)\n\t\tlet nsecLeeway = leeway * Double(NSEC_PER_SEC)\n\n\t\tlet timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue)\n\t\tdispatch_source_set_timer(timer, wallTimeWithDate(date), UInt64(nsecInterval), UInt64(nsecLeeway))\n\t\tdispatch_source_set_event_handler(timer, action)\n\t\tdispatch_resume(timer)\n\n\t\treturn ActionDisposable {\n\t\t\tdispatch_source_cancel(timer)\n\t\t}\n\t}\n}\n\n/// A scheduler that implements virtualized time, for use in testing.\npublic final class TestScheduler: DateSchedulerType {\n\tprivate final class ScheduledAction {\n\t\tlet date: NSDate\n\t\tlet action: () -> Void\n\n\t\tinit(date: NSDate, action: () -> Void) {\n\t\t\tself.date = date\n\t\t\tself.action = action\n\t\t}\n\n\t\tfunc less(rhs: ScheduledAction) -> Bool {\n\t\t\treturn date.compare(rhs.date) == .OrderedAscending\n\t\t}\n\t}\n\n\tprivate let lock = NSRecursiveLock()\n\tprivate var _currentDate: NSDate\n\n\t/// The virtual date that the scheduler is currently at.\n\tpublic var currentDate: NSDate {\n\t\tlet d: NSDate\n\n\t\tlock.lock()\n\t\td = _currentDate\n\t\tlock.unlock()\n\n\t\treturn d\n\t}\n\n\tprivate var scheduledActions: [ScheduledAction] = []\n\n\t/// Initializes a TestScheduler with the given start date.\n\t///\n\t/// - parameters:\n\t///   - startDate: The start date of the scheduler.\n\tpublic init(startDate: NSDate = NSDate(timeIntervalSinceReferenceDate: 0)) {\n\t\tlock.name = \"org.reactivecocoa.ReactiveCocoa.TestScheduler\"\n\t\t_currentDate = startDate\n\t}\n\n\tprivate func schedule(action: ScheduledAction) -> Disposable {\n\t\tlock.lock()\n\t\tscheduledActions.append(action)\n\t\tscheduledActions.sortInPlace { $0.less($1) }\n\t\tlock.unlock()\n\n\t\treturn ActionDisposable {\n\t\t\tself.lock.lock()\n\t\t\tself.scheduledActions = self.scheduledActions.filter { $0 !== action }\n\t\t\tself.lock.unlock()\n\t\t}\n\t}\n\n\t/// Enqueues an action on the scheduler.\n\t///\n\t/// - note: The work is executed on `currentDate` as it is understood by the\n\t///         scheduler.\n\t///\n\t/// - parameters:\n\t///   - action: An action that will be performed on scheduler's\n\t///             `currentDate`.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tpublic func schedule(action: () -> Void) -> Disposable? {\n\t\treturn schedule(ScheduledAction(date: currentDate, action: action))\n\t}\n\n\t/// Schedules an action for execution at or after the given date.\n\t///\n\t/// - parameters:\n\t///   - date: Starting date.\n\t///   - action: Closure of the action to perform.\n\t///\n\t/// - returns: Optional disposable that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(interval: NSTimeInterval, action: () -> Void) -> Disposable? {\n\t\treturn scheduleAfter(currentDate.dateByAddingTimeInterval(interval), action: action)\n\t}\n\n\tpublic func scheduleAfter(date: NSDate, action: () -> Void) -> Disposable? {\n\t\treturn schedule(ScheduledAction(date: date, action: action))\n\t}\n\n\t/// Schedules a recurring action at the given interval, beginning at the\n\t/// given start time\n\t///\n\t/// - parameters:\n\t///   - date: Date to schedule the first action for.\n\t///   - repeatingEvery: Repetition interval.\n\t///   - action: Closure of the action to repeat.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tprivate func scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, disposable: SerialDisposable, action: () -> Void) {\n\t\tprecondition(repeatingEvery >= 0)\n\n\t\tdisposable.innerDisposable = scheduleAfter(date) { [unowned self] in\n\t\t\taction()\n\t\t\tself.scheduleAfter(date.dateByAddingTimeInterval(repeatingEvery), repeatingEvery: repeatingEvery, disposable: disposable, action: action)\n\t\t}\n\t}\n\n\t/// Schedules a recurring action at the given interval, beginning at the\n\t/// given interval (counted from `currentDate`).\n\t///\n\t/// - parameters:\n\t///   - interval: Interval to add to `currentDate`.\n\t///   - repeatingEvery: Repetition interval.\n\t///\t  - leeway: Some delta for repetition interval.\n\t///   - action: Closure of the action to repeat.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///            before it begins.\n\tpublic func scheduleAfter(interval: NSTimeInterval, repeatingEvery: NSTimeInterval, withLeeway leeway: NSTimeInterval = 0, action: () -> Void) -> Disposable? {\n\t\treturn scheduleAfter(currentDate.dateByAddingTimeInterval(interval), repeatingEvery: repeatingEvery, withLeeway: leeway, action: action)\n\t}\n\n\t/// Schedules a recurring action at the given interval with\n\t/// provided leeway, beginning at the given start time.\n\t///\n\t/// - parameters:\n\t///   - date: Date to schedule the first action for.\n\t///   - repeatingEvery: Repetition interval.\n\t///\t  - leeway: Some delta for repetition interval.\n\t///   - action: Closure of the action to repeat.\n\t///\n\t/// - returns: Optional `Disposable` that can be used to cancel the work\n\t///\t           before it begins.\n\tpublic func scheduleAfter(date: NSDate, repeatingEvery: NSTimeInterval, withLeeway: NSTimeInterval = 0, action: () -> Void) -> Disposable? {\n\t\tlet disposable = SerialDisposable()\n\t\tscheduleAfter(date, repeatingEvery: repeatingEvery, disposable: disposable, action: action)\n\t\treturn disposable\n\t}\n\n\t/// Advances the virtualized clock by an extremely tiny interval, dequeuing\n\t/// and executing any actions along the way.\n\t///\n\t/// This is intended to be used as a way to execute actions that have been\n\t/// scheduled to run as soon as possible.\n\tpublic func advance() {\n\t\tadvanceByInterval(DBL_EPSILON)\n\t}\n\n\t/// Advances the virtualized clock by the given interval, dequeuing and\n\t/// executing any actions along the way.\n\t///\n\t/// - parameters:\n\t///   - interval: Interval by which the current date will be advanced.\n\tpublic func advanceByInterval(interval: NSTimeInterval) {\n\t\tlock.lock()\n\t\tadvanceToDate(currentDate.dateByAddingTimeInterval(interval))\n\t\tlock.unlock()\n\t}\n\n\t/// Advances the virtualized clock to the given future date, dequeuing and\n\t/// executing any actions up until that point.\n\t///\n\t/// - parameters:\n\t///   - newDate: Future date to which the virtual clock will be advanced.\n\tpublic func advanceToDate(newDate: NSDate) {\n\t\tlock.lock()\n\n\t\tassert(currentDate.compare(newDate) != .OrderedDescending)\n\n\t\twhile scheduledActions.count > 0 {\n\t\t\tif newDate.compare(scheduledActions[0].date) == .OrderedAscending {\n\t\t\t\tbreak\n\t\t\t}\n\n\t\t\t_currentDate = scheduledActions[0].date\n\n\t\t\tlet scheduledAction = scheduledActions.removeAtIndex(0)\n\t\t\tscheduledAction.action()\n\t\t}\n\n\t\t_currentDate = newDate\n\n\t\tlock.unlock()\n\t}\n\n\t/// Dequeues and executes all scheduled actions, leaving the scheduler's\n\t/// date at `NSDate.distantFuture()`.\n\tpublic func run() {\n\t\tadvanceToDate(NSDate.distantFuture())\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/Signal.swift",
    "content": "import Foundation\nimport Result\n\n/// A push-driven stream that sends Events over time, parameterized by the type\n/// of values being sent (`Value`) and the type of failure that can occur\n/// (`Error`). If no failures should be possible, NoError can be specified for\n/// `Error`.\n///\n/// An observer of a Signal will see the exact same sequence of events as all\n/// other observers. In other words, events will be sent to all observers at the\n/// same time.\n///\n/// Signals are generally used to represent event streams that are already “in\n/// progress,” like notifications, user input, etc. To represent streams that\n/// must first be _started_, see the SignalProducer type.\n///\n/// Signals do not need to be retained. A Signal will be automatically kept\n/// alive until the event stream has terminated.\npublic final class Signal<Value, Error: ErrorType> {\n\tpublic typealias Observer = ReactiveCocoa.Observer<Value, Error>\n\n\tprivate let atomicObservers: Atomic<Bag<Observer>?> = Atomic(Bag())\n\n\t/// Initialize a Signal that will immediately invoke the given generator,\n\t/// then forward events sent to the given observer.\n\t///\n\t/// - note: The disposable returned from the closure will be automatically\n\t///         disposed if a terminating event is sent to the observer. The\n\t///         Signal itself will remain alive until the observer is released.\n\t///\n\t/// - parameters:\n\t///   - generator: A closure that accepts an implicitly created observer\n\t///                that will act as an event emitter for the signal.\n\tpublic init(@noescape _ generator: Observer -> Disposable?) {\n\n\t\t/// Used to ensure that events are serialized during delivery to\n\t\t/// observers.\n\t\tlet sendLock = NSLock()\n\t\tsendLock.name = \"org.reactivecocoa.ReactiveCocoa.Signal\"\n\n\t\tlet generatorDisposable = SerialDisposable()\n\n\t\t/// When set to `true`, the Signal should interrupt as soon as possible.\n\t\tlet interrupted = Atomic(false)\n\n\t\tlet observer = Observer { event in\n\t\t\tif case .Interrupted = event {\n\t\t\t\t// Normally we disallow recursive events, but Interrupted is\n\t\t\t\t// kind of a special snowflake, since it can inadvertently be\n\t\t\t\t// sent by downstream consumers.\n\t\t\t\t//\n\t\t\t\t// So we'll flag Interrupted events specially, and if it\n\t\t\t\t// happened to occur while we're sending something else,  we'll\n\t\t\t\t// wait to deliver it.\n\t\t\t\tinterrupted.value = true\n\n\t\t\t\tif sendLock.tryLock() {\n\t\t\t\t\tself.interrupt()\n\t\t\t\t\tsendLock.unlock()\n\n\t\t\t\t\tgeneratorDisposable.dispose()\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\tif let observers = (event.isTerminating ? self.atomicObservers.swap(nil) : self.atomicObservers.value) {\n\t\t\t\t\tsendLock.lock()\n\n\t\t\t\t\tfor observer in observers {\n\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t}\n\n\t\t\t\t\tlet shouldInterrupt = !event.isTerminating && interrupted.value\n\t\t\t\t\tif shouldInterrupt {\n\t\t\t\t\t\tself.interrupt()\n\t\t\t\t\t}\n\n\t\t\t\t\tsendLock.unlock()\n\n\t\t\t\t\tif event.isTerminating || shouldInterrupt {\n\t\t\t\t\t\t// Dispose only after notifying observers, so disposal\n\t\t\t\t\t\t// logic is consistently the last thing to run.\n\t\t\t\t\t\tgeneratorDisposable.dispose()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tgeneratorDisposable.innerDisposable = generator(observer)\n\t}\n\n\t/// A Signal that never sends any events to its observers.\n\tpublic static var never: Signal {\n\t\treturn self.init { _ in nil }\n\t}\n\n\t/// A Signal that completes immediately without emitting any value.\n\tpublic static var empty: Signal {\n\t\treturn self.init { observer in\n\t\t\tobserver.sendCompleted()\n\t\t\treturn nil\n\t\t}\n\t}\n\n\t/// Create a Signal that will be controlled by sending events to the given\n\t/// observer.\n\t///\n\t/// - note: The Signal will remain alive until a terminating event is sent\n\t///         to the observer.\n\t///\n\t/// - returns: A tuple made of signal and observer.\n\tpublic static func pipe() -> (Signal, Observer) {\n\t\tvar observer: Observer!\n\t\tlet signal = self.init { innerObserver in\n\t\t\tobserver = innerObserver\n\t\t\treturn nil\n\t\t}\n\n\t\treturn (signal, observer)\n\t}\n\n\t/// Interrupts all observers and terminates the stream.\n\tprivate func interrupt() {\n\t\tif let observers = self.atomicObservers.swap(nil) {\n\t\t\tfor observer in observers {\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Observe the Signal by sending any future events to the given observer.\n\t///\n\t/// - note: If the Signal has already terminated, the observer will\n\t///         immediately receive an `Interrupted` event.\n\t///\n\t/// - parameters:\n\t///   - observer: An observer to forward the events to.\n\t///\n\t/// - returns: An optional `Disposable` which can be used to disconnect the\n\t///            observer. Disposing of the Disposable will have no effect on\n\t///            the Signal itself.\n\tpublic func observe(observer: Observer) -> Disposable? {\n\t\tvar token: RemovalToken?\n\t\tatomicObservers.modify { observers in\n\t\t\tguard var observers = observers else {\n\t\t\t\treturn nil\n\t\t\t}\n\n\t\t\ttoken = observers.insert(observer)\n\t\t\treturn observers\n\t\t}\n\n\t\tif let token = token {\n\t\t\treturn ActionDisposable { [weak self] in\n\t\t\t\tself?.atomicObservers.modify { observers in\n\t\t\t\t\tguard var observers = observers else {\n\t\t\t\t\t\treturn nil\n\t\t\t\t\t}\n\n\t\t\t\t\tobservers.removeValueForToken(token)\n\t\t\t\t\treturn observers\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tobserver.sendInterrupted()\n\t\t\treturn nil\n\t\t}\n\t}\n}\n\npublic protocol SignalType {\n\t/// The type of values being sent on the signal.\n\tassociatedtype Value\n\t/// The type of error that can occur on the signal. If errors aren't\n\t/// possible then `NoError` can be used.\n\tassociatedtype Error: ErrorType\n\n\t/// Extracts a signal from the receiver.\n\tvar signal: Signal<Value, Error> { get }\n\n\t/// Observes the Signal by sending any future events to the given observer.\n\tfunc observe(observer: Signal<Value, Error>.Observer) -> Disposable?\n}\n\nextension Signal: SignalType {\n\tpublic var signal: Signal {\n\t\treturn self\n\t}\n}\n\nextension SignalType {\n\t/// Convenience override for observe(_:) to allow trailing-closure style\n\t/// invocations.\n\t///\n\t/// - parameters:\n\t///   - action: A closure that will accept an event of the signal\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observe(action: Signal<Value, Error>.Observer.Action) -> Disposable? {\n\t\treturn observe(Observer(action))\n\t}\n\n\t@available(*, deprecated, message=\"This Signal may emit errors which must be handled explicitly, or observed using observeResult:\")\n\tpublic func observeNext(next: Value -> Void) -> Disposable? {\n\t\treturn observe(Observer(next: next))\n\t}\n\n\t/// Observe the `Signal` by invoking the given callback when `next` or\n\t/// `failed` event are received.\n\t///\n\t/// - parameters:\n\t///   - result: A closure that accepts instance of `Result<Value, Error>`\n\t///             enum that contains either a `Success(Value)` or\n\t///             `Failure<Error>` case.\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observeResult(result: (Result<Value, Error>) -> Void) -> Disposable? {\n\t\treturn observe(\n\t\t\tObserver(\n\t\t\t\tnext: { result(.Success($0)) },\n\t\t\t\tfailed: { result(.Failure($0)) }\n\t\t\t)\n\t\t)\n\t}\n\n\t/// Observe the `Signal` by invoking the given callback when a `completed`\n\t/// event is received.\n\t///\n\t/// - parameters:\n\t///   - completed: A closure that is called when `Completed` event is\n\t///                received.\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observeCompleted(completed: () -> Void) -> Disposable? {\n\t\treturn observe(Observer(completed: completed))\n\t}\n\t\n\t/// Observe the `Signal` by invoking the given callback when a `failed` \n\t/// event is received.\n\t///\n\t/// - parameters:\n\t///   - error: A closure that is called when `Failed` event is received. It\n\t///            accepts an error parameter.\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observeFailed(error: Error -> Void) -> Disposable? {\n\t\treturn observe(Observer(failed: error))\n\t}\n\t\n\t/// Observe the `Signal` by invoking the given callback when an \n\t/// `interrupted` event is received. If the Signal has already terminated, \n\t/// the callback will be invoked immediately.\n\t///\n\t/// - parameters:\n\t///   - interrupted: A closure that is invoked when `Interrupted` event is\n\t///                  received\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observeInterrupted(interrupted: () -> Void) -> Disposable? {\n\t\treturn observe(Observer(interrupted: interrupted))\n\t}\n}\n\nextension SignalType where Error == NoError {\n\t/// Observe the Signal by invoking the given callback when `next` events are\n\t/// received.\n\t///\n\t/// - parameters:\n\t///   - next: A closure that accepts a value when `Next` event is received.\n\t///\n\t/// - returns: An optional `Disposable` which can be used to stop the\n\t///            invocation of the callback. Disposing of the Disposable will\n\t///            have no effect on the Signal itself.\n\tpublic func observeNext(next: Value -> Void) -> Disposable? {\n\t\treturn observe(Observer(next: next))\n\t}\n}\n\nextension SignalType {\n\t/// Map each value in the signal to a new value.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts a value from the `Next` event and\n\t///                returns a new value.\n\t///\n\t/// - returns: A signal that will send new values.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func map<U>(transform: Value -> U) -> Signal<U, Error> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tobserver.action(event.map(transform))\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Map errors in the signal to a new error.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts current error object and returns\n\t///                a new type of error object.\n\t///\n\t/// - returns: A signal that will send new type of errors.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func mapError<F>(transform: Error -> F) -> Signal<Value, F> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tobserver.action(event.mapError(transform))\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Preserve only the values of the signal that pass the given predicate.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts value and returns `Bool` denoting\n\t///                whether value has passed the test.\n\t///\n\t/// - returns: A signal that will send only the values passing the given\n\t///            predicate.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func filter(predicate: Value -> Bool) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { (event: Event<Value, Error>) -> Void in\n\t\t\t\tguard let value = event.value else {\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif predicate(value) {\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: OptionalType {\n\t/// Unwrap non-`nil` values and forward them on the returned signal, `nil`\n\t/// values are dropped.\n\t///\n\t/// - returns: A signal that sends only non-nil values.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func ignoreNil() -> Signal<Value.Wrapped, Error> {\n\t\treturn filter { $0.optional != nil }.map { $0.optional! }\n\t}\n}\n\nextension SignalType {\n\t/// Take up to `n` values from the signal and then complete.\n\t///\n\t/// - precondition: `count` must be non-negative number.\n\t///\n\t/// - parameters:\n\t///   - count: A number of values to take from the signal.\n\t///\n\t/// - returns: A signal that will yield the first `count` values from `self`\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func take(count: Int) -> Signal<Value, Error> {\n\t\tprecondition(count >= 0)\n\n\t\treturn Signal { observer in\n\t\t\tif count == 0 {\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\treturn nil\n\t\t\t}\n\n\t\t\tvar taken = 0\n\n\t\t\treturn self.observe { event in\n\t\t\t\tguard let value = event.value else {\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif taken < count {\n\t\t\t\t\ttaken += 1\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t}\n\n\t\t\t\tif taken == count {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n/// A reference type which wraps an array to auxiliate the collection of values\n/// for `collect` operator.\nprivate final class CollectState<Value> {\n\tvar values: [Value] = []\n\n\t/// Collects a new value.\n\tfunc append(value: Value) {\n\t\tvalues.append(value)\n\t}\n\n\t/// Check if there are any items remaining.\n\t///\n\t/// - note: This method also checks if there weren't collected any values\n\t///         and, in that case, it means an empty array should be sent as the\n\t///         result of collect.\n\tvar isEmpty: Bool {\n\t\t/// We use capacity being zero to determine if we haven't collected any\n\t\t/// value since we're keeping the capacity of the array to avoid\n\t\t/// unnecessary and expensive allocations). This also guarantees\n\t\t/// retro-compatibility around the original `collect()` operator.\n\t\treturn values.isEmpty && values.capacity > 0\n\t}\n\n\t/// Removes all values previously collected if any.\n\tfunc flush() {\n\t\t// Minor optimization to avoid consecutive allocations. Can\n\t\t// be useful for sequences of regular or similar size and to\n\t\t// track if any value was ever collected.\n\t\tvalues.removeAll(keepCapacity: true)\n\t}\n}\n\n\nextension SignalType {\n\t/// Collect all values sent by the signal then forward them as a single\n\t/// array and complete.\n\t///\n\t/// - note: When `self` completes without collecting any value, it will send\n\t///         an empty array of values.\n\t///\n\t/// - returns: A signal that will yield an array of values when `self`\n\t///            completes.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func collect() -> Signal<[Value], Error> {\n\t\treturn collect { _,_ in false }\n\t}\n\n\t/// Collect at most `count` values from `self`, forward them as a single\n\t/// array and complete.\n\t///\n\t/// - note: When the count is reached the array is sent and the signal\n\t///         starts over yielding a new array of values.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not have `count` values. Alternatively, if were\n\t///         not collected any values will sent an empty array of values.\n\t///\n\t/// - precondition: `count` should be greater than zero.\n\t///\n\t/// - returns: A signal that collects at most `count` values from `self`,\n\t///            forwards them as a single array and completes.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func collect(count count: Int) -> Signal<[Value], Error> {\n\t\tprecondition(count > 0)\n\t\treturn collect { values in values.count == count }\n\t}\n\n\t/// Collect values that pass the given predicate then forward them as a\n\t/// single array and complete.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not match `predicate`. Alternatively, if were not\n\t///         collected any values will sent an empty array of values.\n\t///\n\t/// ````\n\t/// let (signal, observer) = Signal<Int, NoError>.pipe()\n\t///\n\t/// signal\n\t///     .collect { values in values.reduce(0, combine: +) == 8 }\n\t///     .observeNext { print($0) }\n\t///\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(3)\n\t/// observer.sendNext(4)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(5)\n\t/// observer.sendNext(6)\n\t/// observer.sendCompleted()\n\t///\n\t/// // Output:\n\t/// // [1, 3, 4]\n\t/// // [7, 1]\n\t/// // [5, 6]\n\t/// ````\n\t///\n\t/// - parameters:\n\t///   - predicate: Predicate to match when values should be sent (returning\n\t///                `true`) or alternatively when they should be collected\n\t///                (where it should return `false`). The most recent value\n\t///                (`next`) is included in `values` and will be the end of\n\t///                the current array of values if the predicate returns\n\t///                `true`.\n\t///\n\t/// - returns: A signal that collects values passing the predicate and, when\n\t///            `self` completes, forwards them as a single array and\n\t///            complets.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func collect(predicate: (values: [Value]) -> Bool) -> Signal<[Value], Error> {\n\t\treturn Signal { observer in\n\t\t\tlet state = CollectState<Value>()\n\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tstate.append(value)\n\t\t\t\t\tif predicate(values: state.values) {\n\t\t\t\t\t\tobserver.sendNext(state.values)\n\t\t\t\t\t\tstate.flush()\n\t\t\t\t\t}\n\t\t\t\tcase .Completed:\n\t\t\t\t\tif !state.isEmpty {\n\t\t\t\t\t\tobserver.sendNext(state.values)\n\t\t\t\t\t}\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Repeatedly collect an array of values up to a matching `Next` value.\n\t/// Then forward them as single array and wait for next events.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not match `predicate`. Alternatively, if no\n\t///         values were collected an empty array will be sent.\n\t///\n\t/// ````\n\t/// let (signal, observer) = Signal<Int, NoError>.pipe()\n\t///\n\t/// signal\n\t///     .collect { values, next in next == 7 }\n\t///     .observeNext { print($0) }\n\t///\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(5)\n\t/// observer.sendNext(6)\n\t/// observer.sendCompleted()\n\t///\n\t/// // Output:\n\t/// // [1, 1]\n\t/// // [7]\n\t/// // [7, 5, 6]\n\t/// ````\n\t///\n\t/// - parameters:\n\t///   - predicate: Predicate to match when values should be sent (returning\n\t///                `true`) or alternatively when they should be collected\n\t///                (where it should return `false`). The most recent value\n\t///                (`next`) is not included in `values` and will be the\n\t///                start of the next array of values if the predicate\n\t///                returns `true`.\n\t///\n\t/// - returns: A signal that will yield an array of values based on a\n\t///            predicate which matches the values collected and the next\n\t///            value.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func collect(predicate: (values: [Value], next: Value) -> Bool) -> Signal<[Value], Error> {\n\t\treturn Signal { observer in\n\t\t\tlet state = CollectState<Value>()\n\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tif predicate(values: state.values, next: value) {\n\t\t\t\t\t\tobserver.sendNext(state.values)\n\t\t\t\t\t\tstate.flush()\n\t\t\t\t\t}\n\t\t\t\t\tstate.append(value)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tif !state.isEmpty {\n\t\t\t\t\t\tobserver.sendNext(state.values)\n\t\t\t\t\t}\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Forward all events onto the given scheduler, instead of whichever\n\t/// scheduler they originally arrived upon.\n\t///\n\t/// - parameters:\n\t///   - scheduler: A scheduler to deliver events on.\n\t///\n\t/// - returns: A signal that will yield `self` values on provided scheduler.\n\tpublic func observeOn(scheduler: SchedulerType) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate final class CombineLatestState<Value> {\n\tvar latestValue: Value?\n\tvar completed = false\n}\n\nextension SignalType {\n\tprivate func observeWithStates<U>(signalState: CombineLatestState<Value>, _ otherState: CombineLatestState<U>, _ lock: NSLock, _ observer: Signal<(), Error>.Observer) -> Disposable? {\n\t\treturn self.observe { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(value):\n\t\t\t\tlock.lock()\n\n\t\t\t\tsignalState.latestValue = value\n\t\t\t\tif otherState.latestValue != nil {\n\t\t\t\t\tobserver.sendNext()\n\t\t\t\t}\n\n\t\t\t\tlock.unlock()\n\n\t\t\tcase let .Failed(error):\n\t\t\t\tobserver.sendFailed(error)\n\n\t\t\tcase .Completed:\n\t\t\t\tlock.lock()\n\n\t\t\t\tsignalState.completed = true\n\t\t\t\tif otherState.completed {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\tlock.unlock()\n\n\t\t\tcase .Interrupted:\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Combine the latest value of the receiver with the latest value from the\n\t/// given signal.\n\t///\n\t/// - note: The returned signal will not send a value until both inputs have\n\t///         sent at least one value each.\n\t///\n\t/// - note: If either signal is interrupted, the returned signal will also\n\t///         be interrupted.\n\t///\n\t/// - parameters:\n\t///   - otherSignal: A signal to combine `self`'s value with.\n\t///\n\t/// - returns: A signal that will yield a tuple containing values of `self`\n\t///            and given signal.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func combineLatestWith<U>(otherSignal: Signal<U, Error>) -> Signal<(Value, U), Error> {\n\t\treturn Signal { observer in\n\t\t\tlet lock = NSLock()\n\t\t\tlock.name = \"org.reactivecocoa.ReactiveCocoa.combineLatestWith\"\n\n\t\t\tlet signalState = CombineLatestState<Value>()\n\t\t\tlet otherState = CombineLatestState<U>()\n\n\t\t\tlet onBothNext = {\n\t\t\t\tobserver.sendNext((signalState.latestValue!, otherState.latestValue!))\n\t\t\t}\n\n\t\t\tlet observer = Signal<(), Error>.Observer(next: onBothNext, failed: observer.sendFailed, completed: observer.sendCompleted, interrupted: observer.sendInterrupted)\n\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tdisposable += self.observeWithStates(signalState, otherState, lock, observer)\n\t\t\tdisposable += otherSignal.observeWithStates(otherState, signalState, lock, observer)\n\t\t\t\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\t/// Delay `Next` and `Completed` events by the given interval, forwarding\n\t/// them on the given scheduler.\n\t///\n\t/// - note: `Failed` and `Interrupted` events are always scheduled\n\t///         immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: Interval to delay `Next` and `Completed` events by.\n\t///   - scheduler: A scheduler to deliver delayed events on.\n\t///\n\t/// - returns: A signal that will delay `Next` and `Completed` events and\n\t///            will yield them on given scheduler.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func delay(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> Signal<Value, Error> {\n\t\tprecondition(interval >= 0)\n\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t}\n\n\t\t\t\tcase .Next, .Completed:\n\t\t\t\t\tlet date = scheduler.currentDate.dateByAddingTimeInterval(interval)\n\t\t\t\t\tscheduler.scheduleAfter(date) {\n\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Skip first `count` number of values then act as usual.\n\t///\n\t/// - parameters:\n\t///   - count: A number of values to skip.\n\t///\n\t/// - returns:  A signal that will skip the first `count` values, then\n\t///             forward everything afterward.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func skip(count: Int) -> Signal<Value, Error> {\n\t\tprecondition(count >= 0)\n\n\t\tif count == 0 {\n\t\t\treturn signal\n\t\t}\n\n\t\treturn Signal { observer in\n\t\t\tvar skipped = 0\n\n\t\t\treturn self.observe { event in\n\t\t\t\tif case .Next = event where skipped < count {\n\t\t\t\t\tskipped += 1\n\t\t\t\t} else {\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Treat all Events from `self` as plain values, allowing them to be\n\t/// manipulated just like any other value.\n\t///\n\t/// In other words, this brings Events “into the monad”.\n\t///\n\t/// - note: When a Completed or Failed event is received, the resulting\n\t///         signal will send the Event itself and then complete. When an\n\t///         Interrupted event is received, the resulting signal will send\n\t///         the Event itself and then interrupt.\n\t///\n\t/// - returns: A signal that sends events as its values.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func materialize() -> Signal<Event<Value, Error>, NoError> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tobserver.sendNext(event)\n\n\t\t\t\tswitch event {\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\n\t\t\t\tcase .Completed, .Failed:\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\tcase .Next:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: EventType, Error == NoError {\n\t/// Translate a signal of `Event` _values_ into a signal of those events\n\t/// themselves.\n\t///\n\t/// - returns: A signal that sends values carried by `self` events.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func dematerialize() -> Signal<Value.Value, Value.Error> {\n\t\treturn Signal<Value.Value, Value.Error> { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(innerEvent):\n\t\t\t\t\tobserver.action(innerEvent.event)\n\n\t\t\t\tcase .Failed:\n\t\t\t\t\tfatalError(\"NoError is impossible to construct\")\n\n\t\t\t\tcase .Completed:\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType {\n\t/// Inject side effects to be performed upon the specified signal events.\n\t///\n\t/// - parameters:\n\t///   - event: A closure that accepts an event and is invoked on every\n\t///            received event.\n\t///   - failed: A closure that accepts error object and is invoked for\n\t///             `Failed` event.\n\t///   - completed: A closure that is invoked for `Completed` event.\n\t///   - interrupted: A closure that is invoked for `Interrupted` event.\n\t///   - terminated: A closure that is invoked for any terminating event.\n\t///   - disposed: A closure added as disposable when signal completes.\n\t///   - next: A closure that accepts a value from `Next` event.\n\t///\n\t/// - returns: A signal with attached side-effects for given event cases.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func on(event event: (Event<Value, Error> -> Void)? = nil, failed: (Error -> Void)? = nil, completed: (() -> Void)? = nil, interrupted: (() -> Void)? = nil, terminated: (() -> Void)? = nil, disposed: (() -> Void)? = nil, next: (Value -> Void)? = nil) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tlet disposable = CompositeDisposable()\n\n\t\t\t_ = disposed.map(disposable.addDisposable)\n\n\t\t\tdisposable += signal.observe { receivedEvent in\n\t\t\t\tevent?(receivedEvent)\n\n\t\t\t\tswitch receivedEvent {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tnext?(value)\n\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tfailed?(error)\n\n\t\t\t\tcase .Completed:\n\t\t\t\t\tcompleted?()\n\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tinterrupted?()\n\t\t\t\t}\n\n\t\t\t\tif receivedEvent.isTerminating {\n\t\t\t\t\tterminated?()\n\t\t\t\t}\n\n\t\t\t\tobserver.action(receivedEvent)\n\t\t\t}\n\n\t\t\treturn disposable\n\t\t}\n\t}\n}\n\nprivate struct SampleState<Value> {\n\tvar latestValue: Value? = nil\n\tvar signalCompleted: Bool = false\n\tvar samplerCompleted: Bool = false\n}\n\nextension SignalType {\n\t/// Forward the latest value from `self` with the value from `sampler` as a\n\t/// tuple, only when`sampler` sends a `Next` event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`, \n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - sampler: A signal that will trigger the delivery of `Next` event\n\t///              from `self`.\n\t///\n\t/// - returns: A signal that will send values from `self` and `sampler`, \n\t///            sampled (possibly multiple times) by `sampler`, then complete\n\t///            once both input signals have completed, or interrupt if\n\t///            either input signal is interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func sampleWith<T>(sampler: Signal<T, NoError>) -> Signal<(Value, T), Error> {\n\t\treturn Signal { observer in\n\t\t\tlet state = Atomic(SampleState<Value>())\n\t\t\tlet disposable = CompositeDisposable()\n\n\t\t\tdisposable += self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tstate.modify { st in\n\t\t\t\t\t\tvar st = st\n\t\t\t\t\t\tst.latestValue = value\n\t\t\t\t\t\treturn st\n\t\t\t\t\t}\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tlet oldState = state.modify { st in\n\t\t\t\t\t\tvar st = st\n\t\t\t\t\t\tst.signalCompleted = true\n\t\t\t\t\t\treturn st\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif oldState.samplerCompleted {\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdisposable += sampler.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Next(let samplerValue):\n\t\t\t\t\tif let value = state.value.latestValue {\n\t\t\t\t\t\tobserver.sendNext((value, samplerValue))\n\t\t\t\t\t}\n\t\t\t\tcase .Completed:\n\t\t\t\t\tlet oldState = state.modify { st in\n\t\t\t\t\t\tvar st = st\n\t\t\t\t\t\tst.samplerCompleted = true\n\t\t\t\t\t\treturn st\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif oldState.signalCompleted {\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\tcase .Failed:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\t\n\t/// Forward the latest value from `self` whenever `sampler` sends a `Next`\n\t/// event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`, \n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - sampler: A signal that will trigger the delivery of `Next` event\n\t///              from `self`.\n\t///\n\t/// - returns: A signal that will send values from `self`, sampled (possibly\n\t///            multiple times) by `sampler`, then complete once both input\n\t///            signals have completed, or interrupt if either input signal\n\t///            is interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func sampleOn(sampler: Signal<(), NoError>) -> Signal<Value, Error> {\n\t\treturn sampleWith(sampler)\n\t\t\t.map { $0.0 }\n\t}\n\n\t/// Forward events from `self` until `trigger` sends a `Next` or\n\t/// `Completed` event, at which point the returned signal will complete.\n\t///\n\t/// - parameters:\n\t///   - trigger: A signal whose `Next` or `Completed` events will stop the\n\t///              delivery of `Next` events from `self`.\n\t///\n\t/// - returns: A signal that will deliver events until `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func takeUntil(trigger: Signal<(), NoError>) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tdisposable += self.observe(observer)\n\n\t\t\tdisposable += trigger.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Next, .Completed:\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\t\n\t/// Do not forward any values from `self` until `trigger` sends a `Next` or\n\t/// `Completed` event, at which point the returned signal behaves exactly\n\t/// like `signal`.\n\t///\n\t/// - parameters:\n\t///   - trigger: A signal whose `Next` or `Completed` events will start the\n\t///              deliver of events on `self`.\n\t///\n\t/// - returns: A signal that will deliver events once the `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func skipUntil(trigger: Signal<(), NoError>) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tlet disposable = SerialDisposable()\n\t\t\t\n\t\t\tdisposable.innerDisposable = trigger.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Next, .Completed:\n\t\t\t\t\tdisposable.innerDisposable = self.observe(observer)\n\t\t\t\t\t\n\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\t/// Forward events from `self` with history: values of the returned signal\n\t/// are a tuples whose first member is the previous value and whose second member\n\t/// is the current value. `initial` is supplied as the first member when `self`\n\t/// sends its first value.\n\t///\n\t/// - parameters:\n\t///   - initial: A value that will be combined with the first value sent by\n\t///              `self`.\n\t///\n\t/// - returns: A signal that sends tuples that contain previous and current\n\t///            sent values of `self`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func combinePrevious(initial: Value) -> Signal<(Value, Value), Error> {\n\t\treturn scan((initial, initial)) { previousCombinedValues, newValue in\n\t\t\treturn (previousCombinedValues.1, newValue)\n\t\t}\n\t}\n\n\t/// Send only the final value and then immediately completes.\n    ///\n    /// - parameters:\n    ///   - initial: Initial value for the accumulator.\n    ///   - combine: A closure that accepts accumulator and sent value of\n    ///              `self`.\n    ///\n    /// - returns: A signal that sends accumulated value after `self` completes.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func reduce<U>(initial: U, _ combine: (U, Value) -> U) -> Signal<U, Error> {\n\t\t// We need to handle the special case in which `signal` sends no values.\n\t\t// We'll do that by sending `initial` on the output signal (before\n\t\t// taking the last value).\n\t\tlet (scannedSignalWithInitialValue, outputSignalObserver) = Signal<U, Error>.pipe()\n\t\tlet outputSignal = scannedSignalWithInitialValue.takeLast(1)\n\n\t\t// Now that we've got takeLast() listening to the piped signal, send\n        // that initial value.\n\t\toutputSignalObserver.sendNext(initial)\n\n\t\t// Pipe the scanned input signal into the output signal.\n\t\tscan(initial, combine).observe(outputSignalObserver)\n\n\t\treturn outputSignal\n\t}\n\n\t/// Aggregate values into a single combined value. When `self` emits its\n\t/// first value, `combine` is invoked with `initial` as the first argument\n\t/// and that emitted value as the second argument. The result is emitted\n\t/// from the signal returned from `scan`. That result is then passed to\n\t/// `combine` as the first argument when the next value is emitted, and so\n\t/// on.\n\t///\n\t/// - parameters:\n\t///   - initial: Initial value for the accumulator.\n\t///   - combine: A closure that accepts accumulator and sent value of\n\t///              `self`.\n\t///\n\t/// - returns: A signal that sends accumulated value each time `self` emits\n\t///            own value.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func scan<U>(initial: U, _ combine: (U, Value) -> U) -> Signal<U, Error> {\n\t\treturn Signal { observer in\n\t\t\tvar accumulator = initial\n\n\t\t\treturn self.observe { event in\n\t\t\t\tobserver.action(event.map { value in\n\t\t\t\t\taccumulator = combine(accumulator, value)\n\t\t\t\t\treturn accumulator\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: Equatable {\n\t/// Forward only those values from `self` which are not duplicates of the\n\t/// immedately preceding value. \n\t///\n\t/// - note: The first value is always forwarded.\n\t///\n\t/// - returns: A signal that does not send two equal values sequentially.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func skipRepeats() -> Signal<Value, Error> {\n\t\treturn skipRepeats(==)\n\t}\n}\n\nextension SignalType {\n\t/// Forward only those values from `self` which do not pass `isRepeat` with\n\t/// respect to the previous value. \n\t///\n\t/// - note: The first value is always forwarded.\n\t///\n\t/// - parameters:\n\t///   - isRepeate: A closure that accepts previous and current values of\n\t///                `self` and returns `Bool` whether these values are\n\t///                repeating.\n\t///\n\t/// - returns: A signal that forwards only those values that fail given\n\t///            `isRepeat` predicate.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func skipRepeats(isRepeat: (Value, Value) -> Bool) -> Signal<Value, Error> {\n\t\treturn self\n\t\t\t.scan((nil, false)) { (accumulated: (Value?, Bool), next: Value) -> (value: Value?, repeated: Bool) in\n\t\t\t\tswitch accumulated.0 {\n\t\t\t\tcase nil:\n\t\t\t\t\treturn (next, false)\n\t\t\t\tcase let prev? where isRepeat(prev, next):\n\t\t\t\t\treturn (prev, true)\n\t\t\t\tcase _?:\n\t\t\t\t\treturn (Optional(next), false)\n\t\t\t\t}\n\t\t\t}\n\t\t\t.filter { !$0.repeated }\n\t\t\t.map { $0.value }\n\t\t\t.ignoreNil()\n\t}\n\n\t/// Do not forward any values from `self` until `predicate` returns false,\n\t/// at which point the returned signal behaves exactly like `signal`.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts a value and returns whether `self`\n\t///                should still not forward that value to a `signal`.\n\t///\n\t/// - returns: A signal that sends only forwarded values from `self`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func skipWhile(predicate: Value -> Bool) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tvar shouldSkip = true\n\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tshouldSkip = shouldSkip && predicate(value)\n\t\t\t\t\tif !shouldSkip {\n\t\t\t\t\t\tfallthrough\n\t\t\t\t\t}\n\n\t\t\t\tcase .Failed, .Completed, .Interrupted:\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Forward events from `self` until `replacement` begins sending events.\n\t///\n\t/// - parameters:\n\t///   - replacement: A signal to wait to wait for values from and start\n\t///                  sending them as a replacement to `self`'s values.\n\t///\n\t/// - returns: A signal which passes through `Next`, `Failed`, and\n\t///            `Interrupted` events from `self` until `replacement` sends\n\t///            an event, at which point the returned signal will send that\n\t///            event and switch to passing through events from `replacement`\n\t///            instead, regardless of whether `self` has sent events\n\t///            already.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func takeUntilReplacement(replacement: Signal<Value, Error>) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tlet disposable = CompositeDisposable()\n\n\t\t\tlet signalDisposable = self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase .Completed:\n\t\t\t\t\tbreak\n\n\t\t\t\tcase .Next, .Failed, .Interrupted:\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisposable += signalDisposable\n\t\t\tdisposable += replacement.observe { event in\n\t\t\t\tsignalDisposable?.dispose()\n\t\t\t\tobserver.action(event)\n\t\t\t}\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\t/// Wait until `self` completes and then forward the final `count` values\n\t/// on the returned signal.\n\t///\n\t/// - parameters:\n\t///   - count: Number of last events to send after `self` completes.\n\t///\n\t/// - returns: A signal that receives up to `count` values from `self`\n\t///            after `self` completes.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func takeLast(count: Int) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tvar buffer: [Value] = []\n\t\t\tbuffer.reserveCapacity(count)\n\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\t// To avoid exceeding the reserved capacity of the buffer, \n\t\t\t\t\t// we remove then add. Remove elements until we have room to \n\t\t\t\t\t// add one more.\n\t\t\t\t\twhile (buffer.count + 1) > count {\n\t\t\t\t\t\tbuffer.removeAtIndex(0)\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tbuffer.append(value)\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tbuffer.forEach(observer.sendNext)\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Forward any values from `self` until `predicate` returns false, at which\n\t/// point the returned signal will complete.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts value and returns `Bool` value\n\t///                whether `self` should forward it to `signal` and continue\n\t///                sending other events.\n\t///\n\t/// - returns: A signal that sends events until the values sent by `self`\n\t///            pass the given `predicate`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func takeWhile(predicate: Value -> Bool) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tif let value = event.value where !predicate(value) {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t} else {\n\t\t\t\t\tobserver.action(event)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate struct ZipState<Left, Right> {\n\tvar values: (left: [Left], right: [Right]) = ([], [])\n\tvar isCompleted: (left: Bool, right: Bool) = (false, false)\n\n\tvar isFinished: Bool {\n\t\treturn (isCompleted.left && values.left.isEmpty) || (isCompleted.right && values.right.isEmpty)\n\t}\n}\n\nextension SignalType {\n\t/// Zip elements of two signals into pairs. The elements of any Nth pair\n\t/// are the Nth elements of the two input signals.\n\t///\n\t/// - parameters:\n\t///   - otherSignal: A signal to zip values with.\n\t///\n\t/// - returns: A signal that sends tuples of `self` and `otherSignal`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func zipWith<U>(otherSignal: Signal<U, Error>) -> Signal<(Value, U), Error> {\n\t\treturn Signal { observer in\n\t\t\tlet state = Atomic(ZipState<Value, U>())\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\t\n\t\t\tlet flush = {\n\t\t\t\tvar tuple: (Value, U)?\n\t\t\t\tvar isFinished = false\n\n\t\t\t\tstate.modify { state in\n\t\t\t\t\tguard !state.values.left.isEmpty && !state.values.right.isEmpty else {\n\t\t\t\t\t\tisFinished = state.isFinished\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\n\t\t\t\t\tvar state = state\n\t\t\t\t\ttuple = (state.values.left.removeFirst(), state.values.right.removeFirst())\n\t\t\t\t\tisFinished = state.isFinished\n\t\t\t\t\treturn state\n\t\t\t\t}\n\n\t\t\t\tif let tuple = tuple {\n\t\t\t\t\tobserver.sendNext(tuple)\n\t\t\t\t}\n\n\t\t\t\tif isFinished {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tlet onFailed = observer.sendFailed\n\t\t\tlet onInterrupted = observer.sendInterrupted\n\n\t\t\tdisposable += self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tstate.modify { state in\n\t\t\t\t\t\tvar state = state\n\t\t\t\t\t\tstate.values.left.append(value)\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tflush()\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tonFailed(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tstate.modify { state in\n\t\t\t\t\t\tvar state = state\n\t\t\t\t\t\tstate.isCompleted.left = true\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tflush()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tonInterrupted()\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisposable += otherSignal.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tstate.modify { state in\n\t\t\t\t\t\tvar state = state\n\t\t\t\t\t\tstate.values.right.append(value)\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tflush()\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tonFailed(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tstate.modify { state in\n\t\t\t\t\t\tvar state = state\n\t\t\t\t\t\tstate.isCompleted.right = true\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tflush()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tonInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\t/// Apply `operation` to values from `self` with `Success`ful results\n\t/// forwarded on the returned signal and `Failure`s sent as `Failed` events.\n\t///\n\t/// - parameters:\n\t///   - operation: A closure that accepts a value and returns a `Result`.\n\t///\n\t/// - returns: A signal that receives `Success`ful `Result` as `Next` event\n\t///            and `Failure` as `Failed` event.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func attempt(operation: Value -> Result<(), Error>) -> Signal<Value, Error> {\n\t\treturn attemptMap { value in\n\t\t\treturn operation(value).map {\n\t\t\t\treturn value\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Apply `operation` to values from `self` with `Success`ful results mapped\n\t/// on the returned signal and `Failure`s sent as `Failed` events.\n\t///\n\t/// - parameters:\n\t///   - operation: A closure that accepts a value and returns a result of\n\t///                a mapped value as `Success`.\n\t///\n\t/// - returns: A signal that sends mapped values from `self` if returned\n\t///            `Result` is `Success`ful, `Failed` events otherwise.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func attemptMap<U>(operation: Value -> Result<U, Error>) -> Signal<U, Error> {\n\t\treturn Signal { observer in\n\t\t\tself.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\toperation(value).analysis(\n\t\t\t\t\t\tifSuccess: observer.sendNext,\n\t\t\t\t\t\tifFailure: observer.sendFailed\n\t\t\t\t\t)\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Throttle values sent by the receiver, so that at least `interval`\n\t/// seconds pass between each, then forwards them on the given scheduler.\n\t///\n\t/// - note: If multiple values are received before the interval has elapsed,\n\t///         the latest value is the one that will be passed on.\n\t///\n\t/// - note: If the input signal terminates while a value is being throttled,\n\t///         that value will be discarded and the returned signal will \n\t///         terminate immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: Number of seconds to wait between sent values.\n\t///   - scheduler: A scheduler to deliver events on.\n\t///\n\t/// - returns: A signal that sends values at least `interval` seconds \n\t///            appart on a given scheduler.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func throttle(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> Signal<Value, Error> {\n\t\tprecondition(interval >= 0)\n\n\t\treturn Signal { observer in\n\t\t\tlet state: Atomic<ThrottleState<Value>> = Atomic(ThrottleState())\n\t\t\tlet schedulerDisposable = SerialDisposable()\n\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tdisposable.addDisposable(schedulerDisposable)\n\n\t\t\tdisposable += self.observe { event in\n\t\t\t\tguard let value = event.value else {\n\t\t\t\t\tschedulerDisposable.innerDisposable = scheduler.schedule {\n\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t}\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tvar scheduleDate: NSDate!\n\t\t\t\tstate.modify { state in\n\t\t\t\t\tvar state = state\n\t\t\t\t\tstate.pendingValue = value\n\n\t\t\t\t\tlet proposedScheduleDate = state.previousDate?.dateByAddingTimeInterval(interval) ?? scheduler.currentDate\n\t\t\t\t\tscheduleDate = proposedScheduleDate.laterDate(scheduler.currentDate)\n\n\t\t\t\t\treturn state\n\t\t\t\t}\n\n\t\t\t\tschedulerDisposable.innerDisposable = scheduler.scheduleAfter(scheduleDate) {\n\t\t\t\t\tlet previousState = state.modify { state in\n\t\t\t\t\t\tvar state = state\n\n\t\t\t\t\t\tif state.pendingValue != nil {\n\t\t\t\t\t\t\tstate.pendingValue = nil\n\t\t\t\t\t\t\tstate.previousDate = scheduleDate\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif let pendingValue = previousState.pendingValue {\n\t\t\t\t\t\tobserver.sendNext(pendingValue)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn disposable\n\t\t}\n\t}\n\n\t/// Debounce values sent by the receiver, such that at least `interval`\n\t/// seconds pass after the receiver has last sent a value, then forward the\n\t/// latest value on the given scheduler.\n\t///\n\t/// - note: If multiple values are received before the interval has elapsed, \n\t///         the latest value is the one that will be passed on.\n\t///\n\t/// - note: If the input signal terminates while a value is being debounced, \n\t///         that value will be discarded and the returned signal will \n\t///         terminate immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: A number of seconds to wait before sending a value.\n\t///   - scheduler: A scheduler to send values on.\n\t///\n\t/// - returns: A signal that sends values that are sent from `self` at least\n\t///            `interval` seconds apart.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func debounce(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> Signal<Value, Error> {\n\t\tprecondition(interval >= 0)\n\t\t\n\t\treturn self\n\t\t\t.materialize()\n\t\t\t.flatMap(.Latest) { event -> SignalProducer<Event<Value, Error>, NoError> in\n\t\t\t\tif event.isTerminating {\n\t\t\t\t\treturn SignalProducer(value: event).observeOn(scheduler)\n\t\t\t\t} else {\n\t\t\t\t\treturn SignalProducer(value: event).delay(interval, onScheduler: scheduler)\n\t\t\t\t}\n\t\t\t}\n\t\t\t.dematerialize()\n\t}\n}\n\nextension SignalType {\n\t/// Forward only those values from `self` that have unique identities across\n\t/// the set of all values that have been seen.\n\t///\n\t/// - note: This causes the identities to be retained to check for \n\t///         uniqueness.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts a value and returns identity \n\t///                value.\n\t///\n\t/// - returns: A signal that sends unique values during its lifetime.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func uniqueValues<Identity: Hashable>(transform: Value -> Identity) -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\tvar seenValues: Set<Identity> = []\n\t\t\t\n\t\t\treturn self\n\t\t\t\t.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlet identity = transform(value)\n\t\t\t\t\t\tif !seenValues.contains(identity) {\n\t\t\t\t\t\t\tseenValues.insert(identity)\n\t\t\t\t\t\t\tfallthrough\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\tcase .Failed, .Completed, .Interrupted:\n\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t}\n\t}\n}\n\nextension SignalType where Value: Hashable {\n\t/// Forward only those values from `self` that are unique across the set of\n\t/// all values that have been seen.\n\t///\n\t/// - note: This causes the values to be retained to check for uniqueness. \n\t///         Providing a function that returns a unique value for each sent \n\t///         value can help you reduce the memory footprint.\n\t///\n\t/// - returns: A signal that sends unique values during its lifetime.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func uniqueValues() -> Signal<Value, Error> {\n\t\treturn uniqueValues { $0 }\n\t}\n}\n\nprivate struct ThrottleState<Value> {\n\tvar previousDate: NSDate? = nil\n\tvar pendingValue: Value? = nil\n}\n\n/// Combine the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>) -> Signal<(A, B), Error> {\n\treturn a.combineLatestWith(b)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>) -> Signal<(A, B, C), Error> {\n\treturn combineLatest(a, b)\n\t\t.combineLatestWith(c)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>) -> Signal<(A, B, C, D), Error> {\n\treturn combineLatest(a, b, c)\n\t\t.combineLatestWith(d)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>) -> Signal<(A, B, C, D, E), Error> {\n\treturn combineLatest(a, b, c, d)\n\t\t.combineLatestWith(e)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, F, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>) -> Signal<(A, B, C, D, E, F), Error> {\n\treturn combineLatest(a, b, c, d, e)\n\t\t.combineLatestWith(f)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, F, G, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>) -> Signal<(A, B, C, D, E, F, G), Error> {\n\treturn combineLatest(a, b, c, d, e, f)\n\t\t.combineLatestWith(g)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>) -> Signal<(A, B, C, D, E, F, G, H), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g)\n\t\t.combineLatestWith(h)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, I, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>, _ i: Signal<I, Error>) -> Signal<(A, B, C, D, E, F, G, H, I), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g, h)\n\t\t.combineLatestWith(i)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, I, J, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>, _ i: Signal<I, Error>, _ j: Signal<J, Error>) -> Signal<(A, B, C, D, E, F, G, H, I, J), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g, h, i)\n\t\t.combineLatestWith(j)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given signals, in the manner described by\n/// `combineLatestWith`. No events will be sent if the sequence is empty.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func combineLatest<S: SequenceType, Value, Error where S.Generator.Element == Signal<Value, Error>>(signals: S) -> Signal<[Value], Error> {\n\tvar generator = signals.generate()\n\tif let first = generator.next() {\n\t\tlet initial = first.map { [$0] }\n\t\treturn GeneratorSequence(generator).reduce(initial) { signal, next in\n\t\t\tsignal.combineLatestWith(next).map { $0.0 + [$0.1] }\n\t\t}\n\t}\n\t\n\treturn .never\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>) -> Signal<(A, B), Error> {\n\treturn a.zipWith(b)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>) -> Signal<(A, B, C), Error> {\n\treturn zip(a, b)\n\t\t.zipWith(c)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>) -> Signal<(A, B, C, D), Error> {\n\treturn zip(a, b, c)\n\t\t.zipWith(d)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>) -> Signal<(A, B, C, D, E), Error> {\n\treturn zip(a, b, c, d)\n\t\t.zipWith(e)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, F, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>) -> Signal<(A, B, C, D, E, F), Error> {\n\treturn zip(a, b, c, d, e)\n\t\t.zipWith(f)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, F, G, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>) -> Signal<(A, B, C, D, E, F, G), Error> {\n\treturn zip(a, b, c, d, e, f)\n\t\t.zipWith(g)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, F, G, H, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>) -> Signal<(A, B, C, D, E, F, G, H), Error> {\n\treturn zip(a, b, c, d, e, f, g)\n\t\t.zipWith(h)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, F, G, H, I, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>, _ i: Signal<I, Error>) -> Signal<(A, B, C, D, E, F, G, H, I), Error> {\n\treturn zip(a, b, c, d, e, f, g, h)\n\t\t.zipWith(i)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<A, B, C, D, E, F, G, H, I, J, Error>(a: Signal<A, Error>, _ b: Signal<B, Error>, _ c: Signal<C, Error>, _ d: Signal<D, Error>, _ e: Signal<E, Error>, _ f: Signal<F, Error>, _ g: Signal<G, Error>, _ h: Signal<H, Error>, _ i: Signal<I, Error>, _ j: Signal<J, Error>) -> Signal<(A, B, C, D, E, F, G, H, I, J), Error> {\n\treturn zip(a, b, c, d, e, f, g, h, i)\n\t\t.zipWith(j)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given signals, in the manner described by\n/// `zipWith`. No events will be sent if the sequence is empty.\n@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\npublic func zip<S: SequenceType, Value, Error where S.Generator.Element == Signal<Value, Error>>(signals: S) -> Signal<[Value], Error> {\n\tvar generator = signals.generate()\n\tif let first = generator.next() {\n\t\tlet initial = first.map { [$0] }\n\t\treturn GeneratorSequence(generator).reduce(initial) { signal, next in\n\t\t\tsignal.zipWith(next).map { $0.0 + [$0.1] }\n\t\t}\n\t}\n\t\n\treturn .never\n}\n\nextension SignalType {\n\t/// Forward events from `self` until `interval`. Then if signal isn't \n\t/// completed yet, fails with `error` on `scheduler`.\n\t///\n\t/// - note: If the interval is 0, the timeout will be scheduled immediately. \n\t///         The signal must complete synchronously (or on a faster\n\t///         scheduler) to avoid the timeout.\n\t///\n\t/// - parameters:\n\t///   - error: Error to send with `Failed` event if `self` is not completed\n\t///            when `interval` passes.\n\t///   - interval: Number of seconds to wait for `self` to complete.\n\t///   - scheudler: A scheduler to deliver error on.\n\t///\n\t/// - returns: A signal that sends events for at most `interval` seconds,\n\t///            then, if not `Completed` - sends `error` with `Failed` event\n\t///            on `scheduler`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func timeoutWithError(error: Error, afterInterval interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> Signal<Value, Error> {\n\t\tprecondition(interval >= 0)\n\n\t\treturn Signal { observer in\n\t\t\tlet disposable = CompositeDisposable()\n\t\t\tlet date = scheduler.currentDate.dateByAddingTimeInterval(interval)\n\n\t\t\tdisposable += scheduler.scheduleAfter(date) {\n\t\t\t\tobserver.sendFailed(error)\n\t\t\t}\n\n\t\t\tdisposable += self.observe(observer)\n\t\t\treturn disposable\n\t\t}\n\t}\n}\n\nextension SignalType where Error == NoError {\n\t/// Promote a signal that does not generate failures into one that can.\n\t///\n\t/// - note: This does not actually cause failures to be generated for the\n\t///         given signal, but makes it easier to combine with other signals\n\t///         that may fail; for example, with operators like \n\t///         `combineLatestWith`, `zipWith`, `flatten`, etc.\n\t///\n\t/// - parameters:\n\t///   - _ An `ErrorType`.\n\t///\n\t/// - returns: A signal that has an instantiatable `ErrorType`.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func promoteErrors<F: ErrorType>(_: F.Type) -> Signal<Value, F> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\tcase .Failed:\n\t\t\t\t\tfatalError(\"NoError is impossible to construct\")\n\t\t\t\tcase .Completed:\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\tcase .Interrupted:\n\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/SignalProducer.swift",
    "content": "import Foundation\nimport Result\n\n/// A SignalProducer creates Signals that can produce values of type `Value` \n/// and/or fail with errors of type `Error`. If no failure should be possible, \n/// `NoError` can be specified for `Error`.\n///\n/// SignalProducers can be used to represent operations or tasks, like network\n/// requests, where each invocation of `start()` will create a new underlying\n/// operation. This ensures that consumers will receive the results, versus a\n/// plain Signal, where the results might be sent before any observers are\n/// attached.\n///\n/// Because of the behavior of `start()`, different Signals created from the\n/// producer may see a different version of Events. The Events may arrive in a\n/// different order between Signals, or the stream might be completely\n/// different!\npublic struct SignalProducer<Value, Error: ErrorType> {\n\tpublic typealias ProducedSignal = Signal<Value, Error>\n\n\tprivate let startHandler: (Signal<Value, Error>.Observer, CompositeDisposable) -> Void\n\n\t/// Initializes a `SignalProducer` that will emit the same events as the\n\t/// given signal.\n\t///\n\t/// If the Disposable returned from `start()` is disposed or a terminating\n\t/// event is sent to the observer, the given signal will be disposed.\n\t///\n\t/// - parameters:\n\t///   - signal: A signal to observe after starting the producer.\n\tpublic init<S: SignalType where S.Value == Value, S.Error == Error>(signal: S) {\n\t\tself.init { observer, disposable in\n\t\t\tdisposable += signal.observe(observer)\n\t\t}\n\t}\n\n\t/// Initializes a SignalProducer that will invoke the given closure once for\n\t/// each invocation of `start()`.\n\t///\n\t/// The events that the closure puts into the given observer will become\n\t/// the events sent by the started `Signal` to its observers.\n\t///\n\t/// - note: If the `Disposable` returned from `start()` is disposed or a\n\t///         terminating event is sent to the observer, the given\n\t///         `CompositeDisposable` will be disposed, at which point work\n\t///         should be interrupted and any temporary resources cleaned up.\n\t///\n\t/// - parameters:\n\t///   - startHandler: A closure that accepts observer and a disposable.\n\tpublic init(_ startHandler: (Signal<Value, Error>.Observer, CompositeDisposable) -> Void) {\n\t\tself.startHandler = startHandler\n\t}\n\n\t/// Creates a producer for a `Signal` that will immediately send one value\n\t/// then complete.\n\t///\n\t/// - parameters:\n\t///   - value: A value that should be sent by the `Signal` in a `Next`\n\t///            event.\n\tpublic init(value: Value) {\n\t\tself.init { observer, disposable in\n\t\t\tobserver.sendNext(value)\n\t\t\tobserver.sendCompleted()\n\t\t}\n\t}\n\n\t/// Creates a producer for a `Signal` that will immediately fail with the\n\t/// given error.\n\t///\n\t/// - parameters:\n\t///   - error: An error that should be sent by the `Signal` in a `Failed`\n\t///            event.\n\tpublic init(error: Error) {\n\t\tself.init { observer, disposable in\n\t\t\tobserver.sendFailed(error)\n\t\t}\n\t}\n\n\t/// Creates a producer for a Signal that will immediately send one value\n\t/// then complete, or immediately fail, depending on the given Result.\n\t///\n\t/// - parameters:\n\t///   - result: A `Result` instance that will send either `Next` event if\n\t///             `result` is `Success`ful or `Failed` event if `result` is a\n\t///             `Failure`.\n\tpublic init(result: Result<Value, Error>) {\n\t\tswitch result {\n\t\tcase let .Success(value):\n\t\t\tself.init(value: value)\n\n\t\tcase let .Failure(error):\n\t\t\tself.init(error: error)\n\t\t}\n\t}\n\n\t/// Creates a producer for a Signal that will immediately send the values\n\t/// from the given sequence, then complete.\n\t///\n\t/// - parameters:\n\t///   - values: A sequence of values that a `Signal` will send as separate\n\t///             `Next` events and then complete.\n\tpublic init<S: SequenceType where S.Generator.Element == Value>(values: S) {\n\t\tself.init { observer, disposable in\n\t\t\tfor value in values {\n\t\t\t\tobserver.sendNext(value)\n\n\t\t\t\tif disposable.disposed {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tobserver.sendCompleted()\n\t\t}\n\t}\n\t\n\t/// Creates a producer for a Signal that will immediately send the values\n\t/// from the given sequence, then complete.\n\t///\n\t/// - parameters:\n\t///   - first: First value for the `Signal` to send.\n\t///   - second: Second value for the `Signal` to send.\n\t///   - tail: Rest of the values to be sent by the `Signal`.\n\tpublic init(values first: Value, _ second: Value, _ tail: Value...) {\n\t\tself.init(values: [ first, second ] + tail)\n\t}\n\n\t/// A producer for a Signal that will immediately complete without sending\n\t/// any values.\n\tpublic static var empty: SignalProducer {\n\t\treturn self.init { observer, disposable in\n\t\t\tobserver.sendCompleted()\n\t\t}\n\t}\n\n\t/// A producer for a Signal that never sends any events to its observers.\n\tpublic static var never: SignalProducer {\n\t\treturn self.init { _ in return }\n\t}\n\n\t/// Create a queue for events that replays them when new signals are\n\t/// created from the returned producer.\n\t///\n\t/// When values are put into the returned observer (observer), they will be\n\t/// added to an internal buffer. If the buffer is already at capacity, the\n\t/// earliest (oldest) value will be dropped to make room for the new value.\n\t///\n\t/// Signals created from the returned producer will stay alive until a\n\t/// terminating event is added to the queue. If the queue does not contain\n\t/// such an event when the Signal is started, all values sent to the\n\t/// returned observer will be automatically forwarded to the Signal’s\n\t/// observers until a terminating event is received.\n\t///\n\t/// - note: After a terminating event has been added to the queue, the\n\t///         observer will not add any further events. This _does not_ count\n\t///         against the value capacity so no buffered values will be dropped\n\t///         on termination.\n\t///\n\t/// - precondition: `capacity` must be non-negative integer.\n\t///\n\t/// - parameters:\n\t///   - capacity: Maximum number of values to buffer.\n\t///\n\t/// - returns: A tuple of `SignalProducer` to replay values from and\n\t///            an `observer` to put replayable values to.\n\t@available(*, deprecated, message=\"Use properties instead. 'buffer' will be removed in RAC 5.0\")\n\tpublic static func buffer(capacity: Int) -> (SignalProducer, Signal<Value, Error>.Observer) {\n\t\tprecondition(capacity >= 0, \"Invalid capacity: \\(capacity)\")\n\n\t\t// Used as an atomic variable so we can remove observers without needing\n\t\t// to run on a serial queue.\n\t\tlet state: Atomic<BufferState<Value, Error>> = Atomic(BufferState())\n\n\t\tlet producer = self.init { observer, disposable in\n\t\t\t// Assigned to when replay() is invoked synchronously below.\n\t\t\tvar token: RemovalToken?\n\n\t\t\tlet replayBuffer = ReplayBuffer<Value>()\n\t\t\tvar replayValues: [Value] = []\n\t\t\tvar replayToken: RemovalToken?\n\t\t\tvar next = state.modify { state in\n\t\t\t\tvar state = state\n\n\t\t\t\treplayValues = state.values\n\t\t\t\tif replayValues.isEmpty {\n\t\t\t\t\ttoken = state.observers?.insert(observer)\n\t\t\t\t} else {\n\t\t\t\t\treplayToken = state.replayBuffers.insert(replayBuffer)\n\t\t\t\t}\n\n\t\t\t\treturn state\n\t\t\t}\n\n\t\t\twhile !replayValues.isEmpty {\n\t\t\t\treplayValues.forEach(observer.sendNext)\n\n\t\t\t\tnext = state.modify { state in\n\t\t\t\t\tvar state = state\n\n\t\t\t\t\treplayValues = replayBuffer.values\n\t\t\t\t\treplayBuffer.values = []\n\t\t\t\t\tif replayValues.isEmpty {\n\t\t\t\t\t\tif let replayToken = replayToken {\n\t\t\t\t\t\t\tstate.replayBuffers.removeValueForToken(replayToken)\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoken = state.observers?.insert(observer)\n\t\t\t\t\t}\n\n\t\t\t\t\treturn state\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif let terminationEvent = next.terminationEvent {\n\t\t\t\tobserver.action(terminationEvent)\n\t\t\t}\n\n\t\t\tif let token = token {\n\t\t\t\tdisposable += {\n\t\t\t\t\tstate.modify { state in\n\t\t\t\t\t\tvar state = state\n\t\t\t\t\t\tstate.observers?.removeValueForToken(token)\n\t\t\t\t\t\treturn state\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet bufferingObserver: Signal<Value, Error>.Observer = Observer { event in\n\t\t\tlet originalState = state.modify { state in\n\t\t\t\tvar state = state\n\n\t\t\t\tif let value = event.value {\n\t\t\t\t\tstate.addValue(value, upToCapacity: capacity)\n\t\t\t\t} else {\n\t\t\t\t\t// Disconnect all observers and prevent future\n\t\t\t\t\t// attachments.\n\t\t\t\t\tstate.terminationEvent = event\n\t\t\t\t\tstate.observers = nil\n\t\t\t\t}\n\n\t\t\t\treturn state\n\t\t\t}\n\n\t\t\toriginalState.observers?.forEach { $0.action(event) }\n\t\t}\n\n\t\treturn (producer, bufferingObserver)\n\t}\n\n\t/// Create a `SignalProducer` that will attempt the given operation once for\n\t/// each invocation of `start()`.\n\t///\n\t/// Upon success, the started signal will send the resulting value then\n\t/// complete. Upon failure, the started signal will fail with the error that\n\t/// occurred.\n\t///\n\t/// - parameters:\n\t///   - operation: A closure that returns instance of `Result`.\n\t///\n\t/// - returns: A `SignalProducer` that will forward `Success`ful `result` as\n\t///            `Next` event and then complete or `Failed` event if `result`\n\t///            is a `Failure`.\n\tpublic static func attempt(operation: () -> Result<Value, Error>) -> SignalProducer {\n\t\treturn self.init { observer, disposable in\n\t\t\toperation().analysis(ifSuccess: { value in\n\t\t\t\tobserver.sendNext(value)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}, ifFailure: { error in\n\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t})\n\t\t}\n\t}\n\n\t/// Create a Signal from the producer, pass it into the given closure,\n\t/// then start sending events on the Signal when the closure has returned.\n\t///\n\t/// The closure will also receive a disposable which can be used to\n\t/// interrupt the work associated with the signal and immediately send an\n\t/// `Interrupted` event.\n\t///\n\t/// - parameters:\n\t///   - setUp: A closure that accepts a `signal` and `disposable`.\n\tpublic func startWithSignal(@noescape setUp: (Signal<Value, Error>, Disposable) -> Void) {\n\t\tlet (signal, observer) = Signal<Value, Error>.pipe()\n\n\t\t// Disposes of the work associated with the SignalProducer and any\n\t\t// upstream producers.\n\t\tlet producerDisposable = CompositeDisposable()\n\n\t\t// Directly disposed of when `start()` or `startWithSignal()` is\n\t\t// disposed.\n\t\tlet cancelDisposable = ActionDisposable {\n\t\t\tobserver.sendInterrupted()\n\t\t\tproducerDisposable.dispose()\n\t\t}\n\n\t\tsetUp(signal, cancelDisposable)\n\n\t\tif cancelDisposable.disposed {\n\t\t\treturn\n\t\t}\n\n\t\tlet wrapperObserver: Signal<Value, Error>.Observer = Observer { event in\n\t\t\tobserver.action(event)\n\n\t\t\tif event.isTerminating {\n\t\t\t\t// Dispose only after notifying the Signal, so disposal\n\t\t\t\t// logic is consistently the last thing to run.\n\t\t\t\tproducerDisposable.dispose()\n\t\t\t}\n\t\t}\n\n\t\tstartHandler(wrapperObserver, producerDisposable)\n\t}\n}\n\n/// A uniquely identifying token for Observers that are replaying values in\n/// BufferState.\nprivate final class ReplayBuffer<Value> {\n\tprivate var values: [Value] = []\n}\n\n\nprivate struct BufferState<Value, Error: ErrorType> {\n\t/// All values in the buffer.\n\tvar values: [Value] = []\n\n\t/// Any terminating event sent to the buffer.\n\t///\n\t/// This will be nil if termination has not occurred.\n\tvar terminationEvent: Event<Value, Error>?\n\n\t/// The observers currently attached to the buffered producer, or nil if the\n\t/// producer was terminated.\n\tvar observers: Bag<Signal<Value, Error>.Observer>? = Bag()\n\n\t/// The set of unused replay token identifiers.\n\tvar replayBuffers: Bag<ReplayBuffer<Value>> = Bag()\n\n\t/// Appends a new value to the buffer, trimming it down to the given\n\t/// capacity if necessary.\n\tmutating func addValue(value: Value, upToCapacity capacity: Int) {\n\t\tprecondition(capacity >= 0)\n\n\t\tfor buffer in replayBuffers {\n\t\t\tbuffer.values.append(value)\n\t\t}\n\n\t\tif capacity == 0 {\n\t\t\tvalues = []\n\t\t\treturn\n\t\t}\n\n\t\tif capacity == 1 {\n\t\t\tvalues = [ value ]\n\t\t\treturn\n\t\t}\n\n\t\tvalues.append(value)\n\n\t\tlet overflow = values.count - capacity\n\t\tif overflow > 0 {\n\t\t\tvalues.removeRange(0..<overflow)\n\t\t}\n\t}\n}\n\npublic protocol SignalProducerType {\n\t/// The type of values being sent on the producer\n\tassociatedtype Value\n\t/// The type of error that can occur on the producer. If errors aren't\n\t/// possible then `NoError` can be used.\n\tassociatedtype Error: ErrorType\n\n\t/// Extracts a signal producer from the receiver.\n\tvar producer: SignalProducer<Value, Error> { get }\n\n\t/// Creates a Signal from the producer, passes it into the given closure,\n\t/// then starts sending events on the Signal when the closure has returned.\n\tfunc startWithSignal(@noescape setUp: (Signal<Value, Error>, Disposable) -> Void)\n}\n\nextension SignalProducer: SignalProducerType {\n\tpublic var producer: SignalProducer {\n\t\treturn self\n\t}\n}\n\nextension SignalProducerType {\n\t/// Create a Signal from the producer, then attach the given observer to\n\t/// the `Signal` as an observer.\n\t///\n\t/// - parameters:\n\t///   - observer: An observer to attach to produced signal.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the signal and immediately send an\n\t///            `Interrupted` event.\n\tpublic func start(observer: Signal<Value, Error>.Observer = Signal<Value, Error>.Observer()) -> Disposable {\n\t\tvar disposable: Disposable!\n\n\t\tstartWithSignal { signal, innerDisposable in\n\t\t\tsignal.observe(observer)\n\t\t\tdisposable = innerDisposable\n\t\t}\n\n\t\treturn disposable\n\t}\n\n\t/// Convenience override for start(_:) to allow trailing-closure style\n\t/// invocations.\n\t///\n\t/// - parameters:\n\t///   - observerAction: A closure that accepts `Event` sent by the produced\n\t///                     signal.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the signal and immediately send an\n\t///            `Interrupted` event.\n\tpublic func start(observerAction: Signal<Value, Error>.Observer.Action) -> Disposable {\n\t\treturn start(Observer(observerAction))\n\t}\n\n\t@available(*, deprecated, message=\"This SignalProducer may emit errors which must be handled explicitly, or observed using startWithResult:\")\n\tpublic func startWithNext(next: Value -> Void) -> Disposable {\n\t\treturn start(Observer(next: next))\n\t}\n\n\t/// Create a Signal from the producer, then add an observer to the `Signal`,\n\t/// which will invoke the given callback when `Next` or `Failed` events are\n\t/// received.\n\t///\n\t/// - parameters:\n\t///   - result: A closure that accepts a `result` that contains a `Success`\n\t///             case for `Next` events or `Failure` case for `Failed` event.\n\t///\n\t/// - returns:  A Disposable which can be used to interrupt the work\n\t///             associated with the Signal, and prevent any future callbacks\n\t///             from being invoked.\n\tpublic func startWithResult(result: Result<Value, Error> -> Void) -> Disposable {\n\t\treturn start(\n\t\t\tObserver(\n\t\t\t\tnext: { result(.Success($0)) },\n\t\t\t\tfailed: { result(.Failure($0)) }\n\t\t\t)\n\t\t)\n\t}\n\n\t/// Create a Signal from the producer, then add exactly one observer to the\n\t/// Signal, which will invoke the given callback when a `Completed` event is\n\t/// received.\n\t///\n\t/// - parameters:\n\t///   - completed: A closure that will be envoked when produced signal sends\n\t///                `Completed` event.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the signal.\n\tpublic func startWithCompleted(completed: () -> Void) -> Disposable {\n\t\treturn start(Observer(completed: completed))\n\t}\n\t\n\t/// Creates a Signal from the producer, then adds exactly one observer to\n\t/// the Signal, which will invoke the given callback when a `failed` event\n\t/// is received.\n\t///\n\t/// - parameters:\n\t///   - failed: A closure that accepts an error object.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the signal.\n\tpublic func startWithFailed(failed: Error -> Void) -> Disposable {\n\t\treturn start(Observer(failed: failed))\n\t}\n\t\n\t/// Creates a Signal from the producer, then adds exactly one observer to\n\t/// the Signal, which will invoke the given callback when an `Interrupted`\n\t/// event is received.\n\t///\n\t/// - parameters:\n\t///   - interrupted: A closure that is invoked when `Interrupted` event is\n\t///                  received.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the signal.\n\tpublic func startWithInterrupted(interrupted: () -> Void) -> Disposable {\n\t\treturn start(Observer(interrupted: interrupted))\n\t}\n}\n\nextension SignalProducerType where Error == NoError {\n\t/// Create a Signal from the producer, then add exactly one observer to\n\t/// the Signal, which will invoke the given callback when `Next` events are\n\t/// received.\n\t///\n\t/// - parameters:\n\t///   - next: A closure that accepts a value carried by `Next` event.\n\t///\n\t/// - returns: A `Disposable` which can be used to interrupt the work\n\t///            associated with the Signal, and prevent any future callbacks\n\t///            from being invoked.\n\tpublic func startWithNext(next: Value -> Void) -> Disposable {\n\t\treturn start(Observer(next: next))\n\t}\n}\n\nextension SignalProducerType {\n\t/// Lift an unary Signal operator to operate upon SignalProducers instead.\n\t///\n\t/// In other words, this will create a new `SignalProducer` which will apply\n\t/// the given `Signal` operator to _every_ created `Signal`, just as if the\n\t/// operator had been applied to each `Signal` yielded from `start()`.\n\t///\n\t/// - parameters:\n\t///   - transform: An unary operator to lift.\n\t///\n\t/// - returns: A signal producer that applies signal's operator to every\n\t///            created signal.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func lift<U, F>(transform: Signal<Value, Error> -> Signal<U, F>) -> SignalProducer<U, F> {\n\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\tself.startWithSignal { signal, innerDisposable in\n\t\t\t\touterDisposable.addDisposable(innerDisposable)\n\n\t\t\t\ttransform(signal).observe(observer)\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Lift a binary Signal operator to operate upon SignalProducers instead.\n\t///\n\t/// In other words, this will create a new `SignalProducer` which will apply\n\t/// the given `Signal` operator to _every_ `Signal` created from the two\n\t/// producers, just as if the operator had been applied to each `Signal`\n\t/// yielded from `start()`.\n\t///\n\t/// - note: starting the returned producer will start the receiver of the\n\t///         operator, which may not be adviseable for some operators.\n\t///\n\t/// - parameters:\n\t///   - transform: A binary operator to lift.\n\t///\n\t/// - returns: A binary operator that operates on two signal producers.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func lift<U, F, V, G>(transform: Signal<Value, Error> -> Signal<U, F> -> Signal<V, G>) -> SignalProducer<U, F> -> SignalProducer<V, G> {\n\t\treturn liftRight(transform)\n\t}\n\n\t/// Right-associative lifting of a binary signal operator over producers.\n\t/// That is, the argument producer will be started before the receiver. When\n\t/// both producers are synchronous this order can be important depending on\n\t/// the operator to generate correct results.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tprivate func liftRight<U, F, V, G>(transform: Signal<Value, Error> -> Signal<U, F> -> Signal<V, G>) -> SignalProducer<U, F> -> SignalProducer<V, G> {\n\t\treturn { otherProducer in\n\t\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\t\touterDisposable.addDisposable(disposable)\n\n\t\t\t\t\totherProducer.startWithSignal { otherSignal, otherDisposable in\n\t\t\t\t\t\touterDisposable.addDisposable(otherDisposable)\n\n\t\t\t\t\t\ttransform(signal)(otherSignal).observe(observer)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Left-associative lifting of a binary signal operator over producers.\n\t/// That is, the receiver will be started before the argument producer. When\n\t/// both producers are synchronous this order can be important depending on\n\t/// the operator to generate correct results.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tprivate func liftLeft<U, F, V, G>(transform: Signal<Value, Error> -> Signal<U, F> -> Signal<V, G>) -> SignalProducer<U, F> -> SignalProducer<V, G> {\n\t\treturn { otherProducer in\n\t\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\t\totherProducer.startWithSignal { otherSignal, otherDisposable in\n\t\t\t\t\touterDisposable.addDisposable(otherDisposable)\n\t\t\t\t\t\n\t\t\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\t\t\touterDisposable.addDisposable(disposable)\n\n\t\t\t\t\t\ttransform(signal)(otherSignal).observe(observer)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Lift a binary Signal operator to operate upon a Signal and a\n\t/// SignalProducer instead.\n\t///\n\t/// In other words, this will create a new `SignalProducer` which will apply\n\t/// the given `Signal` operator to _every_ `Signal` created from the two\n\t/// producers, just as if the operator had been applied to each `Signal`\n\t/// yielded from `start()`.\n\t///\n\t/// - parameters:\n\t///   - transform: A binary operator to lift.\n\t///\n\t/// - returns: A binary operator that works on `Signal` and returns\n\t///            `SignalProducer`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func lift<U, F, V, G>(transform: Signal<Value, Error> -> Signal<U, F> -> Signal<V, G>) -> Signal<U, F> -> SignalProducer<V, G> {\n\t\treturn { otherSignal in\n\t\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\t\tlet (wrapperSignal, otherSignalObserver) = Signal<U, F>.pipe()\n\n\t\t\t\t// Avoid memory leak caused by the direct use of the given\n\t\t\t\t// signal.\n\t\t\t\t//\n\t\t\t\t// See https://github.com/ReactiveCocoa/ReactiveCocoa/pull/2758\n\t\t\t\t// for the details.\n\t\t\t\touterDisposable += ActionDisposable {\n\t\t\t\t\totherSignalObserver.sendInterrupted()\n\t\t\t\t}\n\t\t\t\touterDisposable += otherSignal.observe(otherSignalObserver)\n\n\t\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\t\touterDisposable += disposable\n\t\t\t\t\touterDisposable += transform(signal)(wrapperSignal).observe(observer)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t\n\t/// Map each value in the producer to a new value.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts a value and returns a different\n\t///                value.\n\t///\n\t/// - returns: A signal producer that, when started, will send a mapped\n\t///            value of `self.`\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func map<U>(transform: Value -> U) -> SignalProducer<U, Error> {\n\t\treturn lift { $0.map(transform) }\n\t}\n\n\t/// Map errors in the producer to a new error.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts an error object and returns a\n\t///                different error.\n\t///\n\t/// - returns: A producer that emits errors of new type.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func mapError<F>(transform: Error -> F) -> SignalProducer<Value, F> {\n\t\treturn lift { $0.mapError(transform) }\n\t}\n\n\t/// Preserve only the values of the producer that pass the given predicate.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts value and returns `Bool` denoting\n\t///                whether value has passed the test.\n\t///\n\t/// - returns: A producer that, when started, will send only the values\n\t///            passing the given predicate.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func filter(predicate: Value -> Bool) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.filter(predicate) }\n\t}\n\n\t/// Yield the first `count` values from the input producer.\n\t///\n\t/// - precondition: `count` must be non-negative number.\n\t///\n\t/// - parameters:\n\t///   - count: A number of values to take from the signal.\n\t///\n\t/// - returns: A producer that, when started, will yield the first `count`\n\t///            values from `self`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func take(count: Int) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.take(count) }\n\t}\n\n\t/// Yield an array of values when `self` completes.\n\t///\n\t/// - note: When `self` completes without collecting any value, it will send\n\t///         an empty array of values.\n\t///\n\t/// - returns: A producer that, when started, will yield an array of values\n\t///            when `self` completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func collect() -> SignalProducer<[Value], Error> {\n\t\treturn lift { $0.collect() }\n\t}\n\n\t/// Yield an array of values until it reaches a certain count.\n\t///\n\t/// - precondition: `count` should be greater than zero.\n\t///\n\t/// - note: When the count is reached the array is sent and the signal\n\t///         starts over yielding a new array of values.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not have `count` values. Alternatively, if were\n\t///         not collected any values will sent an empty array of values.\n\t///\n\t/// - returns: A producer that, when started, collects at most `count`\n\t///            values from `self`, forwards them as a single array and\n\t///            completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func collect(count count: Int) -> SignalProducer<[Value], Error> {\n\t\tprecondition(count > 0)\n\t\treturn lift { $0.collect(count: count) }\n\t}\n\n\t/// Yield an array of values based on a predicate which matches the values\n\t/// collected.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not match `predicate`. Alternatively, if were not\n\t///         collected any values will sent an empty array of values.\n\t///\n\t/// ````\n\t/// let (producer, observer) = SignalProducer<Int, NoError>.buffer(1)\n\t///\n\t/// producer\n\t///     .collect { values in values.reduce(0, combine: +) == 8 }\n\t///     .startWithNext { print($0) }\n\t///\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(3)\n\t/// observer.sendNext(4)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(5)\n\t/// observer.sendNext(6)\n\t/// observer.sendCompleted()\n\t///\n\t/// // Output:\n\t/// // [1, 3, 4]\n\t/// // [7, 1]\n\t/// // [5, 6]\n\t/// ````\n\t///\n\t/// - parameters:\n\t///   - predicate: Predicate to match when values should be sent (returning\n\t///                `true`) or alternatively when they should be collected\n\t///                (where it should return `false`). The most recent value\n\t///                (`next`) is included in `values` and will be the end of\n\t///                the current array of values if the predicate returns\n\t///                `true`.\n\t///\n\t/// - returns: A producer that, when started, collects values passing the\n\t///            predicate and, when `self` completes, forwards them as a\n\t///            single array and complets.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func collect(predicate: (values: [Value]) -> Bool) -> SignalProducer<[Value], Error> {\n\t\treturn lift { $0.collect(predicate) }\n\t}\n\n\t/// Yield an array of values based on a predicate which matches the values\n\t/// collected and the next value.\n\t///\n\t/// - note: When `self` completes any remaining values will be sent, the\n\t///         last array may not match `predicate`. Alternatively, if no\n\t///         values were collected an empty array will be sent.\n\t///\n\t/// ````\n\t/// let (producer, observer) = SignalProducer<Int, NoError>.buffer(1)\n\t///\n\t/// producer\n\t///     .collect { values, next in next == 7 }\n\t///     .startWithNext { print($0) }\n\t///\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(1)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(7)\n\t/// observer.sendNext(5)\n\t/// observer.sendNext(6)\n\t/// observer.sendCompleted()\n\t///\n\t/// // Output:\n\t/// // [1, 1]\n\t/// // [7]\n\t/// // [7, 5, 6]\n\t/// ````\n\t///\n\t/// - parameters:\n\t///   - predicate: Predicate to match when values should be sent (returning\n\t///                `true`) or alternatively when they should be collected\n\t///                (where it should return `false`). The most recent value\n\t///                (`next`) is not included in `values` and will be the\n\t///                start of the next array of values if the predicate\n\t///                returns `true`.\n\t///\n\t/// - returns: A signal that will yield an array of values based on a\n\t///            predicate which matches the values collected and the next\n\t///            value.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func collect(predicate: (values: [Value], next: Value) -> Bool) -> SignalProducer<[Value], Error> {\n\t\treturn lift { $0.collect(predicate) }\n\t}\n\n\t/// Forward all events onto the given scheduler, instead of whichever\n\t/// scheduler they originally arrived upon.\n\t///\n\t/// - parameters:\n\t///   - scheduler: A scheduler to deliver events on.\n\t///\n\t/// - returns: A producer that, when started, will yield `self` values on\n\t///            provided scheduler.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func observeOn(scheduler: SchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.observeOn(scheduler) }\n\t}\n\n\t/// Combine the latest value of the receiver with the latest value from the\n\t/// given producer.\n\t///\n\t/// - note: The returned producer will not send a value until both inputs \n\t///         have sent at least one value each. \n\t///\n\t/// - note: If either producer is interrupted, the returned producer will\n\t///         also be interrupted.\n\t///\n\t/// - parameters:\n\t///   - otherProducer: A producer to combine `self`'s value with.\n\t///\n\t/// - returns: A producer that, when started, will yield a tuple containing\n\t///            values of `self` and given producer.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func combineLatestWith<U>(otherProducer: SignalProducer<U, Error>) -> SignalProducer<(Value, U), Error> {\n\t\t// This should be the implementation of this method:\n\t\t// return liftRight(Signal.combineLatestWith)(otherProducer)\n\t\t//\n\t\t// However, due to a Swift miscompilation (with `-O`) we need to inline `liftRight` here.\n\t\t// See https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2751 for more details.\n\t\t//\n\t\t// This can be reverted once tests with -O don't crash. \n\n\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\touterDisposable.addDisposable(disposable)\n\n\t\t\t\totherProducer.startWithSignal { otherSignal, otherDisposable in\n\t\t\t\t\touterDisposable.addDisposable(otherDisposable)\n\n\t\t\t\t\tsignal.combineLatestWith(otherSignal).observe(observer)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Combine the latest value of the receiver with the latest value from\n\t/// the given signal.\n\t///\n\t/// - note: The returned producer will not send a value until both inputs\n\t///         have sent at least one value each. \n\t///\n\t/// - note: If either input is interrupted, the returned producer will also\n\t///         be interrupted.\n\t///\n\t/// - parameters:\n\t///   - otherSignal: A signal to combine `self`'s value with.\n\t///\n\t/// - returns: A producer that, when started, will yield a tuple containing\n\t///            values of `self` and given signal.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func combineLatestWith<U>(otherSignal: Signal<U, Error>) -> SignalProducer<(Value, U), Error> {\n\t\treturn lift(Signal.combineLatestWith)(otherSignal)\n\t}\n\n\t/// Delay `Next` and `Completed` events by the given interval, forwarding\n\t/// them on the given scheduler.\n\t///\n\t/// - note: `Failed` and `Interrupted` events are always scheduled\n\t///         immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: Interval to delay `Next` and `Completed` events by.\n\t///   - scheduler: A scheduler to deliver delayed events on.\n\t///\n\t/// - returns: A producer that, when started, will delay `Next` and\n\t///            `Completed` events and will yield them on given scheduler.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func delay(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.delay(interval, onScheduler: scheduler) }\n\t}\n\n\t/// Skip the first `count` values, then forward everything afterward.\n\t///\n\t/// - parameters:\n\t///   - count: A number of values to skip.\n\t///\n\t/// - returns:  A producer that, when started, will skip the first `count`\n\t///             values, then forward everything afterward.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skip(count: Int) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.skip(count) }\n\t}\n\n\t/// Treats all Events from the input producer as plain values, allowing them\n\t/// to be manipulated just like any other value.\n\t///\n\t/// In other words, this brings Events “into the monad.”\n\t///\n\t/// - note: When a Completed or Failed event is received, the resulting\n\t///         producer will send the Event itself and then complete. When an\n\t///         `Interrupted` event is received, the resulting producer will\n\t///         send the `Event` itself and then interrupt.\n\t///\n\t/// - returns: A producer that sends events as its values.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func materialize() -> SignalProducer<Event<Value, Error>, NoError> {\n\t\treturn lift { $0.materialize() }\n\t}\n\n\t/// Forward the latest value from `self` with the value from `sampler` as a\n\t/// tuple, only when `sampler` sends a `Next` event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`,\n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - sampler: A producer that will trigger the delivery of `Next` event\n\t///              from `self`.\n\t///\n\t/// - returns: A producer that will send values from `self` and `sampler`,\n\t///            sampled (possibly multiple times) by `sampler`, then complete\n\t///            once both input producers have completed, or interrupt if\n\t///            either input producer is interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func sampleWith<T>(sampler: SignalProducer<T, NoError>) -> SignalProducer<(Value, T), Error> {\n\t\treturn liftLeft(Signal.sampleWith)(sampler)\n\t}\n\t\n\t/// Forward the latest value from `self` with the value from `sampler` as a\n\t/// tuple, only when `sampler` sends a `Next` event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`,\n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - sampler: A signal that will trigger the delivery of `Next` event\n\t///              from `self`.\n\t///\n\t/// - returns: A producer that, when started, will send values from `self`\n\t///            and `sampler`, sampled (possibly multiple times) by\n\t///            `sampler`, then complete once both input producers have\n\t///            completed, or interrupt if either input producer is\n\t///            interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func sampleWith<T>(sampler: Signal<T, NoError>) -> SignalProducer<(Value, T), Error> {\n\t\treturn lift(Signal.sampleWith)(sampler)\n\t}\n\n\t/// Forward the latest value from `self` whenever `sampler` sends a `Next`\n\t/// event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`,\n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - sampler: A producer that will trigger the delivery of `Next` event\n\t///              from `self`.\n\t///\n\t/// - returns: A producer that, when started, will send values from `self`,\n\t///            sampled (possibly multiple times) by `sampler`, then complete\n\t///            once both input producers have completed, or interrupt if\n\t///            either input producer is interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func sampleOn(sampler: SignalProducer<(), NoError>) -> SignalProducer<Value, Error> {\n\t\treturn liftLeft(Signal.sampleOn)(sampler)\n\t}\n\n\t/// Forward the latest value from `self` whenever `sampler` sends a `Next`\n\t/// event.\n\t///\n\t/// - note: If `sampler` fires before a value has been observed on `self`,\n\t///         nothing happens.\n\t///\n\t/// - parameters:\n\t///   - trigger: A signal whose `Next` or `Completed` events will start the\n\t///              deliver of events on `self`.\n\t///\n\t/// - returns: A producer that will send values from `self`, sampled\n\t///            (possibly multiple times) by `sampler`, then complete once \n\t///            both inputs have completed, or interrupt if either input is\n\t///            interrupted.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func sampleOn(sampler: Signal<(), NoError>) -> SignalProducer<Value, Error> {\n\t\treturn lift(Signal.sampleOn)(sampler)\n\t}\n\n\t/// Forward events from `self` until `trigger` sends a `Next` or `Completed`\n\t/// event, at which point the returned producer will complete.\n\t///\n\t/// - parameters:\n\t///   - trigger: A producer whose `Next` or `Completed` events will stop the\n\t///              delivery of `Next` events from `self`.\n\t///\n\t/// - returns: A producer that will deliver events until `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeUntil(trigger: SignalProducer<(), NoError>) -> SignalProducer<Value, Error> {\n\t\t// This should be the implementation of this method:\n\t\t// return liftRight(Signal.takeUntil)(trigger)\n\t\t//\n\t\t// However, due to a Swift miscompilation (with `-O`) we need to inline\n\t\t// `liftRight` here.\n\t\t//\n\t\t// See https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2751 for\n\t\t// more details.\n\t\t//\n\t\t// This can be reverted once tests with -O work correctly.\n\t\treturn SignalProducer { observer, outerDisposable in\n\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\touterDisposable.addDisposable(disposable)\n\n\t\t\t\ttrigger.startWithSignal { triggerSignal, triggerDisposable in\n\t\t\t\t\touterDisposable.addDisposable(triggerDisposable)\n\n\t\t\t\t\tsignal.takeUntil(triggerSignal).observe(observer)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Forward events from `self` until `trigger` sends a Next or Completed\n\t/// event, at which point the returned producer will complete.\n\t///\n\t/// - parameters:\n\t///   - trigger: A signal whose `Next` or `Completed` events will stop the\n\t///              delivery of `Next` events from `self`.\n\t///\n\t/// - returns: A producer that will deliver events until `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeUntil(trigger: Signal<(), NoError>) -> SignalProducer<Value, Error> {\n\t\treturn lift(Signal.takeUntil)(trigger)\n\t}\n\n\t/// Do not forward any values from `self` until `trigger` sends a `Next`\n\t/// or `Completed`, at which point the returned producer behaves exactly\n\t/// like `producer`.\n\t///\n\t/// - parameters:\n\t///   - trigger: A producer whose `Next` or `Completed` events will start\n\t///              the deliver of events on `self`.\n\t///\n\t/// - returns: A producer that will deliver events once the `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skipUntil(trigger: SignalProducer<(), NoError>) -> SignalProducer<Value, Error> {\n\t\treturn liftRight(Signal.skipUntil)(trigger)\n\t}\n\t\n\t/// Do not forward any values from `self` until `trigger` sends a `Next`\n\t/// or `Completed`, at which point the returned signal behaves exactly like\n\t/// `signal`.\n\t///\n\t/// - parameters:\n\t///   - trigger: A signal whose `Next` or `Completed` events will start the\n\t///              deliver of events on `self`.\n\t///\n\t/// - returns: A producer that will deliver events once the `trigger` sends\n\t///            `Next` or `Completed` events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skipUntil(trigger: Signal<(), NoError>) -> SignalProducer<Value, Error> {\n\t\treturn lift(Signal.skipUntil)(trigger)\n\t}\n\t\n\t/// Forward events from `self` with history: values of the returned producer\n\t/// are a tuple whose first member is the previous value and whose second\n\t/// member is the current value. `initial` is supplied as the first member\n\t/// when `self` sends its first value.\n\t///\n\t/// - parameters:\n\t///   - initial: A value that will be combined with the first value sent by\n\t///              `self`.\n\t///\n\t/// - returns: A producer that sends tuples that contain previous and\n\t///            current sent values of `self`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func combinePrevious(initial: Value) -> SignalProducer<(Value, Value), Error> {\n\t\treturn lift { $0.combinePrevious(initial) }\n\t}\n\n\t/// Send only the final value and then immediately completes.\n\t///\n\t/// - parameters:\n\t///   - initial: Initial value for the accumulator.\n\t///   - combine: A closure that accepts accumulator and sent value of\n\t///              `self`.\n\t///\n\t/// - returns: A producer that sends accumulated value after `self`\n\t///             completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func reduce<U>(initial: U, _ combine: (U, Value) -> U) -> SignalProducer<U, Error> {\n\t\treturn lift { $0.reduce(initial, combine) }\n\t}\n\n\t/// Aggregate `self`'s values into a single combined value. When `self`\n\t/// emits its first value, `combine` is invoked with `initial` as the first\n\t/// argument and that emitted value as the second argument. The result is\n\t/// emitted from the producer returned from `scan`. That result is then\n\t/// passed to `combine` as the first argument when the next value is\n\t/// emitted, and so on.\n\t///\n\t/// - parameters:\n\t///   - initial: Initial value for the accumulator.\n\t///   - combine: A closure that accepts accumulator and sent value of\n\t///              `self`.\n\t///\n\t/// - returns: A producer that sends accumulated value each time `self`\n\t///            emits own value.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func scan<U>(initial: U, _ combine: (U, Value) -> U) -> SignalProducer<U, Error> {\n\t\treturn lift { $0.scan(initial, combine) }\n\t}\n\n\t/// Forward only those values from `self` which do not pass `isRepeat` with\n\t/// respect to the previous value.\n\t///\n\t/// - note: The first value is always forwarded.\n\t///\n\t/// - returns: A producer that does not send two equal values sequentially.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skipRepeats(isRepeat: (Value, Value) -> Bool) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.skipRepeats(isRepeat) }\n\t}\n\n\t/// Do not forward any values from `self` until `predicate` returns false,\n\t/// at which point the returned producer behaves exactly like `self`.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts a value and returns whether `self`\n\t///                should still not forward that value to a `producer`.\n\t///\n\t/// - returns: A producer that sends only forwarded values from `self`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skipWhile(predicate: Value -> Bool) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.skipWhile(predicate) }\n\t}\n\n\t/// Forward events from `self` until `replacement` begins sending events.\n\t///\n\t/// - parameters:\n\t///   - replacement: A producer to wait to wait for values from and start\n\t///                  sending them as a replacement to `self`'s values.\n\t///\n\t/// - returns: A producer which passes through `Next`, `Failed`, and\n\t///            `Interrupted` events from `self` until `replacement` sends an \n\t///            event, at which point the returned producer will send that\n\t///            event and switch to passing through events from `replacement` \n\t///            instead, regardless of whether `self` has sent events\n\t///            already.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeUntilReplacement(replacement: SignalProducer<Value, Error>) -> SignalProducer<Value, Error> {\n\t\treturn liftRight(Signal.takeUntilReplacement)(replacement)\n\t}\n\n\t/// Forwards events from `self` until `replacement` begins sending events.\n\t///\n\t/// - parameters:\n\t///   - replacement: A signal to wait to wait for values from and start\n\t///                  sending them as a replacement to `self`'s values.\n\t///\n\t/// - returns: A producer which passes through `Next`, `Failed`, and\n\t///            `Interrupted` events from `self` until `replacement` sends an\n\t///            event, at which point the returned producer will send that\n\t///            event and switch to passing through events from `replacement`\n\t///            instead, regardless of whether `self` has sent events\n\t///            already.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeUntilReplacement(replacement: Signal<Value, Error>) -> SignalProducer<Value, Error> {\n\t\treturn lift(Signal.takeUntilReplacement)(replacement)\n\t}\n\n\t/// Wait until `self` completes and then forward the final `count` values\n\t/// on the returned producer.\n\t///\n\t/// - parameters:\n\t///   - count: Number of last events to send after `self` completes.\n\t///\n\t/// - returns: A producer that receives up to `count` values from `self`\n\t///            after `self` completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeLast(count: Int) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.takeLast(count) }\n\t}\n\n\t/// Forward any values from `self` until `predicate` returns false, at which\n\t/// point the returned producer will complete.\n\t///\n\t/// - parameters:\n\t///   - predicate: A closure that accepts value and returns `Bool` value\n\t///                whether `self` should forward it to `signal` and continue\n\t///                sending other events.\n\t///\n\t/// - returns: A producer that sends events until the values sent by `self`\n\t///            pass the given `predicate`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func takeWhile(predicate: Value -> Bool) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.takeWhile(predicate) }\n\t}\n\n\t/// Zip elements of two producers into pairs. The elements of any Nth pair\n\t/// are the Nth elements of the two input producers.\n\t///\n\t/// - parameters:\n\t///   - otherProducer: A producer to zip values with.\n\t///\n\t/// - returns: A producer that sends tuples of `self` and `otherProducer`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func zipWith<U>(otherProducer: SignalProducer<U, Error>) -> SignalProducer<(Value, U), Error> {\n\t\treturn liftRight(Signal.zipWith)(otherProducer)\n\t}\n\n\t/// Zip elements of this producer and a signal into pairs. The elements of\n\t/// any Nth pair are the Nth elements of the two.\n\t///\n\t/// - parameters:\n\t///   - otherSignal: A signal to zip values with.\n\t///\n\t/// - returns: A producer that sends tuples of `self` and `otherSignal`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func zipWith<U>(otherSignal: Signal<U, Error>) -> SignalProducer<(Value, U), Error> {\n\t\treturn lift(Signal.zipWith)(otherSignal)\n\t}\n\n\t/// Apply `operation` to values from `self` with `Success`ful results\n\t/// forwarded on the returned producer and `Failure`s sent as `Failed`\n\t/// events.\n\t///\n\t/// - parameters:\n\t///   - operation: A closure that accepts a value and returns a `Result`.\n\t///\n\t/// - returns: A producer that receives `Success`ful `Result` as `Next`\n\t///            event and `Failure` as `Failed` event.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func attempt(operation: Value -> Result<(), Error>) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.attempt(operation) }\n\t}\n\n\t/// Apply `operation` to values from `self` with `Success`ful results\n\t/// mapped on the returned producer and `Failure`s sent as `Failed` events.\n\t///\n\t/// - parameters:\n\t///   - operation: A closure that accepts a value and returns a result of\n\t///                a mapped value as `Success`.\n\t///\n\t/// - returns: A producer that sends mapped values from `self` if returned\n\t///            `Result` is `Success`ful, `Failed` events otherwise.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func attemptMap<U>(operation: Value -> Result<U, Error>) -> SignalProducer<U, Error> {\n\t\treturn lift { $0.attemptMap(operation) }\n\t}\n\n\t/// Throttle values sent by the receiver, so that at least `interval`\n\t/// seconds pass between each, then forwards them on the given scheduler.\n\t///\n\t/// - note: If multiple values are received before the interval has elapsed,\n\t///         the latest value is the one that will be passed on.\n\t///\n\t/// - norw: If `self` terminates while a value is being throttled, that\n\t///         value will be discarded and the returned producer will terminate\n\t///         immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: Number of seconds to wait between sent values.\n\t///   - scheduler: A scheduler to deliver events on.\n\t///\n\t/// - returns: A producer that sends values at least `interval` seconds\n\t///            appart on a given scheduler.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func throttle(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.throttle(interval, onScheduler: scheduler) }\n\t}\n\n\t/// Debounce values sent by the receiver, such that at least `interval`\n\t/// seconds pass after the receiver has last sent a value, then\n\t/// forward the latest value on the given scheduler.\n\t///\n\t/// - note: If multiple values are received before the interval has elapsed,\n\t///         the latest value is the one that will be passed on.\n\t///\n\t/// - note: If `self` terminates while a value is being debounced,\n\t///         that value will be discarded and the returned producer will\n\t///         terminate immediately.\n\t///\n\t/// - parameters:\n\t///   - interval: A number of seconds to wait before sending a value.\n\t///   - scheduler: A scheduler to send values on.\n\t///\n\t/// - returns: A producer that sends values that are sent from `self` at\n\t///            least `interval` seconds apart.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func debounce(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.debounce(interval, onScheduler: scheduler) }\n\t}\n\n\t/// Forward events from `self` until `interval`. Then if producer isn't\n\t/// completed yet, fails with `error` on `scheduler`.\n\t///\n\t/// - note: If the interval is 0, the timeout will be scheduled immediately.\n\t///         The producer must complete synchronously (or on a faster \n\t///         scheduler) to avoid the timeout.\n\t///\n\t/// - parameters:\n\t///   - error: Error to send with `Failed` event if `self` is not completed\n\t///            when `interval` passes.\n\t///   - interval: Number of seconds to wait for `self` to complete.\n\t///   - scheudler: A scheduler to deliver error on.\n\t///\n\t/// - returns: A producer that sends events for at most `interval` seconds,\n\t///            then, if not `Completed` - sends `error` with `Failed` event\n\t///            on `scheduler`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func timeoutWithError(error: Error, afterInterval interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.timeoutWithError(error, afterInterval: interval, onScheduler: scheduler) }\n\t}\n}\n\nextension SignalProducerType where Value: OptionalType {\n\t/// Unwraps non-`nil` values and forwards them on the returned signal, `nil`\n\t/// values are dropped.\n\t///\n\t/// - returns: A producer that sends only non-nil values.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func ignoreNil() -> SignalProducer<Value.Wrapped, Error> {\n\t\treturn lift { $0.ignoreNil() }\n\t}\n}\n\nextension SignalProducerType where Value: EventType, Error == NoError {\n\t/// The inverse of materialize(), this will translate a producer of `Event`\n\t/// _values_ into a producer of those events themselves.\n\t///\n\t/// - returns: A producer that sends values carried by `self` events.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func dematerialize() -> SignalProducer<Value.Value, Value.Error> {\n\t\treturn lift { $0.dematerialize() }\n\t}\n}\n\nextension SignalProducerType where Error == NoError {\n\t/// Promote a producer that does not generate failures into one that can.\n\t///\n\t/// - note: This does not actually cause failers to be generated for the\n\t///         given producer, but makes it easier to combine with other\n\t///         producers that may fail; for example, with operators like\n\t///         `combineLatestWith`, `zipWith`, `flatten`, etc.\n\t///\n\t/// - parameters:\n\t///   - _ An `ErrorType`.\n\t///\n\t/// - returns: A producer that has an instantiatable `ErrorType`.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func promoteErrors<F: ErrorType>(_: F.Type) -> SignalProducer<Value, F> {\n\t\treturn lift { $0.promoteErrors(F) }\n\t}\n}\n\nextension SignalProducerType where Value: Equatable {\n\t/// Forward only those values from `self` which are not duplicates of the\n\t/// immedately preceding value.\n\t///\n\t/// - note: The first value is always forwarded.\n\t///\n\t/// - returns: A producer that does not send two equal values sequentially.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func skipRepeats() -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.skipRepeats() }\n\t}\n}\n\nextension SignalProducerType {\n\t/// Forward only those values from `self` that have unique identities across\n\t/// the set of all values that have been seen.\n\t///\n\t/// - note: This causes the identities to be retained to check for \n\t///         uniqueness.\n\t///\n\t/// - parameters:\n\t///   - transform: A closure that accepts a value and returns identity\n\t///                value.\n\t///\n\t/// - returns: A producer that sends unique values during its lifetime.\n\t@warn_unused_result(message=\"Did you forget to call `observe` on the signal?\")\n\tpublic func uniqueValues<Identity: Hashable>(transform: Value -> Identity) -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.uniqueValues(transform) }\n\t}\n}\n\nextension SignalProducerType where Value: Hashable {\n\t/// Forward only those values from `self` that are unique across the set of\n\t/// all values that have been seen.\n\t///\n\t/// - note: This causes the values to be retained to check for uniqueness.\n\t///         Providing a function that returns a unique value for each sent\n\t///         value can help you reduce the memory footprint.\n\t///\n\t/// - returns: A producer that sends unique values during its lifetime.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func uniqueValues() -> SignalProducer<Value, Error> {\n\t\treturn lift { $0.uniqueValues() }\n\t}\n}\n\n/// Create a repeating timer of the given interval, with a reasonable default\n/// leeway, sending updates on the given scheduler.\n///\n/// - note: This timer will never complete naturally, so all invocations of\n///         `start()` must be disposed to avoid leaks.\n///\n/// - precondition: Interval must be non-negative number.\n///\n/// - parameters:\n///   - interval: An interval between invocations.\n///   - scheduler: A scheduler to deliver events on.\n///\n/// - returns: A producer that sends `NSDate` values every `interval` seconds.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func timer(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType) -> SignalProducer<NSDate, NoError> {\n\t// Apple's \"Power Efficiency Guide for Mac Apps\" recommends a leeway of\n\t// at least 10% of the timer interval.\n\treturn timer(interval, onScheduler: scheduler, withLeeway: interval * 0.1)\n}\n\n/// Creates a repeating timer of the given interval, sending updates on the\n/// given scheduler.\n///\n/// - note: This timer will never complete naturally, so all invocations of\n///         `start()` must be disposed to avoid leaks.\n///\n/// - precondition: Interval must be non-negative number.\n///\n/// - precondition: Leeway must be non-negative number.\n///\n/// - parameters:\n///   - interval: An interval between invocations.\n///   - scheduler: A scheduler to deliver events on.\n///   - leeway: Interval leeway. Apple's \"Power Efficiency Guide for Mac Apps\"\n///             recommends a leeway of at least 10% of the timer interval.\n///\n/// - returns: A producer that sends `NSDate` values every `interval` seconds.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func timer(interval: NSTimeInterval, onScheduler scheduler: DateSchedulerType, withLeeway leeway: NSTimeInterval) -> SignalProducer<NSDate, NoError> {\n\tprecondition(interval >= 0)\n\tprecondition(leeway >= 0)\n\n\treturn SignalProducer { observer, compositeDisposable in\n\t\tcompositeDisposable += scheduler.scheduleAfter(scheduler.currentDate.dateByAddingTimeInterval(interval), repeatingEvery: interval, withLeeway: leeway) {\n\t\t\tobserver.sendNext(scheduler.currentDate)\n\t\t}\n\t}\n}\n\nextension SignalProducerType {\n\t/// Injects side effects to be performed upon the specified producer events.\n\t///\n\t/// - parameters:\n\t///   - started: A closrure that is invoked when producer is started.\n\t///   - event: A closure that accepts an event and is invoked on every\n\t///            received event.\n\t///   - failed: A closure that accepts error object and is invoked for\n\t///             `Failed` event.\n\t///   - completed: A closure that is invoked for `Completed` event.\n\t///   - interrupted: A closure that is invoked for `Interrupted` event.\n\t///   - terminated: A closure that is invoked for any terminating event.\n\t///   - disposed: A closure added as disposable when signal completes.\n\t///   - next: A closure that accepts a value from `Next` event.\n\t///\n\t/// - returns: A producer with attached side-effects for given event cases.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func on(started started: (() -> Void)? = nil, event: (Event<Value, Error> -> Void)? = nil, failed: (Error -> Void)? = nil, completed: (() -> Void)? = nil, interrupted: (() -> Void)? = nil, terminated: (() -> Void)? = nil, disposed: (() -> Void)? = nil, next: (Value -> Void)? = nil) -> SignalProducer<Value, Error> {\n\t\treturn SignalProducer { observer, compositeDisposable in\n\t\t\tstarted?()\n\t\t\tself.startWithSignal { signal, disposable in\n\t\t\t\tcompositeDisposable += disposable\n\t\t\t\tcompositeDisposable += signal\n\t\t\t\t\t.on(\n\t\t\t\t\t\tevent: event,\n\t\t\t\t\t\tfailed: failed,\n\t\t\t\t\t\tcompleted: completed,\n\t\t\t\t\t\tinterrupted: interrupted,\n\t\t\t\t\t\tterminated: terminated,\n\t\t\t\t\t\tdisposed: disposed,\n\t\t\t\t\t\tnext: next\n\t\t\t\t\t)\n\t\t\t\t\t.observe(observer)\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Start the returned producer on the given `Scheduler`.\n\t///\n\t/// - note: This implies that any side effects embedded in the producer will\n\t///         be performed on the given scheduler as well.\n\t///\n\t/// - note: Events may still be sent upon other schedulers — this merely\n\t///         affects where the `start()` method is run.\n\t///\n\t/// - parameters:\n\t///   - scheduler: A scheduler to deliver events on.\n\t///\n\t/// - returns: A producer that will deliver events on given `scheduler` when\n\t///            started.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func startOn(scheduler: SchedulerType) -> SignalProducer<Value, Error> {\n\t\treturn SignalProducer { observer, compositeDisposable in\n\t\t\tcompositeDisposable += scheduler.schedule {\n\t\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\t\tcompositeDisposable.addDisposable(signalDisposable)\n\t\t\t\t\tsignal.observe(observer)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>) -> SignalProducer<(A, B), Error> {\n\treturn a.combineLatestWith(b)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>) -> SignalProducer<(A, B, C), Error> {\n\treturn combineLatest(a, b)\n\t\t.combineLatestWith(c)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>) -> SignalProducer<(A, B, C, D), Error> {\n\treturn combineLatest(a, b, c)\n\t\t.combineLatestWith(d)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>) -> SignalProducer<(A, B, C, D, E), Error> {\n\treturn combineLatest(a, b, c, d)\n\t\t.combineLatestWith(e)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, F, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>) -> SignalProducer<(A, B, C, D, E, F), Error> {\n\treturn combineLatest(a, b, c, d, e)\n\t\t.combineLatestWith(f)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, F, G, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>) -> SignalProducer<(A, B, C, D, E, F, G), Error> {\n\treturn combineLatest(a, b, c, d, e, f)\n\t\t.combineLatestWith(g)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g)\n\t\t.combineLatestWith(h)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, I, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>, _ i: SignalProducer<I, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H, I), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g, h)\n\t\t.combineLatestWith(i)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<A, B, C, D, E, F, G, H, I, J, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>, _ i: SignalProducer<I, Error>, _ j: SignalProducer<J, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H, I, J), Error> {\n\treturn combineLatest(a, b, c, d, e, f, g, h, i)\n\t\t.combineLatestWith(j)\n\t\t.map(repack)\n}\n\n/// Combines the values of all the given producers, in the manner described by\n/// `combineLatestWith`. Will return an empty `SignalProducer` if the sequence\n/// is empty.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func combineLatest<S: SequenceType, Value, Error where S.Generator.Element == SignalProducer<Value, Error>>(producers: S) -> SignalProducer<[Value], Error> {\n\tvar generator = producers.generate()\n\tif let first = generator.next() {\n\t\tlet initial = first.map { [$0] }\n\t\treturn GeneratorSequence(generator).reduce(initial) { producer, next in\n\t\t\tproducer.combineLatestWith(next).map { $0.0 + [$0.1] }\n\t\t}\n\t}\n\t\n\treturn .empty\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>) -> SignalProducer<(A, B), Error> {\n\treturn a.zipWith(b)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>) -> SignalProducer<(A, B, C), Error> {\n\treturn zip(a, b)\n\t\t.zipWith(c)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>) -> SignalProducer<(A, B, C, D), Error> {\n\treturn zip(a, b, c)\n\t\t.zipWith(d)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>) -> SignalProducer<(A, B, C, D, E), Error> {\n\treturn zip(a, b, c, d)\n\t\t.zipWith(e)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, F, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>) -> SignalProducer<(A, B, C, D, E, F), Error> {\n\treturn zip(a, b, c, d, e)\n\t\t.zipWith(f)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, F, G, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>) -> SignalProducer<(A, B, C, D, E, F, G), Error> {\n\treturn zip(a, b, c, d, e, f)\n\t\t.zipWith(g)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, F, G, H, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H), Error> {\n\treturn zip(a, b, c, d, e, f, g)\n\t\t.zipWith(h)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, F, G, H, I, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>, _ i: SignalProducer<I, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H, I), Error> {\n\treturn zip(a, b, c, d, e, f, g, h)\n\t\t.zipWith(i)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<A, B, C, D, E, F, G, H, I, J, Error>(a: SignalProducer<A, Error>, _ b: SignalProducer<B, Error>, _ c: SignalProducer<C, Error>, _ d: SignalProducer<D, Error>, _ e: SignalProducer<E, Error>, _ f: SignalProducer<F, Error>, _ g: SignalProducer<G, Error>, _ h: SignalProducer<H, Error>, _ i: SignalProducer<I, Error>, _ j: SignalProducer<J, Error>) -> SignalProducer<(A, B, C, D, E, F, G, H, I, J), Error> {\n\treturn zip(a, b, c, d, e, f, g, h, i)\n\t\t.zipWith(j)\n\t\t.map(repack)\n}\n\n/// Zips the values of all the given producers, in the manner described by\n/// `zipWith`. Will return an empty `SignalProducer` if the sequence is empty.\n@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\npublic func zip<S: SequenceType, Value, Error where S.Generator.Element == SignalProducer<Value, Error>>(producers: S) -> SignalProducer<[Value], Error> {\n\tvar generator = producers.generate()\n\tif let first = generator.next() {\n\t\tlet initial = first.map { [$0] }\n\t\treturn GeneratorSequence(generator).reduce(initial) { producer, next in\n\t\t\tproducer.zipWith(next).map { $0.0 + [$0.1] }\n\t\t}\n\t}\n\n\treturn .empty\n}\n\nextension SignalProducerType {\n\t/// Repeat `self` a total of `count` times. In other words, start producer\n\t/// `count` number of times, each one after previously started producer\n\t/// completes.\n\t///\n\t/// - note: Repeating `1` time results in an equivalent signal producer.\n\t///\n\t/// - note: Repeating `0` times results in a producer that instantly\n\t///         completes.\n\t///\n\t/// - parameters:\n\t///   - count: Number of repetitions.\n\t///\n\t/// - returns: A signal producer start sequentially starts `self` after\n\t///            previously started producer completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func times(count: Int) -> SignalProducer<Value, Error> {\n\t\tprecondition(count >= 0)\n\n\t\tif count == 0 {\n\t\t\treturn .empty\n\t\t} else if count == 1 {\n\t\t\treturn producer\n\t\t}\n\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tlet serialDisposable = SerialDisposable()\n\t\t\tdisposable.addDisposable(serialDisposable)\n\n\t\t\tfunc iterate(current: Int) {\n\t\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\t\tserialDisposable.innerDisposable = signalDisposable\n\n\t\t\t\t\tsignal.observe { event in\n\t\t\t\t\t\tif case .Completed = event {\n\t\t\t\t\t\t\tlet remainingTimes = current - 1\n\t\t\t\t\t\t\tif remainingTimes > 0 {\n\t\t\t\t\t\t\t\titerate(remainingTimes)\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tobserver.action(event)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\titerate(count)\n\t\t}\n\t}\n\n\t/// Ignore failures up to `count` times.\n\t///\n\t/// - precondition: `count` must be non-negative integer.\n\t///\n\t/// - parameters:\n\t///   - count: Number of retries.\n\t///\n\t/// - returns: A signal producer that restarts up to `count` times.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func retry(count: Int) -> SignalProducer<Value, Error> {\n\t\tprecondition(count >= 0)\n\n\t\tif count == 0 {\n\t\t\treturn producer\n\t\t} else {\n\t\t\treturn flatMapError { _ in\n\t\t\t\tself.retry(count - 1)\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Wait for completion of `self`, *then* forward all events from\n\t/// `replacement`. Any failure or interruption sent from `self` is\n\t/// forwarded immediately, in which case `replacement` will not be started,\n\t/// and none of its events will be be forwarded. \n\t///\n\t/// - note: All values sent from `self` are ignored.\n\t///\n\t/// - parameters:\n\t///   - replacement: A producer to start when `self` completes.\n\t///\n\t/// - returns: A producer that sends events from `self` and then from\n\t///            `replacement` when `self` completes.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func then<U>(replacement: SignalProducer<U, Error>) -> SignalProducer<U, Error> {\n\t\treturn SignalProducer<U, Error> { observer, observerDisposable in\n\t\t\tself.startWithSignal { signal, signalDisposable in\n\t\t\t\tobserverDisposable.addDisposable(signalDisposable)\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Failed(error):\n\t\t\t\t\t\tobserver.sendFailed(error)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tobserverDisposable += replacement.start(observer)\n\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t\tcase .Next:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/// Start the producer, then block, waiting for the first value.\n\t///\n\t/// When a single value or error is sent, the returned `Result` will\n\t/// represent those cases. However, when no values are sent, `nil` will be\n\t/// returned.\n\t///\n\t/// - returns: Result when single `Next` or `Failed` event is received.\n\t///            `nil` when no events are received.\n\t@warn_unused_result(message=\"Did you forget to check the result?\")\n\tpublic func first() -> Result<Value, Error>? {\n\t\treturn take(1).single()\n\t}\n\n\t/// Start the producer, then block, waiting for events: Next and\n\t/// Completed.\n\t///\n\t/// When a single value or error is sent, the returned `Result` will\n\t/// represent those cases. However, when no values are sent, or when more\n\t/// than one value is sent, `nil` will be returned.\n\t///\n\t/// - returns: Result when single `Next` or `Failed` event is received. \n\t///            `nil` when 0 or more than 1 events are received.\n\t@warn_unused_result(message=\"Did you forget to check the result?\")\n\tpublic func single() -> Result<Value, Error>? {\n\t\tlet semaphore = dispatch_semaphore_create(0)\n\t\tvar result: Result<Value, Error>?\n\n\t\ttake(2).start { event in\n\t\t\tswitch event {\n\t\t\tcase let .Next(value):\n\t\t\t\tif result != nil {\n\t\t\t\t\t// Move into failure state after recieving another value.\n\t\t\t\t\tresult = nil\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tresult = .Success(value)\n\t\t\tcase let .Failed(error):\n\t\t\t\tresult = .Failure(error)\n\t\t\t\tdispatch_semaphore_signal(semaphore)\n\t\t\tcase .Completed, .Interrupted:\n\t\t\t\tdispatch_semaphore_signal(semaphore)\n\t\t\t}\n\t\t}\n\t\t\n\t\tdispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER)\n\t\treturn result\n\t}\n\n\t/// Start the producer, then block, waiting for the last value.\n\t///\n\t/// When a single value or error is sent, the returned `Result` will\n\t/// represent those cases. However, when no values are sent, `nil` will be\n\t/// returned.\n\t///\n\t/// - returns: Result when single `Next` or `Failed` event is received.\n\t///            `nil` when no events are received.\n\t@warn_unused_result(message=\"Did you forget to check the result?\")\n\tpublic func last() -> Result<Value, Error>? {\n\t\treturn takeLast(1).single()\n\t}\n\n\t/// Starts the producer, then blocks, waiting for completion.\n\t///\n\t/// When a completion or error is sent, the returned `Result` will represent\n\t/// those cases.\n\t///\n\t/// - returns: Result when single `Completion` or `Failed` event is \n\t///            received.\n\t@warn_unused_result(message=\"Did you forget to check the result?\")\n\tpublic func wait() -> Result<(), Error> {\n\t\treturn then(SignalProducer<(), Error>(value: ())).last() ?? .Success(())\n\t}\n\n\t/// Creates a new `SignalProducer` that will multicast values emitted by\n\t/// the underlying producer, up to `capacity`.\n\t/// This means that all clients of this `SignalProducer` will see the same\n\t/// version of the emitted values/errors.\n\t///\n\t/// The underlying `SignalProducer` will not be started until `self` is\n\t/// started for the first time. When subscribing to this producer, all\n\t/// previous values (up to `capacity`) will be emitted, followed by any new\n\t/// values.\n\t///\n\t/// If you find yourself needing *the current value* (the last buffered\n\t/// value) you should consider using `PropertyType` instead, which, unlike\n\t/// this operator, will guarantee at compile time that there's always a\n\t/// buffered value. This operator is not recommended in most cases, as it\n\t/// will introduce an implicit relationship between the original client and\n\t/// the rest, so consider alternatives like `PropertyType`, or representing\n\t/// your stream using a `Signal` instead.\n\t///\n\t/// This operator is only recommended when you absolutely need to introduce\n\t/// a layer of caching in front of another `SignalProducer`.\n\t///\n\t/// - note: This operator has the same semantics as `SignalProducer.buffer`.\n\t///\n\t/// - precondtion: `capacity` must be non-negative integer.\n\t///\n\t/// - parameters:\n\t///   - capcity: Number of values to hold.\n\t///\n\t/// - returns: A caching producer that will hold up to last `capacity`\n\t///            values.\n\t@warn_unused_result(message=\"Did you forget to call `start` on the producer?\")\n\tpublic func replayLazily(capacity: Int) -> SignalProducer<Value, Error> {\n\t\tprecondition(capacity >= 0, \"Invalid capacity: \\(capacity)\")\n\n\t\tvar producer: SignalProducer<Value, Error>?\n\t\tvar producerObserver: SignalProducer<Value, Error>.ProducedSignal.Observer?\n\n\t\tlet lock = NSLock()\n\t\tlock.name = \"org.reactivecocoa.ReactiveCocoa.SignalProducer.replayLazily\"\n\n\t\t// This will go \"out of scope\" when the returned `SignalProducer` goes\n\t\t// out of scope. This lets us know when we're supposed to dispose the\n\t\t// underlying producer. This is necessary because `struct`s don't have\n\t\t// `deinit`.\n\t\tlet token = DeallocationToken()\n\n\t\treturn SignalProducer { observer, disposable in\n\t\t\tvar token: DeallocationToken? = token\n\t\t\tlet initializedProducer: SignalProducer<Value, Error>\n\t\t\tlet initializedObserver: SignalProducer<Value, Error>.ProducedSignal.Observer\n\t\t\tlet shouldStartUnderlyingProducer: Bool\n\n\t\t\tlock.lock()\n\t\t\tif let producer = producer, producerObserver = producerObserver {\n\t\t\t\t(initializedProducer, initializedObserver) = (producer, producerObserver)\n\t\t\t\tshouldStartUnderlyingProducer = false\n\t\t\t} else {\n\t\t\t\tlet (producerTemp, observerTemp) = SignalProducer<Value, Error>.buffer(capacity)\n\n\t\t\t\t(producer, producerObserver) = (producerTemp, observerTemp)\n\t\t\t\t(initializedProducer, initializedObserver) = (producerTemp, observerTemp)\n\t\t\t\tshouldStartUnderlyingProducer = true\n\t\t\t}\n\t\t\tlock.unlock()\n\n\t\t\t// subscribe `observer` before starting the underlying producer.\n\t\t\tdisposable += initializedProducer.start(observer)\n\t\t\tdisposable += {\n\t\t\t\t// Don't dispose of the original producer until all observers\n\t\t\t\t// have terminated.\n\t\t\t\ttoken = nil\n\t\t\t}\n\n\t\t\tif shouldStartUnderlyingProducer {\n\t\t\t\tself.takeUntil(token!.deallocSignal)\n\t\t\t\t\t.start(initializedObserver)\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate final class DeallocationToken {\n\tlet (deallocSignal, observer) = Signal<(), NoError>.pipe()\n\n\tdeinit {\n\t\tobserver.sendCompleted()\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa/Swift/TupleExtensions.swift",
    "content": "//\n//  TupleExtensions.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-12-20.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\n/// Adds a value into an N-tuple, returning an (N+1)-tuple.\n///\n/// Supports creating tuples up to 10 elements long.\ninternal func repack<A, B, C>(t: (A, B), value: C) -> (A, B, C) {\n\treturn (t.0, t.1, value)\n}\n\ninternal func repack<A, B, C, D>(t: (A, B, C), value: D) -> (A, B, C, D) {\n\treturn (t.0, t.1, t.2, value)\n}\n\ninternal func repack<A, B, C, D, E>(t: (A, B, C, D), value: E) -> (A, B, C, D, E) {\n\treturn (t.0, t.1, t.2, t.3, value)\n}\n\ninternal func repack<A, B, C, D, E, F>(t: (A, B, C, D, E), value: F) -> (A, B, C, D, E, F) {\n\treturn (t.0, t.1, t.2, t.3, t.4, value)\n}\n\ninternal func repack<A, B, C, D, E, F, G>(t: (A, B, C, D, E, F), value: G) -> (A, B, C, D, E, F, G) {\n\treturn (t.0, t.1, t.2, t.3, t.4, t.5, value)\n}\n\ninternal func repack<A, B, C, D, E, F, G, H>(t: (A, B, C, D, E, F, G), value: H) -> (A, B, C, D, E, F, G, H) {\n\treturn (t.0, t.1, t.2, t.3, t.4, t.5, t.6, value)\n}\n\ninternal func repack<A, B, C, D, E, F, G, H, I>(t: (A, B, C, D, E, F, G, H), value: I) -> (A, B, C, D, E, F, G, H, I) {\n\treturn (t.0, t.1, t.2, t.3, t.4, t.5, t.6, t.7, value)\n}\n\ninternal func repack<A, B, C, D, E, F, G, H, I, J>(t: (A, B, C, D, E, F, G, H, I), value: J) -> (A, B, C, D, E, F, G, H, I, J) {\n\treturn (t.0, t.1, t.2, t.3, t.4, t.5, t.6, t.7, t.8, value)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.playground/Pages/Sandbox.xcplaygroundpage/Contents.swift",
    "content": "/*:\n > # IMPORTANT: To use `ReactiveCocoa.playground`, please:\n \n 1. Retrieve the project dependencies using one of the following terminal commands from the ReactiveCocoa project root directory:\n - `script/bootstrap`\n **OR**, if you have [Carthage](https://github.com/Carthage/Carthage) installed\n - `carthage checkout`\n 1. Open `ReactiveCocoa.xcworkspace`\n 1. Build `Result-Mac` scheme\n 1. Build `ReactiveCocoa-Mac` scheme\n 1. Finally open the `ReactiveCocoa.playground`\n 1. Choose `View > Show Debug Area`\n */\n\nimport Result\nimport ReactiveCocoa\nimport Foundation\n\n/*:\n ## Sandbox\n \n A place where you can build your sand castles 🏖.\n*/\n\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.playground/Pages/Signal.xcplaygroundpage/Contents.swift",
    "content": "/*:\n > # IMPORTANT: To use `ReactiveCocoa.playground`, please:\n \n 1. Retrieve the project dependencies using one of the following terminal commands from the ReactiveCocoa project root directory:\n    - `script/bootstrap`\n    **OR**, if you have [Carthage](https://github.com/Carthage/Carthage) installed\n    - `carthage checkout`\n 1. Open `ReactiveCocoa.xcworkspace`\n 1. Build `Result-Mac` scheme \n 1. Build `ReactiveCocoa-Mac` scheme\n 1. Finally open the `ReactiveCocoa.playground`\n 1. Choose `View > Show Debug Area`\n */\n\nimport Result\nimport ReactiveCocoa\nimport Foundation\n\n/*:\n ## Signal\n \n A **signal**, represented by the [`Signal`](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/master/ReactiveCocoa/Swift/Signal.swift) type, is any series of [`Event`](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/master/ReactiveCocoa/Swift/Event.swift) values\n over time that can be observed.\n \n Signals are generally used to represent event streams that are already “in progress”,\n like notifications, user input, etc. As work is performed or data is received,\n events are _sent_ on the signal, which pushes them out to any observers.\n All observers see the events at the same time.\n \n Users must observe a signal in order to access its events.\n Observing a signal does not trigger any side effects. In other words,\n signals are entirely producer-driven and push-based, and consumers (observers)\n cannot have any effect on their lifetime. While observing a signal, the user\n can only evaluate the events in the same order as they are sent on the signal. There\n is no random access to values of a signal.\n \n Signals can be manipulated by applying [primitives](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/master/Documentation/BasicOperators.md) to them.\n Typical primitives to manipulate a single signal like `filter`, `map` and\n `reduce` are available, as well as primitives to manipulate multiple signals\n at once (`zip`). Primitives operate only on the `Next` events of a signal.\n \n The lifetime of a signal consists of any number of `Next` events, followed by\n one terminating event, which may be any one of `Failed`, `Completed`, or\n `Interrupted` (but not a combination).\n Terminating events are not included in the signal’s values—they must be\n handled specially.\n */\n\n/*:\n ### `Subscription`\n A Signal represents and event stream that is already \"in progress\", sometimes also called \"hot\". This means, that a subscriber may miss events that have been sent before the subscription.\n Furthermore, the subscription to a signal does not trigger any side effects\n */\nscopedExample(\"Subscription\") {\n    // Signal.pipe is a way to manually control a signal. the returned observer can be used to send values to the signal\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    \n    let subscriber1 = Observer<Int, NoError>(next: { print(\"Subscriber 1 received \\($0)\") } )\n    let subscriber2 = Observer<Int, NoError>(next: { print(\"Subscriber 2 received \\($0)\") } )\n    \n    print(\"Subscriber 1 subscribes to the signal\")\n    signal.observe(subscriber1)\n    \n    print(\"Send value `10` on the signal\")\n    // subscriber1 will receive the value\n    observer.sendNext(10)\n    \n    print(\"Subscriber 2 subscribes to the signal\")\n    // Notice how nothing happens at this moment, i.e. subscriber2 does not receive the previously sent value\n    signal.observe(subscriber2)\n    \n    print(\"Send value `20` on the signal\")\n    // Notice that now, subscriber1 and subscriber2 will receive the value\n    observer.sendNext(20)\n}\n\n/*:\n ### `empty`\n A Signal that completes immediately without emitting any value.\n */\nscopedExample(\"`empty`\") {\n    let emptySignal = Signal<Int, NoError>.empty\n    \n    let observer = Observer<Int, NoError>(\n        failed: { _ in print(\"error not called\") },\n        completed: { print(\"completed not called\") },\n        interrupted: { print(\"interrupted called\") },\n        next: { _ in print(\"next not called\") }\n    )\n    \n    emptySignal.observe(observer)\n}\n\n/*:\n ### `never`\n A Signal that never sends any events to its observers.\n */\nscopedExample(\"`never`\") {\n    let neverSignal = Signal<Int, NoError>.never\n    \n    let observer = Observer<Int, NoError>(\n        failed: { _ in print(\"error not called\") },\n        completed: { print(\"completed not called\") },\n        interrupted: { print(\"interrupted not called\") },\n        next: { _ in print(\"next not called\") }\n    )\n    \n    neverSignal.observe(observer)\n}\n\n/*:\n ## `Operators`\n ### `uniqueValues`\n Forwards only those values from `self` that are unique across the set of\n all values that have been seen.\n \n Note: This causes the values to be retained to check for uniqueness. Providing\n a function that returns a unique value for each sent value can help you reduce\n the memory footprint.\n */\nscopedExample(\"`uniqueValues`\") {\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    let subscriber = Observer<Int, NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    let uniqueSignal = signal.uniqueValues()\n\n    uniqueSignal.observe(subscriber)\n    observer.sendNext(1)\n    observer.sendNext(2)\n    observer.sendNext(3)\n    observer.sendNext(4)\n    observer.sendNext(3)\n    observer.sendNext(3)\n    observer.sendNext(5)\n}\n\n/*:\n ### `map`\n Maps each value in the signal to a new value.\n */\nscopedExample(\"`map`\") {\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    let subscriber = Observer<Int, NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    let mappedSignal = signal.map { $0 * 2 }\n\n    mappedSignal.observe(subscriber)\n    print(\"Send value `10` on the signal\")\n    observer.sendNext(10)\n}\n\n/*:\n ### `mapError`\n Maps errors in the signal to a new error.\n */\nscopedExample(\"`mapError`\") {    \n    let (signal, observer) = Signal<Int, NSError>.pipe()\n    let subscriber = Observer<Int, NSError>(failed: { print(\"Subscriber received error: \\($0)\") } )\n    let mappedErrorSignal = signal.mapError { (error:NSError) -> NSError in\n        let userInfo = [NSLocalizedDescriptionKey: \"🔥\"]\n        let code = error.code + 10000\n        let mappedError = NSError(domain: \"com.reactivecocoa.errordomain\", code: code, userInfo: userInfo)\n        return mappedError\n    }\n\n    mappedErrorSignal.observe(subscriber)\n    print(\"Send error `NSError(domain: \\\"com.reactivecocoa.errordomain\\\", code: 4815, userInfo: nil)` on the signal\")\n    observer.sendFailed(NSError(domain: \"com.reactivecocoa.errordomain\", code: 4815, userInfo: nil))\n}\n\n/*:\n ### `filter`\n Preserves only the values of the signal that pass the given predicate.\n */\nscopedExample(\"`filter`\") {\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    let subscriber = Observer<Int, NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    // subscriber will only receive events with values greater than 12\n    let filteredSignal = signal.filter { $0 > 12 ? true : false }\n\n    filteredSignal.observe(subscriber)\n    observer.sendNext(10)\n    observer.sendNext(11)\n    observer.sendNext(12)\n    observer.sendNext(13)\n    observer.sendNext(14)\n}\n\n/*:\n ### `ignoreNil`\n Unwraps non-`nil` values and forwards them on the returned signal, `nil`\n values are dropped.\n */\nscopedExample(\"`ignoreNil`\") {\n    let (signal, observer) = Signal<Int?, NoError>.pipe()\n    // note that the signal is of type `Int?` and observer is of type `Int`, given we're unwrapping\n    // non-`nil` values\n    let subscriber = Observer<Int, NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    let ignoreNilSignal = signal.ignoreNil()\n\n    ignoreNilSignal.observe(subscriber)\n    observer.sendNext(1)\n    observer.sendNext(nil)\n    observer.sendNext(3)\n}\n\n/*:\n ### `take`\n Returns a signal that will yield the first `count` values from `self`\n */\nscopedExample(\"`take`\") {\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    let subscriber = Observer<Int, NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    let takeSignal = signal.take(2)\n\n    takeSignal.observe(subscriber)\n    observer.sendNext(1)\n    observer.sendNext(2)\n    observer.sendNext(3)\n    observer.sendNext(4)\n}\n\n/*:\n ### `collect`\n Returns a signal that will yield an array of values when `self` completes.\n - Note: When `self` completes without collecting any value, it will send\n an empty array of values.\n */\nscopedExample(\"`collect`\") {\n    let (signal, observer) = Signal<Int, NoError>.pipe()\n    // note that the signal is of type `Int` and observer is of type `[Int]` given we're \"collecting\"\n    // `Int` values for the lifetime of the signal\n    let subscriber = Observer<[Int], NoError>(next: { print(\"Subscriber received \\($0)\") } )\n    let collectSignal = signal.collect()\n\n    collectSignal.observe(subscriber)\n    observer.sendNext(1)\n    observer.sendNext(2)\n    observer.sendNext(3)\n    observer.sendNext(4)\n    observer.sendCompleted()\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.playground/Pages/SignalProducer.xcplaygroundpage/Contents.swift",
    "content": "/*:\n > # IMPORTANT: To use `ReactiveCocoa.playground`, please:\n \n 1. Retrieve the project dependencies using one of the following terminal commands from the ReactiveCocoa project root directory:\n    - `script/bootstrap`\n    **OR**, if you have [Carthage](https://github.com/Carthage/Carthage) installed\n    - `carthage checkout`\n 1. Open `ReactiveCocoa.xcworkspace`\n 1. Build `Result-Mac` scheme \n 1. Build `ReactiveCocoa-Mac` scheme\n 1. Finally open the `ReactiveCocoa.playground`\n 1. Choose `View > Show Debug Area`\n */\n\nimport Result\nimport ReactiveCocoa\nimport Foundation\n\n/*:\n ## SignalProducer\n \n A **signal producer**, represented by the [`SignalProducer`](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/master/ReactiveCocoa/Swift/SignalProducer.swift) type, creates\n [signals](https://github.com/ReactiveCocoa/ReactiveCocoa/blob/master/ReactiveCocoa/Swift/Signal.swift) and performs side effects.\n \n They can be used to represent operations or tasks, like network\n requests, where each invocation of `start()` will create a new underlying\n operation, and allow the caller to observe the result(s). The\n `startWithSignal()` variant gives access to the produced signal, allowing it to\n be observed multiple times if desired.\n \n Because of the behavior of `start()`, each signal created from the same\n producer may see a different ordering or version of events, or the stream might\n even be completely different! Unlike a plain signal, no work is started (and\n thus no events are generated) until an observer is attached, and the work is\n restarted anew for each additional observer.\n \n Starting a signal producer returns a [disposable](#disposables) that can be used to\n interrupt/cancel the work associated with the produced signal.\n \n Just like signals, signal producers can also be manipulated via primitives\n like `map`, `filter`, etc.\n Every signal primitive can be “lifted” to operate upon signal producers instead,\n using the `lift` method.\n Furthermore, there are additional primitives that control _when_ and _how_ work\n is started—for example, `times`.\n */\n\n/*:\n ### `Subscription`\n A SignalProducer represents an operation that can be started on demand. Starting the operation returns a Signal on which the result(s) of the operation can be observed. This behavior is sometimes also called \"cold\". \nThis means that a subscriber will never miss any values sent by the SignalProducer.\n */\nscopedExample(\"Subscription\") {\n    let producer = SignalProducer<Int, NoError> { observer, _ in\n        print(\"New subscription, starting operation\")\n        observer.sendNext(1)\n        observer.sendNext(2)\n    }\n    \n    let subscriber1 = Observer<Int, NoError>(next: { print(\"Subscriber 1 received \\($0)\") })\n    let subscriber2 = Observer<Int, NoError>(next: { print(\"Subscriber 2 received \\($0)\") })\n\n    print(\"Subscriber 1 subscribes to producer\")\n    producer.start(subscriber1)\n\n    print(\"Subscriber 2 subscribes to producer\")\n    // Notice, how the producer will start the work again\n    producer.start(subscriber2)\n}\n\n/*:\n ### `empty`\n A producer for a Signal that will immediately complete without sending\n any values.\n */\nscopedExample(\"`empty`\") {\n    let emptyProducer = SignalProducer<Int, NoError>.empty\n    \n    let observer = Observer<Int, NoError>(\n        failed: { _ in print(\"error not called\") },\n        completed: { print(\"completed called\") },\n        next: { _ in print(\"next not called\") }\n    )\n    \n    emptyProducer.start(observer)\n}\n\n/*:\n ### `never`\n A producer for a Signal that never sends any events to its observers.\n */\nscopedExample(\"`never`\") {\n    let neverProducer = SignalProducer<Int, NoError>.never\n    \n    let observer = Observer<Int, NoError>(\n        failed: { _ in print(\"error not called\") },\n        completed: { print(\"completed not called\") },\n        next: { _ in print(\"next not called\") }\n    )\n    \n    neverProducer.start(observer)\n}\n\n/*:\n ### `buffer`\n Creates a queue for events that replays them when new signals are\n created from the returned producer.\n \n When values are put into the returned observer (observer), they will be\n added to an internal buffer. If the buffer is already at capacity,\n the earliest (oldest) value will be dropped to make room for the new\n value.\n \n Signals created from the returned producer will stay alive until a\n terminating event is added to the queue. If the queue does not contain\n such an event when the Signal is started, all values sent to the\n returned observer will be automatically forwarded to the Signal’s\n observers until a terminating event is received.\n \n After a terminating event has been added to the queue, the observer\n will not add any further events. This _does not_ count against the\n value capacity so no buffered values will be dropped on termination.\n */\nscopedExample(\"`buffer`\") {\n    let (producer, observer) = SignalProducer<Int, NoError>.buffer(1)\n    \n    observer.sendNext(1)\n    observer.sendNext(2)\n    observer.sendNext(3)\n    \n    var values: [Int] = []\n    \n    producer.start { event in\n        switch event {\n        case let .Next(value):\n            values.append(value)\n        default:\n            break\n        }\n    }\n    \n    print(values)\n    \n    observer.sendNext(4)\n    \n    print(values)\n}\n\n/*:\n ### `startWithSignal`\n Creates a Signal from the producer, passes it into the given closure,\n then starts sending events on the Signal when the closure has returned.\n \n The closure will also receive a disposable which can be used to\n interrupt the work associated with the signal and immediately send an\n `Interrupted` event.\n */\nscopedExample(\"`startWithSignal`\") {\n    var started = false\n    var value: Int?\n    \n    SignalProducer<Int, NoError>(value: 42)\n        .on(next: {\n            value = $0\n        })\n        .startWithSignal { signal, disposable in\n            print(value)\n        }\n    \n    print(value)\n}\n\n/*:\n ### `startWithNext`\n Creates a Signal from the producer, then adds exactly one observer to\n the Signal, which will invoke the given callback when `next` events are\n received.\n \n Returns a Disposable which can be used to interrupt the work associated\n with the Signal, and prevent any future callbacks from being invoked.\n */\nscopedExample(\"`startWithNext`\") {\n    SignalProducer<Int, NoError>(value: 42)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `startWithCompleted`\n Creates a Signal from the producer, then adds exactly one observer to\n the Signal, which will invoke the given callback when a `completed` event is\n received.\n \n Returns a Disposable which can be used to interrupt the work associated\n with the Signal.\n */\nscopedExample(\"`startWithCompleted`\") {\n    SignalProducer<Int, NoError>(value: 42)\n        .startWithCompleted {\n            print(\"completed called\")\n        }\n}\n\n/*:\n ### `startWithFailed`\n Creates a Signal from the producer, then adds exactly one observer to\n the Signal, which will invoke the given callback when a `failed` event is\n received.\n \n Returns a Disposable which can be used to interrupt the work associated\n with the Signal.\n */\nscopedExample(\"`startWithFailed`\") {\n    SignalProducer<Int, NSError>(error: NSError(domain: \"example\", code: 42, userInfo: nil))\n        .startWithFailed { error in\n            print(error)\n        }\n}\n\n/*:\n ### `startWithInterrupted`\n Creates a Signal from the producer, then adds exactly one observer to\n the Signal, which will invoke the given callback when an `interrupted` event \n is received.\n \n Returns a Disposable which can be used to interrupt the work associated\n with the Signal.\n */\nscopedExample(\"`startWithInterrupted`\") {\n    let disposable = SignalProducer<Int, NoError>.never\n        .startWithInterrupted {\n            print(\"interrupted called\")\n        }\n    \n    disposable.dispose()\n}\n\n\n/*:\n ### `lift`\n Lifts an unary Signal operator to operate upon SignalProducers instead.\n \n In other words, this will create a new SignalProducer which will apply\n the given Signal operator to _every_ created Signal, just as if the\n operator had been applied to each Signal yielded from start().\n */\nscopedExample(\"`lift`\") {\n    var counter = 0\n    let transform: Signal<Int, NoError> -> Signal<Int, NoError> = { signal in\n        counter = 42\n        return signal\n    }\n    \n    SignalProducer<Int, NoError>(value: 0)\n        .lift(transform)\n        .startWithNext { _ in\n            print(counter)\n        }\n}\n\n/*:\n ### `map`\n Maps each value in the producer to a new value.\n */\nscopedExample(\"`map`\") {\n    SignalProducer<Int, NoError>(value: 1)\n        .map { $0 + 41 }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `mapError`\n Maps errors in the producer to a new error.\n */\nscopedExample(\"`mapError`\") {\n    SignalProducer<Int, NSError>(error: NSError(domain: \"mapError\", code: 42, userInfo: nil))\n        .mapError { Error.Example($0.description) }\n        .startWithFailed { error in\n            print(error)\n        }\n}\n\n/*:\n ### `filter`\n Preserves only the values of the producer that pass the given predicate.\n */\nscopedExample(\"`filter`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .filter { $0 > 3}\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `take`\n Returns a producer that will yield the first `count` values from the\n input producer.\n */\nscopedExample(\"`take`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .take(2)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `observeOn`\n Forwards all events onto the given scheduler, instead of whichever\n scheduler they originally arrived upon.\n */\nscopedExample(\"`observeOn`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let completion = { print(\"is main thread? \\(NSThread.currentThread().isMainThread)\") }\n\n    if #available(OSX 10.10, *) {\n    baseProducer\n        .observeOn(QueueScheduler(qos: QOS_CLASS_DEFAULT, name: \"test\"))\n        .startWithCompleted(completion)\n    }\n\n    baseProducer\n        .startWithCompleted(completion)\n}\n\n/*:\n ### `collect()`\n Returns a producer that will yield an array of values until it completes.\n */\nscopedExample(\"`collect()`\") {\n    SignalProducer<Int, NoError> { observer, disposable in\n            observer.sendNext(1)\n            observer.sendNext(2)\n            observer.sendNext(3)\n            observer.sendNext(4)\n            observer.sendCompleted()\n        }\n        .collect()\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `collect(count:)`\n Returns a producer that will yield an array of values until it reaches a certain count.\n */\nscopedExample(\"`collect(count:)`\") {\n    SignalProducer<Int, NoError> { observer, disposable in\n            observer.sendNext(1)\n            observer.sendNext(2)\n            observer.sendNext(3)\n            observer.sendNext(4)\n            observer.sendCompleted()\n        }\n        .collect(count: 2)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `collect(predicate:)` matching values inclusively\n Returns a producer that will yield an array of values based on a predicate\n which matches the values collected.\n\n When producer completes any remaining values will be sent, the last values\n array may not match `predicate`. Alternatively, if were not collected any\n values will sent an empty array of values.\n */\nscopedExample(\"`collect(predicate:)` matching values inclusively\") {\n    SignalProducer<Int, NoError> { observer, disposable in\n            observer.sendNext(1)\n            observer.sendNext(2)\n            observer.sendNext(3)\n            observer.sendNext(4)\n            observer.sendCompleted()\n        }\n        .collect { values in values.reduce(0, combine: +) == 3 }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `collect(predicate:)` matching values exclusively\n Returns a producer that will yield an array of values based on a predicate\n which matches the values collected and the next value.\n \n When producer completes any remaining values will be sent, the last values\n array may not match `predicate`. Alternatively, if were not collected any\n values will sent an empty array of values.\n */\nscopedExample(\"`collect(predicate:)` matching values exclusively\") {\n    SignalProducer<Int, NoError> { observer, disposable in\n            observer.sendNext(1)\n            observer.sendNext(2)\n            observer.sendNext(3)\n            observer.sendNext(4)\n            observer.sendCompleted()\n        }\n        .collect { values, next in next == 3 }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `combineLatestWith`\n Combines the latest value of the receiver with the latest value from\n the given producer.\n \n The returned producer will not send a value until both inputs have sent at\n least one value each. If either producer is interrupted, the returned producer\n will also be interrupted.\n */\nscopedExample(\"`combineLatestWith`\") {\n    let producer1 = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let producer2 = SignalProducer<Int, NoError>(values: [ 1, 2 ])\n    \n    producer1\n        .combineLatestWith(producer2)\n        .startWithNext { value in\n            print(\"\\(value)\")\n        }\n}\n\n/*:\n ### `skip`\n Returns a producer that will skip the first `count` values, then forward\n everything afterward.\n */\nscopedExample(\"`skip`\") {\n    let producer1 = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    \n    producer1\n        .skip(2)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `materialize`\n \nTreats all Events from the input producer as plain values, allowing them to be\nmanipulated just like any other value.\n\nIn other words, this brings Events “into the monad.”\n\nWhen a Completed or Failed event is received, the resulting producer will send\nthe Event itself and then complete. When an Interrupted event is received,\nthe resulting producer will send the Event itself and then interrupt.\n*/\nscopedExample(\"`materialize`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .materialize()\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `sampleOn`\n Forwards the latest value from `self` whenever `sampler` sends a Next\n event.\n \n If `sampler` fires before a value has been observed on `self`, nothing\n happens.\n \n Returns a producer that will send values from `self`, sampled (possibly\n multiple times) by `sampler`, then complete once both input producers have\n completed, or interrupt if either input producer is interrupted.\n */\nscopedExample(\"`sampleOn`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let sampledOnProducer = SignalProducer<Int, NoError>(values: [ 1, 2 ])\n        .map { _ in () }\n    \n    baseProducer\n        .sampleOn(sampledOnProducer)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `combinePrevious`\n Forwards events from `self` with history: values of the returned producer\n are a tuple whose first member is the previous value and whose second member\n is the current value. `initial` is supplied as the first member when `self`\n sends its first value.\n */\nscopedExample(\"`combinePrevious`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .combinePrevious(42)\n        .startWithNext { value in\n            print(\"\\(value)\")\n        }\n}\n\n/*:\n ### `scan`\n Aggregates `self`'s values into a single combined value. When `self` emits\n its first value, `combine` is invoked with `initial` as the first argument and\n that emitted value as the second argument. The result is emitted from the\n producer returned from `scan`. That result is then passed to `combine` as the\n first argument when the next value is emitted, and so on.\n */\nscopedExample(\"`scan`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .scan(0, +)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `reduce`\n Like `scan`, but sends only the final value and then immediately completes.\n */\nscopedExample(\"`reduce`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .reduce(0, +)\n        .startWithNext { value in\n            print(value)\n    }\n}\n\n/*:\n ### `skipRepeats`\n Forwards only those values from `self` which do not pass `isRepeat` with\n respect to the previous value. The first value is always forwarded.\n */\nscopedExample(\"`skipRepeats`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 1, 1, 1, 2, 2, 2, 4 ])\n        .skipRepeats(==)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `skipWhile`\n Does not forward any values from `self` until `predicate` returns false,\n at which point the returned signal behaves exactly like `self`.\n */\nscopedExample(\"`skipWhile`\") {\n    SignalProducer<Int, NoError>(values: [ 3, 3, 3, 3, 1, 2, 3, 4 ])\n        .skipWhile { $0 > 2 }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `takeUntilReplacement`\n Forwards events from `self` until `replacement` begins sending events.\n \n Returns a producer which passes through `Next`, `Failed`, and `Interrupted`\n events from `self` until `replacement` sends an event, at which point the\n returned producer will send that event and switch to passing through events\n from `replacement` instead, regardless of whether `self` has sent events\n already.\n */\nscopedExample(\"`takeUntilReplacement`\") {\n    let (replacementSignal, incomingReplacementObserver) = Signal<Int, NoError>.pipe()\n\n    let baseProducer = SignalProducer<Int, NoError> { incomingObserver, _ in\n        incomingObserver.sendNext(1)\n        incomingObserver.sendNext(2)\n        incomingObserver.sendNext(3)\n\n        incomingReplacementObserver.sendNext(42)\n\n        incomingObserver.sendNext(4)\n\n        incomingReplacementObserver.sendNext(42)\n    }\n\n    let producer = baseProducer.takeUntilReplacement(replacementSignal)\n    \n    producer.startWithNext { value in\n        print(value)\n    }\n}\n\n/*:\n ### `takeLast`\n Waits until `self` completes and then forwards the final `count` values\n on the returned producer.\n */\nscopedExample(\"`takeLast`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .takeLast(2)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `ignoreNil`\n Unwraps non-`nil` values and forwards them on the returned signal, `nil`\n values are dropped.\n */\nscopedExample(\"`ignoreNil`\") {\n    SignalProducer<Int?, NoError>(values: [ nil, 1, 2, nil, 3, 4, nil ])\n        .ignoreNil()\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n\n/*:\n ### `zipWith`\n Zips elements of two producers into pairs. The elements of any Nth pair\n are the Nth elements of the two input producers.\n */\nscopedExample(\"`zipWith`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let zippedProducer = SignalProducer<Int, NoError>(values: [ 42, 43 ])\n    \n    baseProducer\n        .zipWith(zippedProducer)\n        .startWithNext { value in\n            print(\"\\(value)\")\n        }\n}\n\n/*:\n ### `times`\n Repeats `self` a total of `count` times. Repeating `1` times results in\n an equivalent signal producer.\n */\nscopedExample(\"`times`\") {\n    var counter = 0\n    \n    SignalProducer<(), NoError> { observer, disposable in\n            counter += 1\n            observer.sendCompleted()\n        }\n        .times(42)\n        .start()\n    \n    print(counter)\n}\n\n/*:\n ### `retry`\n Ignores failures up to `count` times.\n */\nscopedExample(\"`retry`\") {\n    var tries = 0\n    \n    SignalProducer<Int, NSError> { observer, disposable in\n            if tries == 0 {\n                tries += 1\n                observer.sendFailed(NSError(domain: \"retry\", code: 0, userInfo: nil))\n            } else {\n                observer.sendNext(42)\n                observer.sendCompleted()\n            }\n        }\n        .retry(1)\n        .startWithResult { result in\n            print(result)\n        }\n}\n\n/*:\n ### `then`\n Waits for completion of `producer`, *then* forwards all events from\n `replacement`. Any failure sent from `producer` is forwarded immediately, in\n which case `replacement` will not be started, and none of its events will be\n be forwarded. All values sent from `producer` are ignored.\n */\nscopedExample(\"`then`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let thenProducer = SignalProducer<Int, NoError>(value: 42)\n    \n    baseProducer\n        .then(thenProducer)\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `replayLazily`\n Creates a new `SignalProducer` that will multicast values emitted by\n the underlying producer, up to `capacity`.\n This means that all clients of this `SignalProducer` will see the same version\n of the emitted values/errors.\n \n The underlying `SignalProducer` will not be started until `self` is started\n for the first time. When subscribing to this producer, all previous values\n (up to `capacity`) will be emitted, followed by any new values.\n \n If you find yourself needing *the current value* (the last buffered value)\n you should consider using `PropertyType` instead, which, unlike this operator,\n will guarantee at compile time that there's always a buffered value.\n This operator is not recommended in most cases, as it will introduce an implicit\n relationship between the original client and the rest, so consider alternatives\n like `PropertyType`, `SignalProducer.buffer`, or representing your stream using\n a `Signal` instead.\n \n This operator is only recommended when you absolutely need to introduce\n a layer of caching in front of another `SignalProducer`.\n \n This operator has the same semantics as `SignalProducer.buffer`.\n */\nscopedExample(\"`replayLazily`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4, 42 ])\n        .replayLazily(2)\n    \n    baseProducer.startWithNext { value in\n        print(value)\n    }\n\n    baseProducer.startWithNext { value in\n        print(value)\n    }\n\n    baseProducer.startWithNext { value in\n        print(value)\n    }\n}\n\n/*:\n ### `flatMap(.Latest)`\n Maps each event from `self` to a new producer, then flattens the\n resulting producers (into a producer of values), according to the\n semantics of the given strategy.\n \n If `self` or any of the created producers fail, the returned producer\n will forward that failure immediately.\n */\nscopedExample(\"`flatMap(.Latest)`\") {\n    SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n        .flatMap(.Latest) { SignalProducer(value: $0 + 3) }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `flatMapError`\n Catches any failure that may occur on the input producer, mapping to a new producer\n that starts in its place.\n */\nscopedExample(\"`flatMapError`\") {\n    SignalProducer<Int, NSError>(error: NSError(domain: \"flatMapError\", code: 42, userInfo: nil))\n        .flatMapError { SignalProducer<Int, NoError>(value: $0.code) }\n        .startWithNext { value in\n            print(value)\n        }\n}\n\n/*:\n ### `sampleWith`\n Forwards the latest value from `self` with the value from `sampler` as a tuple,\n only when `sampler` sends a Next event.\n \n If `sampler` fires before a value has been observed on `self`, nothing happens.\n Returns a producer that will send values from `self` and `sampler`,\n sampled (possibly multiple times) by `sampler`, then complete once both\n input producers have completed, or interrupt if either input producer is interrupted.\n */\nscopedExample(\"`sampleWith`\") {\n    let producer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4 ])\n    let sampler = SignalProducer<String, NoError>(values: [ \"a\", \"b\" ])\n\t\t\t\t\n    let result = producer.sampleWith(sampler)\n    \n    result.startWithNext { left, right in\n        print(\"\\(left) \\(right)\")\n    }\n}\n\n/*:\n ### `logEvents`\n Logs all events that the receiver sends.\n By default, it will print to the standard output.\n */\nscopedExample(\"`log events`\") {\n    let baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3, 4, 42 ])\n    \n    baseProducer\n        .logEvents(identifier: \"Playground is fun!\")\n        .start()\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.playground/Sources/PlaygroundUtility.swift",
    "content": "import Foundation\n\npublic func scopedExample(exampleDescription: String, _ action: () -> Void) {\n\tprint(\"\\n--- \\(exampleDescription) ---\\n\")\n\taction()\n}\n\npublic enum Error: ErrorType {\n\tcase Example(String)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.playground/contents.xcplayground",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<playground version='6.0' target-platform='osx' display-mode='rendered'>\n    <pages>\n        <page name='Sandbox'/>\n        <page name='SignalProducer'/>\n        <page name='Signal'/>\n    </pages>\n</playground>"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t02D2602A1C1D6DAF003ACC61 /* SignalLifetimeSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02D260291C1D6DAF003ACC61 /* SignalLifetimeSpec.swift */; };\n\t\t02D2602B1C1D6DB8003ACC61 /* SignalLifetimeSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02D260291C1D6DAF003ACC61 /* SignalLifetimeSpec.swift */; };\n\t\t314304171ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 314304151ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t314304181ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 314304161ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.m */; };\n\t\t579504331BB8A34200A5E482 /* BagSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EF19EF2A7700984962 /* BagSpec.swift */; };\n\t\t579504341BB8A34300A5E482 /* BagSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EF19EF2A7700984962 /* BagSpec.swift */; };\n\t\t57A4D1B11BA13D7A00F7D4B1 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = D871D69E1B3B29A40070F16C /* Optional.swift */; };\n\t\t57A4D1B21BA13D7A00F7D4B1 /* RACCompoundDisposableProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */; };\n\t\t57A4D1B31BA13D7A00F7D4B1 /* RACSignalProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D03764A319EDA41200A782A9 /* RACSignalProvider.d */; };\n\t\t57A4D1B41BA13D7A00F7D4B1 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BE19EF2A5800984962 /* Disposable.swift */; };\n\t\t57A4D1B61BA13D7A00F7D4B1 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B51A69A3DB00AD8286 /* Event.swift */; };\n\t\t57A4D1B71BA13D7A00F7D4B1 /* ObjectiveCBridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */; };\n\t\t57A4D1B81BA13D7A00F7D4B1 /* Scheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C819EF2A5800984962 /* Scheduler.swift */; };\n\t\t57A4D1B91BA13D7A00F7D4B1 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54AF1A69A2AC00AD8286 /* Action.swift */; };\n\t\t57A4D1BA1BA13D7A00F7D4B1 /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B01A69A2AC00AD8286 /* Property.swift */; };\n\t\t57A4D1BB1BA13D7A00F7D4B1 /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B11A69A2AC00AD8286 /* Signal.swift */; };\n\t\t57A4D1BC1BA13D7A00F7D4B1 /* SignalProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B21A69A2AC00AD8286 /* SignalProducer.swift */; };\n\t\t57A4D1BD1BA13D7A00F7D4B1 /* Atomic.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BB19EF2A5800984962 /* Atomic.swift */; };\n\t\t57A4D1BE1BA13D7A00F7D4B1 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BC19EF2A5800984962 /* Bag.swift */; };\n\t\t57A4D1BF1BA13D7A00F7D4B1 /* TupleExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00004081A46864E000E7D41 /* TupleExtensions.swift */; };\n\t\t57A4D1C01BA13D7A00F7D4B1 /* FoundationExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */; };\n\t\t57A4D1C11BA13D7A00F7D4B1 /* EXTRuntimeExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */; };\n\t\t57A4D1C21BA13D7A00F7D4B1 /* NSArray+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */; };\n\t\t57A4D1C31BA13D7A00F7D4B1 /* NSData+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643119EDA41200A782A9 /* NSData+RACSupport.m */; };\n\t\t57A4D1C41BA13D7A00F7D4B1 /* NSDictionary+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */; };\n\t\t57A4D1C51BA13D7A00F7D4B1 /* NSEnumerator+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */; };\n\t\t57A4D1C61BA13D7A00F7D4B1 /* NSFileHandle+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */; };\n\t\t57A4D1C71BA13D7A00F7D4B1 /* NSIndexSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */; };\n\t\t57A4D1C81BA13D7A00F7D4B1 /* NSInvocation+RACTypeParsing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */; };\n\t\t57A4D1C91BA13D7A00F7D4B1 /* NSNotificationCenter+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */; };\n\t\t57A4D1CA1BA13D7A00F7D4B1 /* NSObject+RACDeallocating.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */; };\n\t\t57A4D1CB1BA13D7A00F7D4B1 /* NSObject+RACDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644319EDA41200A782A9 /* NSObject+RACDescription.m */; };\n\t\t57A4D1CC1BA13D7A00F7D4B1 /* NSObject+RACKVOWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */; };\n\t\t57A4D1CD1BA13D7A00F7D4B1 /* NSObject+RACLifting.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644719EDA41200A782A9 /* NSObject+RACLifting.m */; };\n\t\t57A4D1CE1BA13D7A00F7D4B1 /* NSObject+RACPropertySubscribing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */; };\n\t\t57A4D1CF1BA13D7A00F7D4B1 /* NSObject+RACSelectorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */; };\n\t\t57A4D1D01BA13D7A00F7D4B1 /* NSOrderedSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */; };\n\t\t57A4D1D11BA13D7A00F7D4B1 /* NSSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */; };\n\t\t57A4D1D21BA13D7A00F7D4B1 /* NSString+RACKeyPathUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */; };\n\t\t57A4D1D31BA13D7A00F7D4B1 /* NSString+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */; };\n\t\t57A4D1D41BA13D7A00F7D4B1 /* NSString+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645519EDA41200A782A9 /* NSString+RACSupport.m */; };\n\t\t57A4D1D61BA13D7A00F7D4B1 /* NSUserDefaults+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */; };\n\t\t57A4D1D71BA13D7A00F7D4B1 /* RACArraySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645D19EDA41200A782A9 /* RACArraySequence.m */; };\n\t\t57A4D1D81BA13D7A00F7D4B1 /* RACBehaviorSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646119EDA41200A782A9 /* RACBehaviorSubject.m */; };\n\t\t57A4D1D91BA13D7A00F7D4B1 /* RACBlockTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646319EDA41200A782A9 /* RACBlockTrampoline.m */; };\n\t\t57A4D1DA1BA13D7A00F7D4B1 /* RACChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646519EDA41200A782A9 /* RACChannel.m */; };\n\t\t57A4D1DB1BA13D7A00F7D4B1 /* RACCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646719EDA41200A782A9 /* RACCommand.m */; };\n\t\t57A4D1DC1BA13D7A00F7D4B1 /* RACCompoundDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646919EDA41200A782A9 /* RACCompoundDisposable.m */; };\n\t\t57A4D1DD1BA13D7A00F7D4B1 /* RACDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646C19EDA41200A782A9 /* RACDelegateProxy.m */; };\n\t\t57A4D1DE1BA13D7A00F7D4B1 /* RACDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646E19EDA41200A782A9 /* RACDisposable.m */; };\n\t\t57A4D1DF1BA13D7A00F7D4B1 /* RACDynamicSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647019EDA41200A782A9 /* RACDynamicSequence.m */; };\n\t\t57A4D1E01BA13D7A00F7D4B1 /* RACDynamicSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647219EDA41200A782A9 /* RACDynamicSignal.m */; };\n\t\t57A4D1E11BA13D7A00F7D4B1 /* RACEagerSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647419EDA41200A782A9 /* RACEagerSequence.m */; };\n\t\t57A4D1E21BA13D7A00F7D4B1 /* RACEmptySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647619EDA41200A782A9 /* RACEmptySequence.m */; };\n\t\t57A4D1E31BA13D7A00F7D4B1 /* RACEmptySignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647819EDA41200A782A9 /* RACEmptySignal.m */; };\n\t\t57A4D1E41BA13D7A00F7D4B1 /* RACErrorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647A19EDA41200A782A9 /* RACErrorSignal.m */; };\n\t\t57A4D1E51BA13D7A00F7D4B1 /* RACEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647C19EDA41200A782A9 /* RACEvent.m */; };\n\t\t57A4D1E61BA13D7A00F7D4B1 /* RACGroupedSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647E19EDA41200A782A9 /* RACGroupedSignal.m */; };\n\t\t57A4D1E71BA13D7A00F7D4B1 /* RACImmediateScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648019EDA41200A782A9 /* RACImmediateScheduler.m */; };\n\t\t57A4D1E81BA13D7A00F7D4B1 /* RACIndexSetSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648219EDA41200A782A9 /* RACIndexSetSequence.m */; };\n\t\t57A4D1E91BA13D7A00F7D4B1 /* RACKVOChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648419EDA41200A782A9 /* RACKVOChannel.m */; };\n\t\t57A4D1EA1BA13D7A00F7D4B1 /* RACKVOProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */; };\n\t\t57A4D1EB1BA13D7A00F7D4B1 /* RACKVOTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648619EDA41200A782A9 /* RACKVOTrampoline.m */; };\n\t\t57A4D1EC1BA13D7A00F7D4B1 /* RACMulticastConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648819EDA41200A782A9 /* RACMulticastConnection.m */; };\n\t\t57A4D1EE1BA13D7A00F7D4B1 /* RACPassthroughSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */; };\n\t\t57A4D1EF1BA13D7A00F7D4B1 /* RACQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648F19EDA41200A782A9 /* RACQueueScheduler.m */; };\n\t\t57A4D1F01BA13D7A00F7D4B1 /* RACReplaySubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649219EDA41200A782A9 /* RACReplaySubject.m */; };\n\t\t57A4D1F11BA13D7A00F7D4B1 /* RACReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649419EDA41200A782A9 /* RACReturnSignal.m */; };\n\t\t57A4D1F21BA13D7A00F7D4B1 /* RACScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649619EDA41200A782A9 /* RACScheduler.m */; };\n\t\t57A4D1F31BA13D7A00F7D4B1 /* RACScopedDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649A19EDA41200A782A9 /* RACScopedDisposable.m */; };\n\t\t57A4D1F41BA13D7A00F7D4B1 /* RACSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649C19EDA41200A782A9 /* RACSequence.m */; };\n\t\t57A4D1F51BA13D7A00F7D4B1 /* RACSerialDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649E19EDA41200A782A9 /* RACSerialDisposable.m */; };\n\t\t57A4D1F61BA13D7A00F7D4B1 /* RACSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A019EDA41200A782A9 /* RACSignal.m */; };\n\t\t57A4D1F71BA13D7A00F7D4B1 /* RACSignal+Operations.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A219EDA41200A782A9 /* RACSignal+Operations.m */; };\n\t\t57A4D1F81BA13D7A00F7D4B1 /* RACSignalSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A519EDA41200A782A9 /* RACSignalSequence.m */; };\n\t\t57A4D1F91BA13D7A00F7D4B1 /* RACStream.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A719EDA41200A782A9 /* RACStream.m */; };\n\t\t57A4D1FA1BA13D7A00F7D4B1 /* RACStringSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AA19EDA41200A782A9 /* RACStringSequence.m */; };\n\t\t57A4D1FB1BA13D7A00F7D4B1 /* RACSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AC19EDA41200A782A9 /* RACSubject.m */; };\n\t\t57A4D1FC1BA13D7A00F7D4B1 /* RACSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AE19EDA41200A782A9 /* RACSubscriber.m */; };\n\t\t57A4D1FD1BA13D7A00F7D4B1 /* RACSubscriptingAssignmentTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */; };\n\t\t57A4D1FE1BA13D7A00F7D4B1 /* RACSubscriptionScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */; };\n\t\t57A4D1FF1BA13D7A00F7D4B1 /* RACTargetQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */; };\n\t\t57A4D2001BA13D7A00F7D4B1 /* RACTestScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B719EDA41200A782A9 /* RACTestScheduler.m */; };\n\t\t57A4D2011BA13D7A00F7D4B1 /* RACTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B919EDA41200A782A9 /* RACTuple.m */; };\n\t\t57A4D2021BA13D7A00F7D4B1 /* RACTupleSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BB19EDA41200A782A9 /* RACTupleSequence.m */; };\n\t\t57A4D2031BA13D7A00F7D4B1 /* RACUnarySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BD19EDA41200A782A9 /* RACUnarySequence.m */; };\n\t\t57A4D2041BA13D7A00F7D4B1 /* RACUnit.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BF19EDA41200A782A9 /* RACUnit.m */; };\n\t\t57A4D2051BA13D7A00F7D4B1 /* RACValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C119EDA41200A782A9 /* RACValueTransformer.m */; };\n\t\t57A4D2061BA13D7A00F7D4B1 /* RACDynamicPropertySuperclass.m in Sources */ = {isa = PBXBuildFile; fileRef = D43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */; };\n\t\t57A4D2081BA13D7A00F7D4B1 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; };\n\t\t57A4D20A1BA13D7A00F7D4B1 /* ReactiveCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = D04725EF19E49ED7006002AA /* ReactiveCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D20B1BA13D7A00F7D4B1 /* EXTKeyPathCoding.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666619EDA57100A782A9 /* EXTKeyPathCoding.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D20C1BA13D7A00F7D4B1 /* EXTScope.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666919EDA57100A782A9 /* EXTScope.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D20D1BA13D7A00F7D4B1 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666A19EDA57100A782A9 /* metamacros.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D20E1BA13D7A00F7D4B1 /* NSArray+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D20F1BA13D7A00F7D4B1 /* NSData+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643019EDA41200A782A9 /* NSData+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2101BA13D7A00F7D4B1 /* NSDictionary+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2111BA13D7A00F7D4B1 /* NSEnumerator+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2121BA13D7A00F7D4B1 /* NSFileHandle+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2131BA13D7A00F7D4B1 /* NSIndexSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2141BA13D7A00F7D4B1 /* NSNotificationCenter+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2151BA13D7A00F7D4B1 /* NSObject+RACDeallocating.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2161BA13D7A00F7D4B1 /* NSObject+RACLifting.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644619EDA41200A782A9 /* NSObject+RACLifting.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2171BA13D7A00F7D4B1 /* NSObject+RACPropertySubscribing.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2181BA13D7A00F7D4B1 /* NSObject+RACSelectorSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2191BA13D7A00F7D4B1 /* NSOrderedSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D21A1BA13D7A00F7D4B1 /* NSSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D21B1BA13D7A00F7D4B1 /* NSString+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D21C1BA13D7A00F7D4B1 /* NSString+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645419EDA41200A782A9 /* NSString+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D21E1BA13D7A00F7D4B1 /* NSUserDefaults+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D21F1BA13D7A00F7D4B1 /* RACBehaviorSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646019EDA41200A782A9 /* RACBehaviorSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2201BA13D7A00F7D4B1 /* RACChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646419EDA41200A782A9 /* RACChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2211BA13D7A00F7D4B1 /* RACCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646619EDA41200A782A9 /* RACCommand.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2221BA13D7A00F7D4B1 /* RACCompoundDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646819EDA41200A782A9 /* RACCompoundDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2231BA13D7A00F7D4B1 /* RACDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646D19EDA41200A782A9 /* RACDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2241BA13D7A00F7D4B1 /* RACEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647B19EDA41200A782A9 /* RACEvent.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2251BA13D7A00F7D4B1 /* RACGroupedSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647D19EDA41200A782A9 /* RACGroupedSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2261BA13D7A00F7D4B1 /* RACKVOChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648319EDA41200A782A9 /* RACKVOChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2271BA13D7A00F7D4B1 /* RACMulticastConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648719EDA41200A782A9 /* RACMulticastConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2281BA13D7A00F7D4B1 /* RACQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648E19EDA41200A782A9 /* RACQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2291BA13D7A00F7D4B1 /* RACQueueScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22A1BA13D7A00F7D4B1 /* RACReplaySubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649119EDA41200A782A9 /* RACReplaySubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22B1BA13D7A00F7D4B1 /* RACScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649519EDA41200A782A9 /* RACScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22C1BA13D7A00F7D4B1 /* RACScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649819EDA41200A782A9 /* RACScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22D1BA13D7A00F7D4B1 /* RACScopedDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649919EDA41200A782A9 /* RACScopedDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22E1BA13D7A00F7D4B1 /* RACSequence.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649B19EDA41200A782A9 /* RACSequence.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D22F1BA13D7A00F7D4B1 /* RACSerialDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649D19EDA41200A782A9 /* RACSerialDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2301BA13D7A00F7D4B1 /* RACSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649F19EDA41200A782A9 /* RACSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2311BA13D7A00F7D4B1 /* RACSignal+Operations.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A119EDA41200A782A9 /* RACSignal+Operations.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2321BA13D7A00F7D4B1 /* RACStream.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A619EDA41200A782A9 /* RACStream.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2331BA13D7A00F7D4B1 /* RACSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AB19EDA41200A782A9 /* RACSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2341BA13D7A00F7D4B1 /* RACSubscriber.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AD19EDA41200A782A9 /* RACSubscriber.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2351BA13D7A00F7D4B1 /* RACSubscriptingAssignmentTrampoline.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2361BA13D7A00F7D4B1 /* RACTargetQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2371BA13D7A00F7D4B1 /* RACTestScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B619EDA41200A782A9 /* RACTestScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2381BA13D7A00F7D4B1 /* RACTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B819EDA41200A782A9 /* RACTuple.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D2391BA13D7A00F7D4B1 /* RACUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764BE19EDA41200A782A9 /* RACUnit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57A4D23A1BA13D7A00F7D4B1 /* RACDynamicPropertySuperclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57D4768D1C42063C00EFE697 /* UIControl+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CD19EDA41200A782A9 /* UIControl+RACSignalSupport.m */; };\n\t\t57D476901C4206D400EFE697 /* UIControl+RACSignalSupportPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CF19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m */; };\n\t\t57D476911C4206DA00EFE697 /* UIGestureRecognizer+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D319EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m */; };\n\t\t57D476921C4206DF00EFE697 /* UISegmentedControl+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D919EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m */; };\n\t\t57D476951C4206EC00EFE697 /* UITableViewCell+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E119EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m */; };\n\t\t57D476961C4206EC00EFE697 /* UITableViewHeaderFooterView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E319EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m */; };\n\t\t57D476971C4206EC00EFE697 /* UITextField+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E519EDA41200A782A9 /* UITextField+RACSignalSupport.m */; };\n\t\t57D476981C4206EC00EFE697 /* UITextView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E719EDA41200A782A9 /* UITextView+RACSignalSupport.m */; };\n\t\t57D4769A1C4206F200EFE697 /* UIButton+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C919EDA41200A782A9 /* UIButton+RACCommandSupport.m */; };\n\t\t57D4769B1C4206F200EFE697 /* UICollectionReusableView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CB19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m */; };\n\t\t57DC89A01C5066D400E367B7 /* UIGestureRecognizer+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D219EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A11C50672B00E367B7 /* UIControl+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764CC19EDA41200A782A9 /* UIControl+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A21C50673C00E367B7 /* UISegmentedControl+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D819EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A31C50674300E367B7 /* UITableViewCell+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E019EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A41C50674D00E367B7 /* UITableViewHeaderFooterView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E219EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A51C50675700E367B7 /* UITextField+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E419EDA41200A782A9 /* UITextField+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A61C50675F00E367B7 /* UITextView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E619EDA41200A782A9 /* UITextView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A71C50679700E367B7 /* UIButton+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C819EDA41200A782A9 /* UIButton+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57DC89A81C50679E00E367B7 /* UICollectionReusableView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764CA19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7A7065811A3F88B8001E8354 /* RACKVOProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */; };\n\t\t7A7065821A3F88B8001E8354 /* RACKVOProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */; };\n\t\t7A7065841A3F8967001E8354 /* RACKVOProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A7065831A3F8967001E8354 /* RACKVOProxySpec.m */; };\n\t\t7A7065851A3F8967001E8354 /* RACKVOProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A7065831A3F8967001E8354 /* RACKVOProxySpec.m */; };\n\t\t7DFBED081CDB8C9500EE435B /* ReactiveCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 57A4D2411BA13D7A00F7D4B1 /* ReactiveCocoa.framework */; };\n\t\t7DFBED141CDB8CE600EE435B /* test-data.json in Resources */ = {isa = PBXBuildFile; fileRef = D03766B119EDA60000A782A9 /* test-data.json */; };\n\t\t7DFBED1E1CDB8D7000EE435B /* ReactiveCocoa.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 57A4D2411BA13D7A00F7D4B1 /* ReactiveCocoa.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t7DFBED1F1CDB8D7800EE435B /* Quick.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = D037672B19EDA75D00A782A9 /* Quick.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t7DFBED201CDB8D7D00EE435B /* Nimble.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = D05E662419EDD82000904ACA /* Nimble.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t7DFBED211CDB8D8300EE435B /* Result.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t7DFBED221CDB8DE300EE435B /* ActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D021671C1A6CD50500987861 /* ActionSpec.swift */; };\n\t\t7DFBED231CDB8DE300EE435B /* AtomicSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EE19EF2A7700984962 /* AtomicSpec.swift */; };\n\t\t7DFBED241CDB8DE300EE435B /* BagSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EF19EF2A7700984962 /* BagSpec.swift */; };\n\t\t7DFBED251CDB8DE300EE435B /* DisposableSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F019EF2A7700984962 /* DisposableSpec.swift */; };\n\t\t7DFBED261CDB8DE300EE435B /* FoundationExtensionsSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8170FC01B100EBC004192AD /* FoundationExtensionsSpec.swift */; };\n\t\t7DFBED271CDB8DE300EE435B /* ObjectiveCBridgingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226101A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift */; };\n\t\t7DFBED281CDB8DE300EE435B /* PropertySpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260D1A72F16D00D33B74 /* PropertySpec.swift */; };\n\t\t7DFBED291CDB8DE300EE435B /* SchedulerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F219EF2A7700984962 /* SchedulerSpec.swift */; };\n\t\t7DFBED2A1CDB8DE300EE435B /* SignalLifetimeSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02D260291C1D6DAF003ACC61 /* SignalLifetimeSpec.swift */; };\n\t\t7DFBED2B1CDB8DE300EE435B /* SignalProducerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260A1A72E6C500D33B74 /* SignalProducerSpec.swift */; };\n\t\t7DFBED2C1CDB8DE300EE435B /* SignalProducerLiftingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8024DB11B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift */; };\n\t\t7DFBED2D1CDB8DE300EE435B /* SignalSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226071A72E0E900D33B74 /* SignalSpec.swift */; };\n\t\t7DFBED2E1CDB8DE300EE435B /* FlattenSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA6F284F1C52626B001879D2 /* FlattenSpec.swift */; };\n\t\t7DFBED2F1CDB8DE300EE435B /* TestError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B696FB801A7640C00075236D /* TestError.swift */; };\n\t\t7DFBED301CDB8DE300EE435B /* TestLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B64731CD38B2B003F2376 /* TestLogger.swift */; };\n\t\t7DFBED321CDB8DE300EE435B /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667819EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m */; };\n\t\t7DFBED331CDB8DE300EE435B /* NSNotificationCenterRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667919EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m */; };\n\t\t7DFBED351CDB8DE300EE435B /* NSObjectRACDeallocatingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667B19EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m */; };\n\t\t7DFBED361CDB8DE300EE435B /* NSObjectRACLiftingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667C19EDA60000A782A9 /* NSObjectRACLiftingSpec.m */; };\n\t\t7DFBED381CDB8DE300EE435B /* NSObjectRACPropertySubscribingExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667E19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m */; };\n\t\t7DFBED391CDB8DE300EE435B /* NSObjectRACPropertySubscribingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667F19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m */; };\n\t\t7DFBED3A1CDB8DE300EE435B /* NSObjectRACSelectorSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668019EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m */; };\n\t\t7DFBED3B1CDB8DE300EE435B /* NSStringRACKeyPathUtilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668119EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m */; };\n\t\t7DFBED3D1CDB8DE300EE435B /* NSUserDefaultsRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m */; };\n\t\t7DFBED3E1CDB8DE300EE435B /* RACBlockTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668619EDA60000A782A9 /* RACBlockTrampolineSpec.m */; };\n\t\t7DFBED401CDB8DE300EE435B /* RACChannelExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668819EDA60000A782A9 /* RACChannelExamples.m */; };\n\t\t7DFBED411CDB8DE300EE435B /* RACChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668919EDA60000A782A9 /* RACChannelSpec.m */; };\n\t\t7DFBED421CDB8DE300EE435B /* RACCommandSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668A19EDA60000A782A9 /* RACCommandSpec.m */; };\n\t\t7DFBED431CDB8DE300EE435B /* RACCompoundDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668B19EDA60000A782A9 /* RACCompoundDisposableSpec.m */; };\n\t\t7DFBED451CDB8DE300EE435B /* RACControlCommandExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668D19EDA60000A782A9 /* RACControlCommandExamples.m */; };\n\t\t7DFBED461CDB8DE300EE435B /* RACDelegateProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668E19EDA60000A782A9 /* RACDelegateProxySpec.m */; };\n\t\t7DFBED471CDB8DE300EE435B /* RACDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668F19EDA60000A782A9 /* RACDisposableSpec.m */; };\n\t\t7DFBED481CDB8DE300EE435B /* RACEventSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669019EDA60000A782A9 /* RACEventSpec.m */; };\n\t\t7DFBED491CDB8DE300EE435B /* RACKVOChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669119EDA60000A782A9 /* RACKVOChannelSpec.m */; };\n\t\t7DFBED4A1CDB8DE300EE435B /* RACKVOProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A7065831A3F8967001E8354 /* RACKVOProxySpec.m */; };\n\t\t7DFBED4B1CDB8DE300EE435B /* RACKVOWrapperSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669219EDA60000A782A9 /* RACKVOWrapperSpec.m */; };\n\t\t7DFBED4C1CDB8DE300EE435B /* RACMulticastConnectionSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669319EDA60000A782A9 /* RACMulticastConnectionSpec.m */; };\n\t\t7DFBED4E1CDB8DE300EE435B /* RACPropertySignalExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669519EDA60000A782A9 /* RACPropertySignalExamples.m */; };\n\t\t7DFBED4F1CDB8DE300EE435B /* RACSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669619EDA60000A782A9 /* RACSchedulerSpec.m */; };\n\t\t7DFBED501CDB8DE300EE435B /* RACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669719EDA60000A782A9 /* RACSequenceAdditionsSpec.m */; };\n\t\t7DFBED521CDB8DE300EE435B /* RACSequenceExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669919EDA60000A782A9 /* RACSequenceExamples.m */; };\n\t\t7DFBED531CDB8DE300EE435B /* RACSequenceSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669A19EDA60000A782A9 /* RACSequenceSpec.m */; };\n\t\t7DFBED541CDB8DE300EE435B /* RACSerialDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669B19EDA60000A782A9 /* RACSerialDisposableSpec.m */; };\n\t\t7DFBED551CDB8DE300EE435B /* RACSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669C19EDA60000A782A9 /* RACSignalSpec.m */; };\n\t\t7DFBED571CDB8DE300EE435B /* RACStreamExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A019EDA60000A782A9 /* RACStreamExamples.m */; };\n\t\t7DFBED591CDB8DE300EE435B /* RACSubclassObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A219EDA60000A782A9 /* RACSubclassObject.m */; };\n\t\t7DFBED5A1CDB8DE300EE435B /* RACSubjectSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A319EDA60000A782A9 /* RACSubjectSpec.m */; };\n\t\t7DFBED5C1CDB8DE300EE435B /* RACSubscriberExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A519EDA60000A782A9 /* RACSubscriberExamples.m */; };\n\t\t7DFBED5D1CDB8DE300EE435B /* RACSubscriberSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A619EDA60000A782A9 /* RACSubscriberSpec.m */; };\n\t\t7DFBED5E1CDB8DE300EE435B /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A719EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m */; };\n\t\t7DFBED5F1CDB8DE300EE435B /* RACTargetQueueSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A819EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m */; };\n\t\t7DFBED601CDB8DE300EE435B /* RACTupleSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B019EDA60000A782A9 /* RACTupleSpec.m */; };\n\t\t7DFBED631CDB8DE300EE435B /* UIBarButtonItemRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B419EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m */; };\n\t\t7DFBED641CDB8DE300EE435B /* UIButtonRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B519EDA60000A782A9 /* UIButtonRACSupportSpec.m */; };\n\t\t7DFBED671CDB8DE300EE435B /* RACTestExampleScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131819EF2D9700984962 /* RACTestExampleScheduler.m */; };\n\t\t7DFBED691CDB8DE300EE435B /* RACTestObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131A19EF2D9700984962 /* RACTestObject.m */; };\n\t\t7DFBED6A1CDB8DE300EE435B /* RACTestSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131B19EF2D9700984962 /* RACTestSchedulerSpec.m */; };\n\t\t7DFBED6C1CDB8DE300EE435B /* RACTestUIButton.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131D19EF2D9700984962 /* RACTestUIButton.m */; };\n\t\t7DFBED6D1CDB8F7D00EE435B /* SignalProducerNimbleMatchers.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA6B94A1A76044800C846D1 /* SignalProducerNimbleMatchers.swift */; };\n\t\t7DFBED6E1CDB918900EE435B /* UIBarButtonItem+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C719EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m */; };\n\t\t7DFBED6F1CDB926400EE435B /* UIBarButtonItem+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C619EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA1046B7A1BFF5661004D8045 /* EXTRuntimeExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */; settings = {ATTRIBUTES = (Private, ); }; };\n\t\tA1046B7B1BFF5662004D8045 /* EXTRuntimeExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */; settings = {ATTRIBUTES = (Private, ); }; };\n\t\tA1046B7C1BFF5662004D8045 /* EXTRuntimeExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */; settings = {ATTRIBUTES = (Private, ); }; };\n\t\tA1046B7D1BFF5664004D8045 /* EXTRuntimeExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */; settings = {ATTRIBUTES = (Private, ); }; };\n\t\tA9B3155E1B3940750001CB9C /* EXTRuntimeExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */; };\n\t\tA9B315601B3940750001CB9C /* NSArray+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */; };\n\t\tA9B315631B3940750001CB9C /* NSData+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643119EDA41200A782A9 /* NSData+RACSupport.m */; };\n\t\tA9B315641B3940750001CB9C /* NSDictionary+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */; };\n\t\tA9B315651B3940750001CB9C /* NSEnumerator+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */; };\n\t\tA9B315661B3940750001CB9C /* NSFileHandle+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */; };\n\t\tA9B315671B3940750001CB9C /* NSIndexSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */; };\n\t\tA9B315681B3940750001CB9C /* NSInvocation+RACTypeParsing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */; };\n\t\tA9B315691B3940750001CB9C /* NSNotificationCenter+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */; };\n\t\tA9B3156B1B3940750001CB9C /* NSObject+RACDeallocating.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */; };\n\t\tA9B3156C1B3940750001CB9C /* NSObject+RACDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644319EDA41200A782A9 /* NSObject+RACDescription.m */; };\n\t\tA9B3156D1B3940750001CB9C /* NSObject+RACKVOWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */; };\n\t\tA9B3156E1B3940750001CB9C /* NSObject+RACLifting.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644719EDA41200A782A9 /* NSObject+RACLifting.m */; };\n\t\tA9B3156F1B3940750001CB9C /* NSObject+RACPropertySubscribing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */; };\n\t\tA9B315701B3940750001CB9C /* NSObject+RACSelectorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */; };\n\t\tA9B315711B3940750001CB9C /* NSOrderedSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */; };\n\t\tA9B315721B3940750001CB9C /* NSSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */; };\n\t\tA9B315731B3940750001CB9C /* NSString+RACKeyPathUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */; };\n\t\tA9B315741B3940750001CB9C /* NSString+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */; };\n\t\tA9B315751B3940750001CB9C /* NSString+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645519EDA41200A782A9 /* NSString+RACSupport.m */; };\n\t\tA9B315781B3940750001CB9C /* NSUserDefaults+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */; };\n\t\tA9B315791B3940750001CB9C /* RACArraySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645D19EDA41200A782A9 /* RACArraySequence.m */; };\n\t\tA9B3157A1B3940750001CB9C /* RACBehaviorSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646119EDA41200A782A9 /* RACBehaviorSubject.m */; };\n\t\tA9B3157B1B3940750001CB9C /* RACBlockTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646319EDA41200A782A9 /* RACBlockTrampoline.m */; };\n\t\tA9B3157C1B3940750001CB9C /* RACChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646519EDA41200A782A9 /* RACChannel.m */; };\n\t\tA9B3157D1B3940750001CB9C /* RACCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646719EDA41200A782A9 /* RACCommand.m */; };\n\t\tA9B3157E1B3940750001CB9C /* RACCompoundDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646919EDA41200A782A9 /* RACCompoundDisposable.m */; };\n\t\tA9B3157F1B3940750001CB9C /* RACDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646C19EDA41200A782A9 /* RACDelegateProxy.m */; };\n\t\tA9B315801B3940750001CB9C /* RACDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646E19EDA41200A782A9 /* RACDisposable.m */; };\n\t\tA9B315811B3940750001CB9C /* RACDynamicSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647019EDA41200A782A9 /* RACDynamicSequence.m */; };\n\t\tA9B315821B3940750001CB9C /* RACDynamicSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647219EDA41200A782A9 /* RACDynamicSignal.m */; };\n\t\tA9B315831B3940750001CB9C /* RACEagerSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647419EDA41200A782A9 /* RACEagerSequence.m */; };\n\t\tA9B315841B3940750001CB9C /* RACEmptySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647619EDA41200A782A9 /* RACEmptySequence.m */; };\n\t\tA9B315851B3940750001CB9C /* RACEmptySignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647819EDA41200A782A9 /* RACEmptySignal.m */; };\n\t\tA9B315861B3940750001CB9C /* RACErrorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647A19EDA41200A782A9 /* RACErrorSignal.m */; };\n\t\tA9B315871B3940750001CB9C /* RACEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647C19EDA41200A782A9 /* RACEvent.m */; };\n\t\tA9B315881B3940750001CB9C /* RACGroupedSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647E19EDA41200A782A9 /* RACGroupedSignal.m */; };\n\t\tA9B315891B3940750001CB9C /* RACImmediateScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648019EDA41200A782A9 /* RACImmediateScheduler.m */; };\n\t\tA9B3158A1B3940750001CB9C /* RACIndexSetSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648219EDA41200A782A9 /* RACIndexSetSequence.m */; };\n\t\tA9B3158B1B3940750001CB9C /* RACKVOChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648419EDA41200A782A9 /* RACKVOChannel.m */; };\n\t\tA9B3158C1B3940750001CB9C /* RACKVOProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */; };\n\t\tA9B3158D1B3940750001CB9C /* RACKVOTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648619EDA41200A782A9 /* RACKVOTrampoline.m */; };\n\t\tA9B3158E1B3940750001CB9C /* RACMulticastConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648819EDA41200A782A9 /* RACMulticastConnection.m */; };\n\t\tA9B315901B3940750001CB9C /* RACPassthroughSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */; };\n\t\tA9B315911B3940750001CB9C /* RACQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648F19EDA41200A782A9 /* RACQueueScheduler.m */; };\n\t\tA9B315921B3940750001CB9C /* RACReplaySubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649219EDA41200A782A9 /* RACReplaySubject.m */; };\n\t\tA9B315931B3940750001CB9C /* RACReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649419EDA41200A782A9 /* RACReturnSignal.m */; };\n\t\tA9B315941B3940750001CB9C /* RACScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649619EDA41200A782A9 /* RACScheduler.m */; };\n\t\tA9B315951B3940750001CB9C /* RACScopedDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649A19EDA41200A782A9 /* RACScopedDisposable.m */; };\n\t\tA9B315961B3940750001CB9C /* RACSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649C19EDA41200A782A9 /* RACSequence.m */; };\n\t\tA9B315971B3940750001CB9C /* RACSerialDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649E19EDA41200A782A9 /* RACSerialDisposable.m */; };\n\t\tA9B315981B3940750001CB9C /* RACSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A019EDA41200A782A9 /* RACSignal.m */; };\n\t\tA9B315991B3940750001CB9C /* RACSignal+Operations.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A219EDA41200A782A9 /* RACSignal+Operations.m */; };\n\t\tA9B3159A1B3940750001CB9C /* RACSignalSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A519EDA41200A782A9 /* RACSignalSequence.m */; };\n\t\tA9B3159B1B3940750001CB9C /* RACStream.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A719EDA41200A782A9 /* RACStream.m */; };\n\t\tA9B3159C1B3940750001CB9C /* RACStringSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AA19EDA41200A782A9 /* RACStringSequence.m */; };\n\t\tA9B3159D1B3940750001CB9C /* RACSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AC19EDA41200A782A9 /* RACSubject.m */; };\n\t\tA9B3159E1B3940750001CB9C /* RACSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AE19EDA41200A782A9 /* RACSubscriber.m */; };\n\t\tA9B3159F1B3940750001CB9C /* RACSubscriptingAssignmentTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */; };\n\t\tA9B315A01B3940750001CB9C /* RACSubscriptionScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */; };\n\t\tA9B315A11B3940750001CB9C /* RACTargetQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */; };\n\t\tA9B315A21B3940750001CB9C /* RACTestScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B719EDA41200A782A9 /* RACTestScheduler.m */; };\n\t\tA9B315A31B3940750001CB9C /* RACTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B919EDA41200A782A9 /* RACTuple.m */; };\n\t\tA9B315A41B3940750001CB9C /* RACTupleSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BB19EDA41200A782A9 /* RACTupleSequence.m */; };\n\t\tA9B315A51B3940750001CB9C /* RACUnarySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BD19EDA41200A782A9 /* RACUnarySequence.m */; };\n\t\tA9B315A61B3940750001CB9C /* RACUnit.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BF19EDA41200A782A9 /* RACUnit.m */; };\n\t\tA9B315A71B3940750001CB9C /* RACValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C119EDA41200A782A9 /* RACValueTransformer.m */; };\n\t\tA9B315BB1B3940750001CB9C /* RACDynamicPropertySuperclass.m in Sources */ = {isa = PBXBuildFile; fileRef = D43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */; };\n\t\tA9B315BC1B3940810001CB9C /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BE19EF2A5800984962 /* Disposable.swift */; };\n\t\tA9B315BE1B3940810001CB9C /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B51A69A3DB00AD8286 /* Event.swift */; };\n\t\tA9B315BF1B3940810001CB9C /* ObjectiveCBridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */; };\n\t\tA9B315C01B3940810001CB9C /* Scheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C819EF2A5800984962 /* Scheduler.swift */; };\n\t\tA9B315C11B3940810001CB9C /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54AF1A69A2AC00AD8286 /* Action.swift */; };\n\t\tA9B315C21B3940810001CB9C /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B01A69A2AC00AD8286 /* Property.swift */; };\n\t\tA9B315C31B3940810001CB9C /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B11A69A2AC00AD8286 /* Signal.swift */; };\n\t\tA9B315C41B3940810001CB9C /* SignalProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B21A69A2AC00AD8286 /* SignalProducer.swift */; };\n\t\tA9B315C51B3940810001CB9C /* Atomic.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BB19EF2A5800984962 /* Atomic.swift */; };\n\t\tA9B315C61B3940810001CB9C /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BC19EF2A5800984962 /* Bag.swift */; };\n\t\tA9B315C71B3940810001CB9C /* TupleExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00004081A46864E000E7D41 /* TupleExtensions.swift */; };\n\t\tA9B315C81B3940810001CB9C /* FoundationExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */; };\n\t\tA9B315C91B3940980001CB9C /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; };\n\t\tA9B315CA1B3940AB0001CB9C /* ReactiveCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = D04725EF19E49ED7006002AA /* ReactiveCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315CB1B3940AB0001CB9C /* EXTKeyPathCoding.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666619EDA57100A782A9 /* EXTKeyPathCoding.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315CD1B3940AB0001CB9C /* EXTScope.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666919EDA57100A782A9 /* EXTScope.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315CE1B3940AB0001CB9C /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666A19EDA57100A782A9 /* metamacros.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D01B3940AB0001CB9C /* NSArray+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D31B3940AB0001CB9C /* NSData+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643019EDA41200A782A9 /* NSData+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D41B3940AB0001CB9C /* NSDictionary+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D51B3940AB0001CB9C /* NSEnumerator+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D61B3940AB0001CB9C /* NSFileHandle+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D71B3940AB0001CB9C /* NSIndexSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315D91B3940AB0001CB9C /* NSNotificationCenter+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315DB1B3940AB0001CB9C /* NSObject+RACDeallocating.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315DE1B3940AB0001CB9C /* NSObject+RACLifting.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644619EDA41200A782A9 /* NSObject+RACLifting.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315DF1B3940AB0001CB9C /* NSObject+RACPropertySubscribing.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E01B3940AB0001CB9C /* NSObject+RACSelectorSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E11B3940AB0001CB9C /* NSOrderedSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E21B3940AB0001CB9C /* NSSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E41B3940AB0001CB9C /* NSString+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E51B3940AB0001CB9C /* NSString+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645419EDA41200A782A9 /* NSString+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315E81B3940AB0001CB9C /* NSUserDefaults+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315EA1B3940AB0001CB9C /* RACBehaviorSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646019EDA41200A782A9 /* RACBehaviorSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315EC1B3940AB0001CB9C /* RACChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646419EDA41200A782A9 /* RACChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315ED1B3940AC0001CB9C /* RACCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646619EDA41200A782A9 /* RACCommand.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315EE1B3940AC0001CB9C /* RACCompoundDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646819EDA41200A782A9 /* RACCompoundDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315F01B3940AC0001CB9C /* RACDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646D19EDA41200A782A9 /* RACDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315F71B3940AC0001CB9C /* RACEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647B19EDA41200A782A9 /* RACEvent.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315F81B3940AC0001CB9C /* RACGroupedSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647D19EDA41200A782A9 /* RACGroupedSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315FB1B3940AC0001CB9C /* RACKVOChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648319EDA41200A782A9 /* RACKVOChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B315FE1B3940AC0001CB9C /* RACMulticastConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648719EDA41200A782A9 /* RACMulticastConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316021B3940AD0001CB9C /* RACQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648E19EDA41200A782A9 /* RACQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316031B3940AD0001CB9C /* RACQueueScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316041B3940AD0001CB9C /* RACReplaySubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649119EDA41200A782A9 /* RACReplaySubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316061B3940AD0001CB9C /* RACScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649519EDA41200A782A9 /* RACScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316081B3940AD0001CB9C /* RACScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649819EDA41200A782A9 /* RACScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316091B3940AD0001CB9C /* RACScopedDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649919EDA41200A782A9 /* RACScopedDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3160A1B3940AD0001CB9C /* RACSequence.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649B19EDA41200A782A9 /* RACSequence.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3160B1B3940AD0001CB9C /* RACSerialDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649D19EDA41200A782A9 /* RACSerialDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3160C1B3940AE0001CB9C /* RACSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649F19EDA41200A782A9 /* RACSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3160D1B3940AE0001CB9C /* RACSignal+Operations.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A119EDA41200A782A9 /* RACSignal+Operations.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3160F1B3940AE0001CB9C /* RACStream.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A619EDA41200A782A9 /* RACStream.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316121B3940AE0001CB9C /* RACSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AB19EDA41200A782A9 /* RACSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316131B3940AE0001CB9C /* RACSubscriber.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AD19EDA41200A782A9 /* RACSubscriber.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316151B3940AE0001CB9C /* RACSubscriptingAssignmentTrampoline.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316171B3940AF0001CB9C /* RACTargetQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316181B3940AF0001CB9C /* RACTestScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B619EDA41200A782A9 /* RACTestScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316191B3940AF0001CB9C /* RACTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B819EDA41200A782A9 /* RACTuple.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B3161C1B3940AF0001CB9C /* RACUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764BE19EDA41200A782A9 /* RACUnit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316311B3940B20001CB9C /* RACDynamicPropertySuperclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tA9B316341B394C7F0001CB9C /* RACCompoundDisposableProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */; };\n\t\tA9B316351B394C7F0001CB9C /* RACSignalProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D03764A319EDA41200A782A9 /* RACSignalProvider.d */; };\n\t\tA9F793341B60D0140026BCBA /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = D871D69E1B3B29A40070F16C /* Optional.swift */; };\n\t\tB696FB811A7640C00075236D /* TestError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B696FB801A7640C00075236D /* TestError.swift */; };\n\t\tB696FB821A7640C00075236D /* TestError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B696FB801A7640C00075236D /* TestError.swift */; };\n\t\tBEBDD6E51CDC292D009A75A9 /* RACDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646B19EDA41200A782A9 /* RACDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tBEBDD6E61CDC292D009A75A9 /* RACDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646B19EDA41200A782A9 /* RACDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tBEBDD6E71CDC292E009A75A9 /* RACDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646B19EDA41200A782A9 /* RACDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tBEBDD6E81CDC292F009A75A9 /* RACDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646B19EDA41200A782A9 /* RACDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tBFA6B94D1A7604D400C846D1 /* SignalProducerNimbleMatchers.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA6B94A1A76044800C846D1 /* SignalProducerNimbleMatchers.swift */; };\n\t\tBFA6B94E1A7604D500C846D1 /* SignalProducerNimbleMatchers.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA6B94A1A76044800C846D1 /* SignalProducerNimbleMatchers.swift */; };\n\t\tC7142DBC1CDEA167009F402D /* CocoaAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7142DBB1CDEA167009F402D /* CocoaAction.swift */; };\n\t\tC7142DBD1CDEA194009F402D /* CocoaAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7142DBB1CDEA167009F402D /* CocoaAction.swift */; };\n\t\tC7142DBE1CDEA194009F402D /* CocoaAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7142DBB1CDEA167009F402D /* CocoaAction.swift */; };\n\t\tC7142DBF1CDEA195009F402D /* CocoaAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7142DBB1CDEA167009F402D /* CocoaAction.swift */; };\n\t\tC79B64741CD38B2B003F2376 /* TestLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B64731CD38B2B003F2376 /* TestLogger.swift */; };\n\t\tC79B64751CD38B2B003F2376 /* TestLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B64731CD38B2B003F2376 /* TestLogger.swift */; };\n\t\tC79B647C1CD52E23003F2376 /* EventLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B647B1CD52E23003F2376 /* EventLogger.swift */; };\n\t\tC79B647D1CD52E4A003F2376 /* EventLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B647B1CD52E23003F2376 /* EventLogger.swift */; };\n\t\tC79B647F1CD52E4D003F2376 /* EventLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B647B1CD52E23003F2376 /* EventLogger.swift */; };\n\t\tC79B64801CD52E4E003F2376 /* EventLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79B647B1CD52E23003F2376 /* EventLogger.swift */; };\n\t\tCA6F28501C52626B001879D2 /* FlattenSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA6F284F1C52626B001879D2 /* FlattenSpec.swift */; };\n\t\tCA6F28511C52626B001879D2 /* FlattenSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA6F284F1C52626B001879D2 /* FlattenSpec.swift */; };\n\t\tCD0C45DE1CC9A288009F5BF0 /* DynamicProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */; };\n\t\tCD0C45DF1CC9A288009F5BF0 /* DynamicProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */; };\n\t\tCD0C45E01CC9A288009F5BF0 /* DynamicProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */; };\n\t\tCD0C45E11CC9A288009F5BF0 /* DynamicProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */; };\n\t\tCD8401831CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD8401821CEE8ED7009F0ABF /* CocoaActionSpec.swift */; };\n\t\tCD8401841CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD8401821CEE8ED7009F0ABF /* CocoaActionSpec.swift */; };\n\t\tCD8401851CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD8401821CEE8ED7009F0ABF /* CocoaActionSpec.swift */; };\n\t\tCDC42E2F1AE7AB8B00965373 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; };\n\t\tCDC42E301AE7AB8B00965373 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; };\n\t\tCDC42E311AE7AB8B00965373 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; };\n\t\tCDC42E331AE7AC6D00965373 /* Result.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = CDC42E2E1AE7AB8B00965373 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\tCDCD247A1C277EEC00710AEE /* AtomicSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EE19EF2A7700984962 /* AtomicSpec.swift */; };\n\t\tCDCD247B1C277EED00710AEE /* AtomicSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312EE19EF2A7700984962 /* AtomicSpec.swift */; };\n\t\tCDF066CA1CDC1CA200199626 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D05E662419EDD82000904ACA /* Nimble.framework */; };\n\t\tCDF066CB1CDC1CA200199626 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D037672B19EDA75D00A782A9 /* Quick.framework */; };\n\t\tD00004091A46864E000E7D41 /* TupleExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00004081A46864E000E7D41 /* TupleExtensions.swift */; };\n\t\tD000040A1A46864E000E7D41 /* TupleExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00004081A46864E000E7D41 /* TupleExtensions.swift */; };\n\t\tD01B7B6219EDD8FE00D26E01 /* Nimble.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = D05E662419EDD82000904ACA /* Nimble.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\tD01B7B6319EDD8FE00D26E01 /* Quick.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = D037672B19EDA75D00A782A9 /* Quick.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\tD01B7B6419EDD94B00D26E01 /* ReactiveCocoa.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = D047260C19E49F82006002AA /* ReactiveCocoa.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\tD021671D1A6CD50500987861 /* ActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D021671C1A6CD50500987861 /* ActionSpec.swift */; };\n\t\tD021671E1A6CD50500987861 /* ActionSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D021671C1A6CD50500987861 /* ActionSpec.swift */; };\n\t\tD03764E819EDA41200A782A9 /* NSArray+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764E919EDA41200A782A9 /* NSArray+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764EA19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */; };\n\t\tD03764EB19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */; };\n\t\tD03764EC19EDA41200A782A9 /* NSControl+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642C19EDA41200A782A9 /* NSControl+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764EE19EDA41200A782A9 /* NSControl+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642D19EDA41200A782A9 /* NSControl+RACCommandSupport.m */; };\n\t\tD03764F019EDA41200A782A9 /* NSControl+RACTextSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037642E19EDA41200A782A9 /* NSControl+RACTextSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764F219EDA41200A782A9 /* NSControl+RACTextSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037642F19EDA41200A782A9 /* NSControl+RACTextSignalSupport.m */; };\n\t\tD03764F419EDA41200A782A9 /* NSData+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643019EDA41200A782A9 /* NSData+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764F519EDA41200A782A9 /* NSData+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643019EDA41200A782A9 /* NSData+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764F619EDA41200A782A9 /* NSData+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643119EDA41200A782A9 /* NSData+RACSupport.m */; };\n\t\tD03764F719EDA41200A782A9 /* NSData+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643119EDA41200A782A9 /* NSData+RACSupport.m */; };\n\t\tD03764F819EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764F919EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764FA19EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */; };\n\t\tD03764FB19EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */; };\n\t\tD03764FC19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764FD19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03764FE19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */; };\n\t\tD03764FF19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */; };\n\t\tD037650019EDA41200A782A9 /* NSFileHandle+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650119EDA41200A782A9 /* NSFileHandle+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650219EDA41200A782A9 /* NSFileHandle+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */; };\n\t\tD037650319EDA41200A782A9 /* NSFileHandle+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */; };\n\t\tD037650419EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650519EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650619EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */; };\n\t\tD037650719EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */; };\n\t\tD037650A19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */; };\n\t\tD037650B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */; };\n\t\tD037650C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037650E19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */; };\n\t\tD037650F19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */; };\n\t\tD037651019EDA41200A782A9 /* NSObject+RACAppKitBindings.h in Headers */ = {isa = PBXBuildFile; fileRef = D037643E19EDA41200A782A9 /* NSObject+RACAppKitBindings.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037651219EDA41200A782A9 /* NSObject+RACAppKitBindings.m in Sources */ = {isa = PBXBuildFile; fileRef = D037643F19EDA41200A782A9 /* NSObject+RACAppKitBindings.m */; };\n\t\tD037651419EDA41200A782A9 /* NSObject+RACDeallocating.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037651519EDA41200A782A9 /* NSObject+RACDeallocating.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037651619EDA41200A782A9 /* NSObject+RACDeallocating.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */; };\n\t\tD037651719EDA41200A782A9 /* NSObject+RACDeallocating.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */; };\n\t\tD037651A19EDA41200A782A9 /* NSObject+RACDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644319EDA41200A782A9 /* NSObject+RACDescription.m */; };\n\t\tD037651B19EDA41200A782A9 /* NSObject+RACDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644319EDA41200A782A9 /* NSObject+RACDescription.m */; };\n\t\tD037651E19EDA41200A782A9 /* NSObject+RACKVOWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */; };\n\t\tD037651F19EDA41200A782A9 /* NSObject+RACKVOWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */; };\n\t\tD037652019EDA41200A782A9 /* NSObject+RACLifting.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644619EDA41200A782A9 /* NSObject+RACLifting.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652119EDA41200A782A9 /* NSObject+RACLifting.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644619EDA41200A782A9 /* NSObject+RACLifting.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652219EDA41200A782A9 /* NSObject+RACLifting.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644719EDA41200A782A9 /* NSObject+RACLifting.m */; };\n\t\tD037652319EDA41200A782A9 /* NSObject+RACLifting.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644719EDA41200A782A9 /* NSObject+RACLifting.m */; };\n\t\tD037652419EDA41200A782A9 /* NSObject+RACPropertySubscribing.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652519EDA41200A782A9 /* NSObject+RACPropertySubscribing.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652619EDA41200A782A9 /* NSObject+RACPropertySubscribing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */; };\n\t\tD037652719EDA41200A782A9 /* NSObject+RACPropertySubscribing.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */; };\n\t\tD037652819EDA41200A782A9 /* NSObject+RACSelectorSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652919EDA41200A782A9 /* NSObject+RACSelectorSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652A19EDA41200A782A9 /* NSObject+RACSelectorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */; };\n\t\tD037652B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */; };\n\t\tD037652C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037652E19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */; };\n\t\tD037652F19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */; };\n\t\tD037653019EDA41200A782A9 /* NSSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653119EDA41200A782A9 /* NSSet+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653219EDA41200A782A9 /* NSSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */; };\n\t\tD037653319EDA41200A782A9 /* NSSet+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */; };\n\t\tD037653619EDA41200A782A9 /* NSString+RACKeyPathUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */; };\n\t\tD037653719EDA41200A782A9 /* NSString+RACKeyPathUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */; };\n\t\tD037653819EDA41200A782A9 /* NSString+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653919EDA41200A782A9 /* NSString+RACSequenceAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653A19EDA41200A782A9 /* NSString+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */; };\n\t\tD037653B19EDA41200A782A9 /* NSString+RACSequenceAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */; };\n\t\tD037653C19EDA41200A782A9 /* NSString+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645419EDA41200A782A9 /* NSString+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653D19EDA41200A782A9 /* NSString+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645419EDA41200A782A9 /* NSString+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037653E19EDA41200A782A9 /* NSString+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645519EDA41200A782A9 /* NSString+RACSupport.m */; };\n\t\tD037653F19EDA41200A782A9 /* NSString+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645519EDA41200A782A9 /* NSString+RACSupport.m */; };\n\t\tD037654019EDA41200A782A9 /* NSText+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645619EDA41200A782A9 /* NSText+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037654219EDA41200A782A9 /* NSText+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645719EDA41200A782A9 /* NSText+RACSignalSupport.m */; };\n\t\tD037654419EDA41200A782A9 /* NSURLConnection+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645819EDA41200A782A9 /* NSURLConnection+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037654519EDA41200A782A9 /* NSURLConnection+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645819EDA41200A782A9 /* NSURLConnection+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037654619EDA41200A782A9 /* NSURLConnection+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645919EDA41200A782A9 /* NSURLConnection+RACSupport.m */; };\n\t\tD037654719EDA41200A782A9 /* NSURLConnection+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645919EDA41200A782A9 /* NSURLConnection+RACSupport.m */; };\n\t\tD037654819EDA41200A782A9 /* NSUserDefaults+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037654919EDA41200A782A9 /* NSUserDefaults+RACSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037654A19EDA41200A782A9 /* NSUserDefaults+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */; };\n\t\tD037654B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */; };\n\t\tD037654E19EDA41200A782A9 /* RACArraySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645D19EDA41200A782A9 /* RACArraySequence.m */; };\n\t\tD037654F19EDA41200A782A9 /* RACArraySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037645D19EDA41200A782A9 /* RACArraySequence.m */; };\n\t\tD037655619EDA41200A782A9 /* RACBehaviorSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646119EDA41200A782A9 /* RACBehaviorSubject.m */; };\n\t\tD037655719EDA41200A782A9 /* RACBehaviorSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646119EDA41200A782A9 /* RACBehaviorSubject.m */; };\n\t\tD037655A19EDA41200A782A9 /* RACBlockTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646319EDA41200A782A9 /* RACBlockTrampoline.m */; };\n\t\tD037655B19EDA41200A782A9 /* RACBlockTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646319EDA41200A782A9 /* RACBlockTrampoline.m */; };\n\t\tD037655C19EDA41200A782A9 /* RACChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646419EDA41200A782A9 /* RACChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037655D19EDA41200A782A9 /* RACChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646419EDA41200A782A9 /* RACChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037655E19EDA41200A782A9 /* RACChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646519EDA41200A782A9 /* RACChannel.m */; };\n\t\tD037655F19EDA41200A782A9 /* RACChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646519EDA41200A782A9 /* RACChannel.m */; };\n\t\tD037656019EDA41200A782A9 /* RACCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646619EDA41200A782A9 /* RACCommand.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037656119EDA41200A782A9 /* RACCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646619EDA41200A782A9 /* RACCommand.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037656219EDA41200A782A9 /* RACCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646719EDA41200A782A9 /* RACCommand.m */; };\n\t\tD037656319EDA41200A782A9 /* RACCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646719EDA41200A782A9 /* RACCommand.m */; };\n\t\tD037656419EDA41200A782A9 /* RACCompoundDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646819EDA41200A782A9 /* RACCompoundDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037656519EDA41200A782A9 /* RACCompoundDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646819EDA41200A782A9 /* RACCompoundDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037656619EDA41200A782A9 /* RACCompoundDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646919EDA41200A782A9 /* RACCompoundDisposable.m */; };\n\t\tD037656719EDA41200A782A9 /* RACCompoundDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646919EDA41200A782A9 /* RACCompoundDisposable.m */; };\n\t\tD037656819EDA41200A782A9 /* RACCompoundDisposableProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */; };\n\t\tD037656919EDA41200A782A9 /* RACCompoundDisposableProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */; };\n\t\tD037656C19EDA41200A782A9 /* RACDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646C19EDA41200A782A9 /* RACDelegateProxy.m */; };\n\t\tD037656D19EDA41200A782A9 /* RACDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646C19EDA41200A782A9 /* RACDelegateProxy.m */; };\n\t\tD037656E19EDA41200A782A9 /* RACDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646D19EDA41200A782A9 /* RACDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037656F19EDA41200A782A9 /* RACDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646D19EDA41200A782A9 /* RACDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037657019EDA41200A782A9 /* RACDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646E19EDA41200A782A9 /* RACDisposable.m */; };\n\t\tD037657119EDA41200A782A9 /* RACDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037646E19EDA41200A782A9 /* RACDisposable.m */; };\n\t\tD037657419EDA41200A782A9 /* RACDynamicSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647019EDA41200A782A9 /* RACDynamicSequence.m */; };\n\t\tD037657519EDA41200A782A9 /* RACDynamicSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647019EDA41200A782A9 /* RACDynamicSequence.m */; };\n\t\tD037657819EDA41200A782A9 /* RACDynamicSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647219EDA41200A782A9 /* RACDynamicSignal.m */; };\n\t\tD037657919EDA41200A782A9 /* RACDynamicSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647219EDA41200A782A9 /* RACDynamicSignal.m */; };\n\t\tD037657C19EDA41200A782A9 /* RACEagerSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647419EDA41200A782A9 /* RACEagerSequence.m */; };\n\t\tD037657D19EDA41200A782A9 /* RACEagerSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647419EDA41200A782A9 /* RACEagerSequence.m */; };\n\t\tD037658019EDA41200A782A9 /* RACEmptySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647619EDA41200A782A9 /* RACEmptySequence.m */; };\n\t\tD037658119EDA41200A782A9 /* RACEmptySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647619EDA41200A782A9 /* RACEmptySequence.m */; };\n\t\tD037658419EDA41200A782A9 /* RACEmptySignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647819EDA41200A782A9 /* RACEmptySignal.m */; };\n\t\tD037658519EDA41200A782A9 /* RACEmptySignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647819EDA41200A782A9 /* RACEmptySignal.m */; };\n\t\tD037658819EDA41200A782A9 /* RACErrorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647A19EDA41200A782A9 /* RACErrorSignal.m */; };\n\t\tD037658919EDA41200A782A9 /* RACErrorSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647A19EDA41200A782A9 /* RACErrorSignal.m */; };\n\t\tD037658A19EDA41200A782A9 /* RACEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647B19EDA41200A782A9 /* RACEvent.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037658B19EDA41200A782A9 /* RACEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647B19EDA41200A782A9 /* RACEvent.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037658C19EDA41200A782A9 /* RACEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647C19EDA41200A782A9 /* RACEvent.m */; };\n\t\tD037658D19EDA41200A782A9 /* RACEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647C19EDA41200A782A9 /* RACEvent.m */; };\n\t\tD037658E19EDA41200A782A9 /* RACGroupedSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647D19EDA41200A782A9 /* RACGroupedSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037658F19EDA41200A782A9 /* RACGroupedSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037647D19EDA41200A782A9 /* RACGroupedSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037659019EDA41200A782A9 /* RACGroupedSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647E19EDA41200A782A9 /* RACGroupedSignal.m */; };\n\t\tD037659119EDA41200A782A9 /* RACGroupedSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037647E19EDA41200A782A9 /* RACGroupedSignal.m */; };\n\t\tD037659419EDA41200A782A9 /* RACImmediateScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648019EDA41200A782A9 /* RACImmediateScheduler.m */; };\n\t\tD037659519EDA41200A782A9 /* RACImmediateScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648019EDA41200A782A9 /* RACImmediateScheduler.m */; };\n\t\tD037659819EDA41200A782A9 /* RACIndexSetSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648219EDA41200A782A9 /* RACIndexSetSequence.m */; };\n\t\tD037659919EDA41200A782A9 /* RACIndexSetSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648219EDA41200A782A9 /* RACIndexSetSequence.m */; };\n\t\tD037659A19EDA41200A782A9 /* RACKVOChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648319EDA41200A782A9 /* RACKVOChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037659B19EDA41200A782A9 /* RACKVOChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648319EDA41200A782A9 /* RACKVOChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037659C19EDA41200A782A9 /* RACKVOChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648419EDA41200A782A9 /* RACKVOChannel.m */; };\n\t\tD037659D19EDA41200A782A9 /* RACKVOChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648419EDA41200A782A9 /* RACKVOChannel.m */; };\n\t\tD03765A019EDA41200A782A9 /* RACKVOTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648619EDA41200A782A9 /* RACKVOTrampoline.m */; };\n\t\tD03765A119EDA41200A782A9 /* RACKVOTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648619EDA41200A782A9 /* RACKVOTrampoline.m */; };\n\t\tD03765A219EDA41200A782A9 /* RACMulticastConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648719EDA41200A782A9 /* RACMulticastConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765A319EDA41200A782A9 /* RACMulticastConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648719EDA41200A782A9 /* RACMulticastConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765A419EDA41200A782A9 /* RACMulticastConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648819EDA41200A782A9 /* RACMulticastConnection.m */; };\n\t\tD03765A519EDA41200A782A9 /* RACMulticastConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648819EDA41200A782A9 /* RACMulticastConnection.m */; };\n\t\tD03765AE19EDA41200A782A9 /* RACPassthroughSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */; };\n\t\tD03765AF19EDA41200A782A9 /* RACPassthroughSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */; };\n\t\tD03765B019EDA41200A782A9 /* RACQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648E19EDA41200A782A9 /* RACQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B119EDA41200A782A9 /* RACQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037648E19EDA41200A782A9 /* RACQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B219EDA41200A782A9 /* RACQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648F19EDA41200A782A9 /* RACQueueScheduler.m */; };\n\t\tD03765B319EDA41200A782A9 /* RACQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037648F19EDA41200A782A9 /* RACQueueScheduler.m */; };\n\t\tD03765B419EDA41200A782A9 /* RACQueueScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B519EDA41200A782A9 /* RACQueueScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B619EDA41200A782A9 /* RACReplaySubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649119EDA41200A782A9 /* RACReplaySubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B719EDA41200A782A9 /* RACReplaySubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649119EDA41200A782A9 /* RACReplaySubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765B819EDA41200A782A9 /* RACReplaySubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649219EDA41200A782A9 /* RACReplaySubject.m */; };\n\t\tD03765B919EDA41200A782A9 /* RACReplaySubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649219EDA41200A782A9 /* RACReplaySubject.m */; };\n\t\tD03765BC19EDA41200A782A9 /* RACReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649419EDA41200A782A9 /* RACReturnSignal.m */; };\n\t\tD03765BD19EDA41200A782A9 /* RACReturnSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649419EDA41200A782A9 /* RACReturnSignal.m */; };\n\t\tD03765BE19EDA41200A782A9 /* RACScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649519EDA41200A782A9 /* RACScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765BF19EDA41200A782A9 /* RACScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649519EDA41200A782A9 /* RACScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765C019EDA41200A782A9 /* RACScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649619EDA41200A782A9 /* RACScheduler.m */; };\n\t\tD03765C119EDA41200A782A9 /* RACScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649619EDA41200A782A9 /* RACScheduler.m */; };\n\t\tD03765C419EDA41200A782A9 /* RACScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649819EDA41200A782A9 /* RACScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765C519EDA41200A782A9 /* RACScheduler+Subclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649819EDA41200A782A9 /* RACScheduler+Subclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765C619EDA41200A782A9 /* RACScopedDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649919EDA41200A782A9 /* RACScopedDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765C719EDA41200A782A9 /* RACScopedDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649919EDA41200A782A9 /* RACScopedDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765C819EDA41200A782A9 /* RACScopedDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649A19EDA41200A782A9 /* RACScopedDisposable.m */; };\n\t\tD03765C919EDA41200A782A9 /* RACScopedDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649A19EDA41200A782A9 /* RACScopedDisposable.m */; };\n\t\tD03765CA19EDA41200A782A9 /* RACSequence.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649B19EDA41200A782A9 /* RACSequence.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765CB19EDA41200A782A9 /* RACSequence.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649B19EDA41200A782A9 /* RACSequence.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765CC19EDA41200A782A9 /* RACSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649C19EDA41200A782A9 /* RACSequence.m */; };\n\t\tD03765CD19EDA41200A782A9 /* RACSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649C19EDA41200A782A9 /* RACSequence.m */; };\n\t\tD03765CE19EDA41200A782A9 /* RACSerialDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649D19EDA41200A782A9 /* RACSerialDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765CF19EDA41200A782A9 /* RACSerialDisposable.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649D19EDA41200A782A9 /* RACSerialDisposable.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765D019EDA41200A782A9 /* RACSerialDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649E19EDA41200A782A9 /* RACSerialDisposable.m */; };\n\t\tD03765D119EDA41200A782A9 /* RACSerialDisposable.m in Sources */ = {isa = PBXBuildFile; fileRef = D037649E19EDA41200A782A9 /* RACSerialDisposable.m */; };\n\t\tD03765D219EDA41200A782A9 /* RACSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649F19EDA41200A782A9 /* RACSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765D319EDA41200A782A9 /* RACSignal.h in Headers */ = {isa = PBXBuildFile; fileRef = D037649F19EDA41200A782A9 /* RACSignal.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765D419EDA41200A782A9 /* RACSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A019EDA41200A782A9 /* RACSignal.m */; };\n\t\tD03765D519EDA41200A782A9 /* RACSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A019EDA41200A782A9 /* RACSignal.m */; };\n\t\tD03765D619EDA41200A782A9 /* RACSignal+Operations.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A119EDA41200A782A9 /* RACSignal+Operations.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765D719EDA41200A782A9 /* RACSignal+Operations.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A119EDA41200A782A9 /* RACSignal+Operations.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765D819EDA41200A782A9 /* RACSignal+Operations.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A219EDA41200A782A9 /* RACSignal+Operations.m */; };\n\t\tD03765D919EDA41200A782A9 /* RACSignal+Operations.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A219EDA41200A782A9 /* RACSignal+Operations.m */; };\n\t\tD03765DA19EDA41200A782A9 /* RACSignalProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D03764A319EDA41200A782A9 /* RACSignalProvider.d */; };\n\t\tD03765DB19EDA41200A782A9 /* RACSignalProvider.d in Sources */ = {isa = PBXBuildFile; fileRef = D03764A319EDA41200A782A9 /* RACSignalProvider.d */; };\n\t\tD03765DE19EDA41200A782A9 /* RACSignalSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A519EDA41200A782A9 /* RACSignalSequence.m */; };\n\t\tD03765DF19EDA41200A782A9 /* RACSignalSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A519EDA41200A782A9 /* RACSignalSequence.m */; };\n\t\tD03765E019EDA41200A782A9 /* RACStream.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A619EDA41200A782A9 /* RACStream.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765E119EDA41200A782A9 /* RACStream.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764A619EDA41200A782A9 /* RACStream.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765E219EDA41200A782A9 /* RACStream.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A719EDA41200A782A9 /* RACStream.m */; };\n\t\tD03765E319EDA41200A782A9 /* RACStream.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764A719EDA41200A782A9 /* RACStream.m */; };\n\t\tD03765E819EDA41200A782A9 /* RACStringSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AA19EDA41200A782A9 /* RACStringSequence.m */; };\n\t\tD03765E919EDA41200A782A9 /* RACStringSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AA19EDA41200A782A9 /* RACStringSequence.m */; };\n\t\tD03765EA19EDA41200A782A9 /* RACSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AB19EDA41200A782A9 /* RACSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765EB19EDA41200A782A9 /* RACSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AB19EDA41200A782A9 /* RACSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765EC19EDA41200A782A9 /* RACSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AC19EDA41200A782A9 /* RACSubject.m */; };\n\t\tD03765ED19EDA41200A782A9 /* RACSubject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AC19EDA41200A782A9 /* RACSubject.m */; };\n\t\tD03765EE19EDA41200A782A9 /* RACSubscriber.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AD19EDA41200A782A9 /* RACSubscriber.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765EF19EDA41200A782A9 /* RACSubscriber.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764AD19EDA41200A782A9 /* RACSubscriber.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765F019EDA41200A782A9 /* RACSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AE19EDA41200A782A9 /* RACSubscriber.m */; };\n\t\tD03765F119EDA41200A782A9 /* RACSubscriber.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764AE19EDA41200A782A9 /* RACSubscriber.m */; };\n\t\tD03765F419EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765F519EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765F619EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */; };\n\t\tD03765F719EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */; };\n\t\tD03765FA19EDA41200A782A9 /* RACSubscriptionScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */; };\n\t\tD03765FB19EDA41200A782A9 /* RACSubscriptionScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */; };\n\t\tD03765FC19EDA41200A782A9 /* RACTargetQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765FD19EDA41200A782A9 /* RACTargetQueueScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03765FE19EDA41200A782A9 /* RACTargetQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */; };\n\t\tD03765FF19EDA41200A782A9 /* RACTargetQueueScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */; };\n\t\tD037660019EDA41200A782A9 /* RACTestScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B619EDA41200A782A9 /* RACTestScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037660119EDA41200A782A9 /* RACTestScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B619EDA41200A782A9 /* RACTestScheduler.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037660219EDA41200A782A9 /* RACTestScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B719EDA41200A782A9 /* RACTestScheduler.m */; };\n\t\tD037660319EDA41200A782A9 /* RACTestScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B719EDA41200A782A9 /* RACTestScheduler.m */; };\n\t\tD037660419EDA41200A782A9 /* RACTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B819EDA41200A782A9 /* RACTuple.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037660519EDA41200A782A9 /* RACTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764B819EDA41200A782A9 /* RACTuple.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037660619EDA41200A782A9 /* RACTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B919EDA41200A782A9 /* RACTuple.m */; };\n\t\tD037660719EDA41200A782A9 /* RACTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764B919EDA41200A782A9 /* RACTuple.m */; };\n\t\tD037660A19EDA41200A782A9 /* RACTupleSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BB19EDA41200A782A9 /* RACTupleSequence.m */; };\n\t\tD037660B19EDA41200A782A9 /* RACTupleSequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BB19EDA41200A782A9 /* RACTupleSequence.m */; };\n\t\tD037660E19EDA41200A782A9 /* RACUnarySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BD19EDA41200A782A9 /* RACUnarySequence.m */; };\n\t\tD037660F19EDA41200A782A9 /* RACUnarySequence.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BD19EDA41200A782A9 /* RACUnarySequence.m */; };\n\t\tD037661019EDA41200A782A9 /* RACUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764BE19EDA41200A782A9 /* RACUnit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037661119EDA41200A782A9 /* RACUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764BE19EDA41200A782A9 /* RACUnit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037661219EDA41200A782A9 /* RACUnit.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BF19EDA41200A782A9 /* RACUnit.m */; };\n\t\tD037661319EDA41200A782A9 /* RACUnit.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764BF19EDA41200A782A9 /* RACUnit.m */; };\n\t\tD037661619EDA41200A782A9 /* RACValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C119EDA41200A782A9 /* RACValueTransformer.m */; };\n\t\tD037661719EDA41200A782A9 /* RACValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C119EDA41200A782A9 /* RACValueTransformer.m */; };\n\t\tD037661919EDA41200A782A9 /* UIActionSheet+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C219EDA41200A782A9 /* UIActionSheet+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037661B19EDA41200A782A9 /* UIActionSheet+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C319EDA41200A782A9 /* UIActionSheet+RACSignalSupport.m */; };\n\t\tD037661D19EDA41200A782A9 /* UIAlertView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C419EDA41200A782A9 /* UIAlertView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037661F19EDA41200A782A9 /* UIAlertView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C519EDA41200A782A9 /* UIAlertView+RACSignalSupport.m */; };\n\t\tD037662119EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C619EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037662319EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C719EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m */; };\n\t\tD037662519EDA41200A782A9 /* UIButton+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764C819EDA41200A782A9 /* UIButton+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037662719EDA41200A782A9 /* UIButton+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764C919EDA41200A782A9 /* UIButton+RACCommandSupport.m */; };\n\t\tD037662919EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764CA19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037662B19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CB19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m */; };\n\t\tD037662D19EDA41200A782A9 /* UIControl+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764CC19EDA41200A782A9 /* UIControl+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037662F19EDA41200A782A9 /* UIControl+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CD19EDA41200A782A9 /* UIControl+RACSignalSupport.m */; };\n\t\tD037663319EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764CF19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m */; };\n\t\tD037663519EDA41200A782A9 /* UIDatePicker+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D019EDA41200A782A9 /* UIDatePicker+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037663719EDA41200A782A9 /* UIDatePicker+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D119EDA41200A782A9 /* UIDatePicker+RACSignalSupport.m */; };\n\t\tD037663919EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D219EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037663B19EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D319EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m */; };\n\t\tD037663D19EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D419EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037663F19EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D519EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.m */; };\n\t\tD037664119EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D619EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037664319EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D719EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.m */; };\n\t\tD037664519EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764D819EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037664719EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764D919EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m */; };\n\t\tD037664919EDA41200A782A9 /* UISlider+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764DA19EDA41200A782A9 /* UISlider+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037664B19EDA41200A782A9 /* UISlider+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764DB19EDA41200A782A9 /* UISlider+RACSignalSupport.m */; };\n\t\tD037664D19EDA41200A782A9 /* UIStepper+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764DC19EDA41200A782A9 /* UIStepper+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037664F19EDA41200A782A9 /* UIStepper+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764DD19EDA41200A782A9 /* UIStepper+RACSignalSupport.m */; };\n\t\tD037665119EDA41200A782A9 /* UISwitch+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764DE19EDA41200A782A9 /* UISwitch+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037665319EDA41200A782A9 /* UISwitch+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764DF19EDA41200A782A9 /* UISwitch+RACSignalSupport.m */; };\n\t\tD037665519EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E019EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037665719EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E119EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m */; };\n\t\tD037665919EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E219EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037665B19EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E319EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m */; };\n\t\tD037665D19EDA41200A782A9 /* UITextField+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E419EDA41200A782A9 /* UITextField+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037665F19EDA41200A782A9 /* UITextField+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E519EDA41200A782A9 /* UITextField+RACSignalSupport.m */; };\n\t\tD037666119EDA41200A782A9 /* UITextView+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = D03764E619EDA41200A782A9 /* UITextView+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037666319EDA41200A782A9 /* UITextView+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = D03764E719EDA41200A782A9 /* UITextView+RACSignalSupport.m */; };\n\t\tD037666419EDA43C00A782A9 /* ReactiveCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = D04725EF19E49ED7006002AA /* ReactiveCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037666B19EDA57100A782A9 /* EXTKeyPathCoding.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666619EDA57100A782A9 /* EXTKeyPathCoding.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037666C19EDA57100A782A9 /* EXTKeyPathCoding.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666619EDA57100A782A9 /* EXTKeyPathCoding.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037666F19EDA57100A782A9 /* EXTRuntimeExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */; };\n\t\tD037667019EDA57100A782A9 /* EXTRuntimeExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = D037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */; };\n\t\tD037667119EDA57100A782A9 /* EXTScope.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666919EDA57100A782A9 /* EXTScope.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037667219EDA57100A782A9 /* EXTScope.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666919EDA57100A782A9 /* EXTScope.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037667319EDA57100A782A9 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666A19EDA57100A782A9 /* metamacros.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037667419EDA57100A782A9 /* metamacros.h in Headers */ = {isa = PBXBuildFile; fileRef = D037666A19EDA57100A782A9 /* metamacros.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03766B919EDA60000A782A9 /* NSControllerRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667619EDA60000A782A9 /* NSControllerRACSupportSpec.m */; };\n\t\tD03766BD19EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667819EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m */; };\n\t\tD03766BE19EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667819EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m */; };\n\t\tD03766BF19EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667919EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m */; };\n\t\tD03766C019EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667919EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m */; };\n\t\tD03766C119EDA60000A782A9 /* NSObjectRACAppKitBindingsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667A19EDA60000A782A9 /* NSObjectRACAppKitBindingsSpec.m */; };\n\t\tD03766C319EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667B19EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m */; };\n\t\tD03766C419EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667B19EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m */; };\n\t\tD03766C519EDA60000A782A9 /* NSObjectRACLiftingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667C19EDA60000A782A9 /* NSObjectRACLiftingSpec.m */; };\n\t\tD03766C619EDA60000A782A9 /* NSObjectRACLiftingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667C19EDA60000A782A9 /* NSObjectRACLiftingSpec.m */; };\n\t\tD03766C719EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667E19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m */; };\n\t\tD03766C819EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667E19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m */; };\n\t\tD03766C919EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667F19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m */; };\n\t\tD03766CA19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037667F19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m */; };\n\t\tD03766CB19EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668019EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m */; };\n\t\tD03766CC19EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668019EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m */; };\n\t\tD03766CD19EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668119EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m */; };\n\t\tD03766CE19EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668119EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m */; };\n\t\tD03766D119EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668319EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m */; };\n\t\tD03766D219EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668319EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m */; };\n\t\tD03766D319EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m */; };\n\t\tD03766D419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m */; };\n\t\tD03766D719EDA60000A782A9 /* RACBlockTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668619EDA60000A782A9 /* RACBlockTrampolineSpec.m */; };\n\t\tD03766D819EDA60000A782A9 /* RACBlockTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668619EDA60000A782A9 /* RACBlockTrampolineSpec.m */; };\n\t\tD03766D919EDA60000A782A9 /* RACChannelExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668819EDA60000A782A9 /* RACChannelExamples.m */; };\n\t\tD03766DA19EDA60000A782A9 /* RACChannelExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668819EDA60000A782A9 /* RACChannelExamples.m */; };\n\t\tD03766DB19EDA60000A782A9 /* RACChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668919EDA60000A782A9 /* RACChannelSpec.m */; };\n\t\tD03766DC19EDA60000A782A9 /* RACChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668919EDA60000A782A9 /* RACChannelSpec.m */; };\n\t\tD03766DD19EDA60000A782A9 /* RACCommandSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668A19EDA60000A782A9 /* RACCommandSpec.m */; };\n\t\tD03766DE19EDA60000A782A9 /* RACCommandSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668A19EDA60000A782A9 /* RACCommandSpec.m */; };\n\t\tD03766DF19EDA60000A782A9 /* RACCompoundDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668B19EDA60000A782A9 /* RACCompoundDisposableSpec.m */; };\n\t\tD03766E019EDA60000A782A9 /* RACCompoundDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668B19EDA60000A782A9 /* RACCompoundDisposableSpec.m */; };\n\t\tD03766E119EDA60000A782A9 /* RACControlCommandExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668D19EDA60000A782A9 /* RACControlCommandExamples.m */; };\n\t\tD03766E219EDA60000A782A9 /* RACControlCommandExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668D19EDA60000A782A9 /* RACControlCommandExamples.m */; };\n\t\tD03766E319EDA60000A782A9 /* RACDelegateProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668E19EDA60000A782A9 /* RACDelegateProxySpec.m */; };\n\t\tD03766E419EDA60000A782A9 /* RACDelegateProxySpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668E19EDA60000A782A9 /* RACDelegateProxySpec.m */; };\n\t\tD03766E519EDA60000A782A9 /* RACDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668F19EDA60000A782A9 /* RACDisposableSpec.m */; };\n\t\tD03766E619EDA60000A782A9 /* RACDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037668F19EDA60000A782A9 /* RACDisposableSpec.m */; };\n\t\tD03766E719EDA60000A782A9 /* RACEventSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669019EDA60000A782A9 /* RACEventSpec.m */; };\n\t\tD03766E819EDA60000A782A9 /* RACEventSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669019EDA60000A782A9 /* RACEventSpec.m */; };\n\t\tD03766E919EDA60000A782A9 /* RACKVOChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669119EDA60000A782A9 /* RACKVOChannelSpec.m */; };\n\t\tD03766EA19EDA60000A782A9 /* RACKVOChannelSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669119EDA60000A782A9 /* RACKVOChannelSpec.m */; };\n\t\tD03766EB19EDA60000A782A9 /* RACKVOWrapperSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669219EDA60000A782A9 /* RACKVOWrapperSpec.m */; };\n\t\tD03766EC19EDA60000A782A9 /* RACKVOWrapperSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669219EDA60000A782A9 /* RACKVOWrapperSpec.m */; };\n\t\tD03766ED19EDA60000A782A9 /* RACMulticastConnectionSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669319EDA60000A782A9 /* RACMulticastConnectionSpec.m */; };\n\t\tD03766EE19EDA60000A782A9 /* RACMulticastConnectionSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669319EDA60000A782A9 /* RACMulticastConnectionSpec.m */; };\n\t\tD03766EF19EDA60000A782A9 /* RACPropertySignalExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669519EDA60000A782A9 /* RACPropertySignalExamples.m */; };\n\t\tD03766F019EDA60000A782A9 /* RACPropertySignalExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669519EDA60000A782A9 /* RACPropertySignalExamples.m */; };\n\t\tD03766F119EDA60000A782A9 /* RACSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669619EDA60000A782A9 /* RACSchedulerSpec.m */; };\n\t\tD03766F219EDA60000A782A9 /* RACSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669619EDA60000A782A9 /* RACSchedulerSpec.m */; };\n\t\tD03766F319EDA60000A782A9 /* RACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669719EDA60000A782A9 /* RACSequenceAdditionsSpec.m */; };\n\t\tD03766F419EDA60000A782A9 /* RACSequenceAdditionsSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669719EDA60000A782A9 /* RACSequenceAdditionsSpec.m */; };\n\t\tD03766F519EDA60000A782A9 /* RACSequenceExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669919EDA60000A782A9 /* RACSequenceExamples.m */; };\n\t\tD03766F619EDA60000A782A9 /* RACSequenceExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669919EDA60000A782A9 /* RACSequenceExamples.m */; };\n\t\tD03766F719EDA60000A782A9 /* RACSequenceSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669A19EDA60000A782A9 /* RACSequenceSpec.m */; };\n\t\tD03766F819EDA60000A782A9 /* RACSequenceSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669A19EDA60000A782A9 /* RACSequenceSpec.m */; };\n\t\tD03766F919EDA60000A782A9 /* RACSerialDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669B19EDA60000A782A9 /* RACSerialDisposableSpec.m */; };\n\t\tD03766FA19EDA60000A782A9 /* RACSerialDisposableSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669B19EDA60000A782A9 /* RACSerialDisposableSpec.m */; };\n\t\tD03766FB19EDA60000A782A9 /* RACSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669C19EDA60000A782A9 /* RACSignalSpec.m */; };\n\t\tD03766FC19EDA60000A782A9 /* RACSignalSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D037669C19EDA60000A782A9 /* RACSignalSpec.m */; };\n\t\tD03766FF19EDA60000A782A9 /* RACStreamExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A019EDA60000A782A9 /* RACStreamExamples.m */; };\n\t\tD037670019EDA60000A782A9 /* RACStreamExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A019EDA60000A782A9 /* RACStreamExamples.m */; };\n\t\tD037670119EDA60000A782A9 /* RACSubclassObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A219EDA60000A782A9 /* RACSubclassObject.m */; };\n\t\tD037670219EDA60000A782A9 /* RACSubclassObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A219EDA60000A782A9 /* RACSubclassObject.m */; };\n\t\tD037670319EDA60000A782A9 /* RACSubjectSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A319EDA60000A782A9 /* RACSubjectSpec.m */; };\n\t\tD037670419EDA60000A782A9 /* RACSubjectSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A319EDA60000A782A9 /* RACSubjectSpec.m */; };\n\t\tD037670519EDA60000A782A9 /* RACSubscriberExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A519EDA60000A782A9 /* RACSubscriberExamples.m */; };\n\t\tD037670619EDA60000A782A9 /* RACSubscriberExamples.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A519EDA60000A782A9 /* RACSubscriberExamples.m */; };\n\t\tD037670719EDA60000A782A9 /* RACSubscriberSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A619EDA60000A782A9 /* RACSubscriberSpec.m */; };\n\t\tD037670819EDA60000A782A9 /* RACSubscriberSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A619EDA60000A782A9 /* RACSubscriberSpec.m */; };\n\t\tD037670919EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A719EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m */; };\n\t\tD037670A19EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A719EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m */; };\n\t\tD037670B19EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A819EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m */; };\n\t\tD037670C19EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766A819EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m */; };\n\t\tD037671519EDA60000A782A9 /* RACTupleSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B019EDA60000A782A9 /* RACTupleSpec.m */; };\n\t\tD037671619EDA60000A782A9 /* RACTupleSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B019EDA60000A782A9 /* RACTupleSpec.m */; };\n\t\tD037671719EDA60000A782A9 /* test-data.json in Resources */ = {isa = PBXBuildFile; fileRef = D03766B119EDA60000A782A9 /* test-data.json */; };\n\t\tD037671819EDA60000A782A9 /* test-data.json in Resources */ = {isa = PBXBuildFile; fileRef = D03766B119EDA60000A782A9 /* test-data.json */; };\n\t\tD037671A19EDA60000A782A9 /* UIActionSheetRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B219EDA60000A782A9 /* UIActionSheetRACSupportSpec.m */; };\n\t\tD037671C19EDA60000A782A9 /* UIAlertViewRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B319EDA60000A782A9 /* UIAlertViewRACSupportSpec.m */; };\n\t\tD037671E19EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B419EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m */; };\n\t\tD037672019EDA60000A782A9 /* UIButtonRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B519EDA60000A782A9 /* UIButtonRACSupportSpec.m */; };\n\t\tD037672419EDA60000A782A9 /* UIImagePickerControllerRACSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D03766B719EDA60000A782A9 /* UIImagePickerControllerRACSupportSpec.m */; };\n\t\tD037672719EDA63400A782A9 /* RACBehaviorSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646019EDA41200A782A9 /* RACBehaviorSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037672819EDA63500A782A9 /* RACBehaviorSubject.h in Headers */ = {isa = PBXBuildFile; fileRef = D037646019EDA41200A782A9 /* RACBehaviorSubject.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD037672D19EDA75D00A782A9 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D037672B19EDA75D00A782A9 /* Quick.framework */; };\n\t\tD037672F19EDA78B00A782A9 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D037672B19EDA75D00A782A9 /* Quick.framework */; };\n\t\tD03B4A3D19F4C39A009E02AC /* FoundationExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */; };\n\t\tD03B4A3E19F4C39A009E02AC /* FoundationExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */; };\n\t\tD04725F019E49ED7006002AA /* ReactiveCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = D04725EF19E49ED7006002AA /* ReactiveCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD04725F619E49ED7006002AA /* ReactiveCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D04725EA19E49ED7006002AA /* ReactiveCocoa.framework */; };\n\t\tD047261719E49F82006002AA /* ReactiveCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D047260C19E49F82006002AA /* ReactiveCocoa.framework */; };\n\t\tD05E662519EDD82000904ACA /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D05E662419EDD82000904ACA /* Nimble.framework */; };\n\t\tD05E662619EDD83000904ACA /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D05E662419EDD82000904ACA /* Nimble.framework */; };\n\t\tD08C54B31A69A2AE00AD8286 /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B11A69A2AC00AD8286 /* Signal.swift */; };\n\t\tD08C54B41A69A2AF00AD8286 /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B11A69A2AC00AD8286 /* Signal.swift */; };\n\t\tD08C54B61A69A3DB00AD8286 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B51A69A3DB00AD8286 /* Event.swift */; };\n\t\tD08C54B71A69A3DB00AD8286 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B51A69A3DB00AD8286 /* Event.swift */; };\n\t\tD08C54B81A69A9D000AD8286 /* SignalProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B21A69A2AC00AD8286 /* SignalProducer.swift */; };\n\t\tD08C54B91A69A9D100AD8286 /* SignalProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B21A69A2AC00AD8286 /* SignalProducer.swift */; };\n\t\tD08C54BA1A69C54300AD8286 /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B01A69A2AC00AD8286 /* Property.swift */; };\n\t\tD08C54BB1A69C54400AD8286 /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54B01A69A2AC00AD8286 /* Property.swift */; };\n\t\tD0A226081A72E0E900D33B74 /* SignalSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226071A72E0E900D33B74 /* SignalSpec.swift */; };\n\t\tD0A226091A72E0E900D33B74 /* SignalSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226071A72E0E900D33B74 /* SignalSpec.swift */; };\n\t\tD0A2260B1A72E6C500D33B74 /* SignalProducerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260A1A72E6C500D33B74 /* SignalProducerSpec.swift */; };\n\t\tD0A2260C1A72E6C500D33B74 /* SignalProducerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260A1A72E6C500D33B74 /* SignalProducerSpec.swift */; };\n\t\tD0A2260E1A72F16D00D33B74 /* PropertySpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260D1A72F16D00D33B74 /* PropertySpec.swift */; };\n\t\tD0A2260F1A72F16D00D33B74 /* PropertySpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A2260D1A72F16D00D33B74 /* PropertySpec.swift */; };\n\t\tD0A226111A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226101A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift */; };\n\t\tD0A226121A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A226101A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift */; };\n\t\tD0C312CD19EF2A5800984962 /* Atomic.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BB19EF2A5800984962 /* Atomic.swift */; };\n\t\tD0C312CE19EF2A5800984962 /* Atomic.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BB19EF2A5800984962 /* Atomic.swift */; };\n\t\tD0C312CF19EF2A5800984962 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BC19EF2A5800984962 /* Bag.swift */; };\n\t\tD0C312D019EF2A5800984962 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BC19EF2A5800984962 /* Bag.swift */; };\n\t\tD0C312D319EF2A5800984962 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BE19EF2A5800984962 /* Disposable.swift */; };\n\t\tD0C312D419EF2A5800984962 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312BE19EF2A5800984962 /* Disposable.swift */; };\n\t\tD0C312DF19EF2A5800984962 /* ObjectiveCBridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */; };\n\t\tD0C312E019EF2A5800984962 /* ObjectiveCBridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */; };\n\t\tD0C312E719EF2A5800984962 /* Scheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C819EF2A5800984962 /* Scheduler.swift */; };\n\t\tD0C312E819EF2A5800984962 /* Scheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312C819EF2A5800984962 /* Scheduler.swift */; };\n\t\tD0C3130C19EF2B1F00984962 /* DisposableSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F019EF2A7700984962 /* DisposableSpec.swift */; };\n\t\tD0C3130E19EF2B1F00984962 /* SchedulerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F219EF2A7700984962 /* SchedulerSpec.swift */; };\n\t\tD0C3131219EF2B2000984962 /* DisposableSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F019EF2A7700984962 /* DisposableSpec.swift */; };\n\t\tD0C3131419EF2B2000984962 /* SchedulerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C312F219EF2A7700984962 /* SchedulerSpec.swift */; };\n\t\tD0C3131E19EF2D9700984962 /* RACTestExampleScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131819EF2D9700984962 /* RACTestExampleScheduler.m */; };\n\t\tD0C3131F19EF2D9700984962 /* RACTestExampleScheduler.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131819EF2D9700984962 /* RACTestExampleScheduler.m */; };\n\t\tD0C3132019EF2D9700984962 /* RACTestObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131A19EF2D9700984962 /* RACTestObject.m */; };\n\t\tD0C3132119EF2D9700984962 /* RACTestObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131A19EF2D9700984962 /* RACTestObject.m */; };\n\t\tD0C3132219EF2D9700984962 /* RACTestSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131B19EF2D9700984962 /* RACTestSchedulerSpec.m */; };\n\t\tD0C3132319EF2D9700984962 /* RACTestSchedulerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131B19EF2D9700984962 /* RACTestSchedulerSpec.m */; };\n\t\tD0C3132519EF2D9700984962 /* RACTestUIButton.m in Sources */ = {isa = PBXBuildFile; fileRef = D0C3131D19EF2D9700984962 /* RACTestUIButton.m */; };\n\t\tD0D11AB91A6AE87700C1F8B1 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54AF1A69A2AC00AD8286 /* Action.swift */; };\n\t\tD0D11ABA1A6AE87700C1F8B1 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08C54AF1A69A2AC00AD8286 /* Action.swift */; };\n\t\tD43F27A01A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD43F27A11A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h in Headers */ = {isa = PBXBuildFile; fileRef = D43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD43F27A21A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m in Sources */ = {isa = PBXBuildFile; fileRef = D43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */; };\n\t\tD43F27A31A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m in Sources */ = {isa = PBXBuildFile; fileRef = D43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */; };\n\t\tD8024DB21B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8024DB11B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift */; };\n\t\tD8024DB31B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8024DB11B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift */; };\n\t\tD8170FC11B100EBC004192AD /* FoundationExtensionsSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8170FC01B100EBC004192AD /* FoundationExtensionsSpec.swift */; };\n\t\tD8170FC21B100EBC004192AD /* FoundationExtensionsSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8170FC01B100EBC004192AD /* FoundationExtensionsSpec.swift */; };\n\t\tD85C652A1C0D84C7005A77AD /* Flatten.swift in Sources */ = {isa = PBXBuildFile; fileRef = D85C65291C0D84C7005A77AD /* Flatten.swift */; };\n\t\tD85C652B1C0E70E3005A77AD /* Flatten.swift in Sources */ = {isa = PBXBuildFile; fileRef = D85C65291C0D84C7005A77AD /* Flatten.swift */; };\n\t\tD85C652C1C0E70E4005A77AD /* Flatten.swift in Sources */ = {isa = PBXBuildFile; fileRef = D85C65291C0D84C7005A77AD /* Flatten.swift */; };\n\t\tD85C652D1C0E70E5005A77AD /* Flatten.swift in Sources */ = {isa = PBXBuildFile; fileRef = D85C65291C0D84C7005A77AD /* Flatten.swift */; };\n\t\tD871D69F1B3B29A40070F16C /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = D871D69E1B3B29A40070F16C /* Optional.swift */; };\n\t\tD8E84A671B3B32FB00C3E831 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = D871D69E1B3B29A40070F16C /* Optional.swift */; };\n\t\tEBCC7DBC1BBF010C00A2AE92 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCC7DBB1BBF010C00A2AE92 /* Observer.swift */; };\n\t\tEBCC7DBD1BBF01E100A2AE92 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCC7DBB1BBF010C00A2AE92 /* Observer.swift */; };\n\t\tEBCC7DBE1BBF01E200A2AE92 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCC7DBB1BBF010C00A2AE92 /* Observer.swift */; };\n\t\tEBCC7DBF1BBF01E200A2AE92 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCC7DBB1BBF010C00A2AE92 /* Observer.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t7DFBED091CDB8C9500EE435B /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D04725E119E49ED7006002AA /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 57A4D1AF1BA13D7A00F7D4B1;\n\t\t\tremoteInfo = \"ReactiveCocoa-tvOS\";\n\t\t};\n\t\tD04725F719E49ED7006002AA /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D04725E119E49ED7006002AA /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D04725E919E49ED7006002AA;\n\t\t\tremoteInfo = ReactiveCocoa;\n\t\t};\n\t\tD047261819E49F82006002AA /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D04725E119E49ED7006002AA /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D047260B19E49F82006002AA;\n\t\t\tremoteInfo = ReactiveCocoa;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\t7DFBED151CDB8CEC00EE435B /* Copy Frameworks */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t\t7DFBED211CDB8D8300EE435B /* Result.framework in Copy Frameworks */,\n\t\t\t\t7DFBED201CDB8D7D00EE435B /* Nimble.framework in Copy Frameworks */,\n\t\t\t\t7DFBED1F1CDB8D7800EE435B /* Quick.framework in Copy Frameworks */,\n\t\t\t\t7DFBED1E1CDB8D7000EE435B /* ReactiveCocoa.framework in Copy Frameworks */,\n\t\t\t);\n\t\t\tname = \"Copy Frameworks\";\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD01B7B6119EDD8F600D26E01 /* Copy Frameworks */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t\tCDC42E331AE7AC6D00965373 /* Result.framework in Copy Frameworks */,\n\t\t\t\tD01B7B6219EDD8FE00D26E01 /* Nimble.framework in Copy Frameworks */,\n\t\t\t\tD01B7B6319EDD8FE00D26E01 /* Quick.framework in Copy Frameworks */,\n\t\t\t\tD01B7B6419EDD94B00D26E01 /* ReactiveCocoa.framework in Copy Frameworks */,\n\t\t\t);\n\t\t\tname = \"Copy Frameworks\";\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\t02D260291C1D6DAF003ACC61 /* SignalLifetimeSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SignalLifetimeSpec.swift; sourceTree = \"<group>\"; };\n\t\t314304151ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"MKAnnotationView+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\t314304161ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"MKAnnotationView+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\t57A4D2411BA13D7A00F7D4B1 /* ReactiveCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ReactiveCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"tvOS-Application.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t57A4D2451BA13F9700F7D4B1 /* tvOS-Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"tvOS-Base.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"tvOS-Framework.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t57A4D2471BA13F9700F7D4B1 /* tvOS-StaticLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"tvOS-StaticLibrary.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t7A70657D1A3F88B8001E8354 /* RACKVOProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACKVOProxy.h; sourceTree = \"<group>\"; };\n\t\t7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOProxy.m; sourceTree = \"<group>\"; };\n\t\t7A7065831A3F8967001E8354 /* RACKVOProxySpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOProxySpec.m; sourceTree = \"<group>\"; };\n\t\t7DFBED031CDB8C9500EE435B /* ReactiveCocoaTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ReactiveCocoaTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tA97451331B3A935E00F48E55 /* watchOS-Application.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = \"watchOS-Application.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tA97451341B3A935E00F48E55 /* watchOS-Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = \"watchOS-Base.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tA97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = \"watchOS-Framework.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tA97451361B3A935E00F48E55 /* watchOS-StaticLibrary.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = \"watchOS-StaticLibrary.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tA9B315541B3940610001CB9C /* ReactiveCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ReactiveCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tB696FB801A7640C00075236D /* TestError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TestError.swift; sourceTree = \"<group>\"; };\n\t\tBFA6B94A1A76044800C846D1 /* SignalProducerNimbleMatchers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SignalProducerNimbleMatchers.swift; path = Swift/SignalProducerNimbleMatchers.swift; sourceTree = \"<group>\"; };\n\t\tC7142DBB1CDEA167009F402D /* CocoaAction.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CocoaAction.swift; sourceTree = \"<group>\"; };\n\t\tC79B64731CD38B2B003F2376 /* TestLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TestLogger.swift; sourceTree = \"<group>\"; };\n\t\tC79B647B1CD52E23003F2376 /* EventLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EventLogger.swift; sourceTree = \"<group>\"; };\n\t\tCA6F284F1C52626B001879D2 /* FlattenSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FlattenSpec.swift; sourceTree = \"<group>\"; };\n\t\tCD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DynamicProperty.swift; sourceTree = \"<group>\"; };\n\t\tCD8401821CEE8ED7009F0ABF /* CocoaActionSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CocoaActionSpec.swift; sourceTree = \"<group>\"; };\n\t\tCDC42E2E1AE7AB8B00965373 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD00004081A46864E000E7D41 /* TupleExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TupleExtensions.swift; sourceTree = \"<group>\"; };\n\t\tD021671C1A6CD50500987861 /* ActionSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = ActionSpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSArray+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSArray+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037642C19EDA41200A782A9 /* NSControl+RACCommandSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSControl+RACCommandSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037642D19EDA41200A782A9 /* NSControl+RACCommandSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSControl+RACCommandSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037642E19EDA41200A782A9 /* NSControl+RACTextSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSControl+RACTextSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037642F19EDA41200A782A9 /* NSControl+RACTextSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSControl+RACTextSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037643019EDA41200A782A9 /* NSData+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSData+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037643119EDA41200A782A9 /* NSData+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSData+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSDictionary+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSDictionary+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSEnumerator+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSEnumerator+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSFileHandle+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSFileHandle+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSIndexSet+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSIndexSet+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037643A19EDA41200A782A9 /* NSInvocation+RACTypeParsing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSInvocation+RACTypeParsing.h\"; sourceTree = \"<group>\"; };\n\t\tD037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSInvocation+RACTypeParsing.m\"; sourceTree = \"<group>\"; };\n\t\tD037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSNotificationCenter+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSNotificationCenter+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037643E19EDA41200A782A9 /* NSObject+RACAppKitBindings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACAppKitBindings.h\"; sourceTree = \"<group>\"; };\n\t\tD037643F19EDA41200A782A9 /* NSObject+RACAppKitBindings.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACAppKitBindings.m\"; sourceTree = \"<group>\"; };\n\t\tD037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACDeallocating.h\"; sourceTree = \"<group>\"; };\n\t\tD037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACDeallocating.m\"; sourceTree = \"<group>\"; };\n\t\tD037644219EDA41200A782A9 /* NSObject+RACDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACDescription.h\"; sourceTree = \"<group>\"; };\n\t\tD037644319EDA41200A782A9 /* NSObject+RACDescription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACDescription.m\"; sourceTree = \"<group>\"; };\n\t\tD037644419EDA41200A782A9 /* NSObject+RACKVOWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACKVOWrapper.h\"; sourceTree = \"<group>\"; };\n\t\tD037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACKVOWrapper.m\"; sourceTree = \"<group>\"; };\n\t\tD037644619EDA41200A782A9 /* NSObject+RACLifting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACLifting.h\"; sourceTree = \"<group>\"; };\n\t\tD037644719EDA41200A782A9 /* NSObject+RACLifting.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACLifting.m\"; sourceTree = \"<group>\"; };\n\t\tD037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACPropertySubscribing.h\"; sourceTree = \"<group>\"; };\n\t\tD037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACPropertySubscribing.m\"; sourceTree = \"<group>\"; };\n\t\tD037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSObject+RACSelectorSignal.h\"; sourceTree = \"<group>\"; };\n\t\tD037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSObject+RACSelectorSignal.m\"; sourceTree = \"<group>\"; };\n\t\tD037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSOrderedSet+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSOrderedSet+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSSet+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSSet+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037645019EDA41200A782A9 /* NSString+RACKeyPathUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSString+RACKeyPathUtilities.h\"; sourceTree = \"<group>\"; };\n\t\tD037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSString+RACKeyPathUtilities.m\"; sourceTree = \"<group>\"; };\n\t\tD037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSString+RACSequenceAdditions.h\"; sourceTree = \"<group>\"; };\n\t\tD037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSString+RACSequenceAdditions.m\"; sourceTree = \"<group>\"; };\n\t\tD037645419EDA41200A782A9 /* NSString+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSString+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037645519EDA41200A782A9 /* NSString+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSString+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037645619EDA41200A782A9 /* NSText+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSText+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037645719EDA41200A782A9 /* NSText+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSText+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037645819EDA41200A782A9 /* NSURLConnection+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSURLConnection+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037645919EDA41200A782A9 /* NSURLConnection+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSURLConnection+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"NSUserDefaults+RACSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"NSUserDefaults+RACSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037645C19EDA41200A782A9 /* RACArraySequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACArraySequence.h; sourceTree = \"<group>\"; };\n\t\tD037645D19EDA41200A782A9 /* RACArraySequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACArraySequence.m; sourceTree = \"<group>\"; };\n\t\tD037646019EDA41200A782A9 /* RACBehaviorSubject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACBehaviorSubject.h; sourceTree = \"<group>\"; };\n\t\tD037646119EDA41200A782A9 /* RACBehaviorSubject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACBehaviorSubject.m; sourceTree = \"<group>\"; };\n\t\tD037646219EDA41200A782A9 /* RACBlockTrampoline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACBlockTrampoline.h; sourceTree = \"<group>\"; };\n\t\tD037646319EDA41200A782A9 /* RACBlockTrampoline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACBlockTrampoline.m; sourceTree = \"<group>\"; };\n\t\tD037646419EDA41200A782A9 /* RACChannel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACChannel.h; sourceTree = \"<group>\"; };\n\t\tD037646519EDA41200A782A9 /* RACChannel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACChannel.m; sourceTree = \"<group>\"; };\n\t\tD037646619EDA41200A782A9 /* RACCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACCommand.h; sourceTree = \"<group>\"; };\n\t\tD037646719EDA41200A782A9 /* RACCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACCommand.m; sourceTree = \"<group>\"; };\n\t\tD037646819EDA41200A782A9 /* RACCompoundDisposable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACCompoundDisposable.h; sourceTree = \"<group>\"; };\n\t\tD037646919EDA41200A782A9 /* RACCompoundDisposable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACCompoundDisposable.m; sourceTree = \"<group>\"; };\n\t\tD037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = RACCompoundDisposableProvider.d; sourceTree = \"<group>\"; };\n\t\tD037646B19EDA41200A782A9 /* RACDelegateProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACDelegateProxy.h; sourceTree = \"<group>\"; };\n\t\tD037646C19EDA41200A782A9 /* RACDelegateProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDelegateProxy.m; sourceTree = \"<group>\"; };\n\t\tD037646D19EDA41200A782A9 /* RACDisposable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACDisposable.h; sourceTree = \"<group>\"; };\n\t\tD037646E19EDA41200A782A9 /* RACDisposable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDisposable.m; sourceTree = \"<group>\"; };\n\t\tD037646F19EDA41200A782A9 /* RACDynamicSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACDynamicSequence.h; sourceTree = \"<group>\"; };\n\t\tD037647019EDA41200A782A9 /* RACDynamicSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDynamicSequence.m; sourceTree = \"<group>\"; };\n\t\tD037647119EDA41200A782A9 /* RACDynamicSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACDynamicSignal.h; sourceTree = \"<group>\"; };\n\t\tD037647219EDA41200A782A9 /* RACDynamicSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDynamicSignal.m; sourceTree = \"<group>\"; };\n\t\tD037647319EDA41200A782A9 /* RACEagerSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACEagerSequence.h; sourceTree = \"<group>\"; };\n\t\tD037647419EDA41200A782A9 /* RACEagerSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACEagerSequence.m; sourceTree = \"<group>\"; };\n\t\tD037647519EDA41200A782A9 /* RACEmptySequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACEmptySequence.h; sourceTree = \"<group>\"; };\n\t\tD037647619EDA41200A782A9 /* RACEmptySequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACEmptySequence.m; sourceTree = \"<group>\"; };\n\t\tD037647719EDA41200A782A9 /* RACEmptySignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACEmptySignal.h; sourceTree = \"<group>\"; };\n\t\tD037647819EDA41200A782A9 /* RACEmptySignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACEmptySignal.m; sourceTree = \"<group>\"; };\n\t\tD037647919EDA41200A782A9 /* RACErrorSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACErrorSignal.h; sourceTree = \"<group>\"; };\n\t\tD037647A19EDA41200A782A9 /* RACErrorSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACErrorSignal.m; sourceTree = \"<group>\"; };\n\t\tD037647B19EDA41200A782A9 /* RACEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACEvent.h; sourceTree = \"<group>\"; };\n\t\tD037647C19EDA41200A782A9 /* RACEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACEvent.m; sourceTree = \"<group>\"; };\n\t\tD037647D19EDA41200A782A9 /* RACGroupedSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACGroupedSignal.h; sourceTree = \"<group>\"; };\n\t\tD037647E19EDA41200A782A9 /* RACGroupedSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACGroupedSignal.m; sourceTree = \"<group>\"; };\n\t\tD037647F19EDA41200A782A9 /* RACImmediateScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACImmediateScheduler.h; sourceTree = \"<group>\"; };\n\t\tD037648019EDA41200A782A9 /* RACImmediateScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACImmediateScheduler.m; sourceTree = \"<group>\"; };\n\t\tD037648119EDA41200A782A9 /* RACIndexSetSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACIndexSetSequence.h; sourceTree = \"<group>\"; };\n\t\tD037648219EDA41200A782A9 /* RACIndexSetSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACIndexSetSequence.m; sourceTree = \"<group>\"; };\n\t\tD037648319EDA41200A782A9 /* RACKVOChannel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACKVOChannel.h; sourceTree = \"<group>\"; };\n\t\tD037648419EDA41200A782A9 /* RACKVOChannel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOChannel.m; sourceTree = \"<group>\"; };\n\t\tD037648519EDA41200A782A9 /* RACKVOTrampoline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACKVOTrampoline.h; sourceTree = \"<group>\"; };\n\t\tD037648619EDA41200A782A9 /* RACKVOTrampoline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOTrampoline.m; sourceTree = \"<group>\"; };\n\t\tD037648719EDA41200A782A9 /* RACMulticastConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACMulticastConnection.h; sourceTree = \"<group>\"; };\n\t\tD037648819EDA41200A782A9 /* RACMulticastConnection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACMulticastConnection.m; sourceTree = \"<group>\"; };\n\t\tD037648919EDA41200A782A9 /* RACMulticastConnection+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACMulticastConnection+Private.h\"; sourceTree = \"<group>\"; };\n\t\tD037648C19EDA41200A782A9 /* RACPassthroughSubscriber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACPassthroughSubscriber.h; sourceTree = \"<group>\"; };\n\t\tD037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACPassthroughSubscriber.m; sourceTree = \"<group>\"; };\n\t\tD037648E19EDA41200A782A9 /* RACQueueScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACQueueScheduler.h; sourceTree = \"<group>\"; };\n\t\tD037648F19EDA41200A782A9 /* RACQueueScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACQueueScheduler.m; sourceTree = \"<group>\"; };\n\t\tD037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACQueueScheduler+Subclass.h\"; sourceTree = \"<group>\"; };\n\t\tD037649119EDA41200A782A9 /* RACReplaySubject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACReplaySubject.h; sourceTree = \"<group>\"; };\n\t\tD037649219EDA41200A782A9 /* RACReplaySubject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACReplaySubject.m; sourceTree = \"<group>\"; };\n\t\tD037649319EDA41200A782A9 /* RACReturnSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACReturnSignal.h; sourceTree = \"<group>\"; };\n\t\tD037649419EDA41200A782A9 /* RACReturnSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACReturnSignal.m; sourceTree = \"<group>\"; };\n\t\tD037649519EDA41200A782A9 /* RACScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACScheduler.h; sourceTree = \"<group>\"; };\n\t\tD037649619EDA41200A782A9 /* RACScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACScheduler.m; sourceTree = \"<group>\"; };\n\t\tD037649719EDA41200A782A9 /* RACScheduler+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACScheduler+Private.h\"; sourceTree = \"<group>\"; };\n\t\tD037649819EDA41200A782A9 /* RACScheduler+Subclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACScheduler+Subclass.h\"; sourceTree = \"<group>\"; };\n\t\tD037649919EDA41200A782A9 /* RACScopedDisposable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACScopedDisposable.h; sourceTree = \"<group>\"; };\n\t\tD037649A19EDA41200A782A9 /* RACScopedDisposable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACScopedDisposable.m; sourceTree = \"<group>\"; };\n\t\tD037649B19EDA41200A782A9 /* RACSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSequence.h; sourceTree = \"<group>\"; };\n\t\tD037649C19EDA41200A782A9 /* RACSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSequence.m; sourceTree = \"<group>\"; };\n\t\tD037649D19EDA41200A782A9 /* RACSerialDisposable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSerialDisposable.h; sourceTree = \"<group>\"; };\n\t\tD037649E19EDA41200A782A9 /* RACSerialDisposable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSerialDisposable.m; sourceTree = \"<group>\"; };\n\t\tD037649F19EDA41200A782A9 /* RACSignal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSignal.h; sourceTree = \"<group>\"; };\n\t\tD03764A019EDA41200A782A9 /* RACSignal.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSignal.m; sourceTree = \"<group>\"; };\n\t\tD03764A119EDA41200A782A9 /* RACSignal+Operations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACSignal+Operations.h\"; sourceTree = \"<group>\"; };\n\t\tD03764A219EDA41200A782A9 /* RACSignal+Operations.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"RACSignal+Operations.m\"; sourceTree = \"<group>\"; };\n\t\tD03764A319EDA41200A782A9 /* RACSignalProvider.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = RACSignalProvider.d; sourceTree = \"<group>\"; };\n\t\tD03764A419EDA41200A782A9 /* RACSignalSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSignalSequence.h; sourceTree = \"<group>\"; };\n\t\tD03764A519EDA41200A782A9 /* RACSignalSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSignalSequence.m; sourceTree = \"<group>\"; };\n\t\tD03764A619EDA41200A782A9 /* RACStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACStream.h; sourceTree = \"<group>\"; };\n\t\tD03764A719EDA41200A782A9 /* RACStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACStream.m; sourceTree = \"<group>\"; };\n\t\tD03764A819EDA41200A782A9 /* RACStream+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACStream+Private.h\"; sourceTree = \"<group>\"; };\n\t\tD03764A919EDA41200A782A9 /* RACStringSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACStringSequence.h; sourceTree = \"<group>\"; };\n\t\tD03764AA19EDA41200A782A9 /* RACStringSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACStringSequence.m; sourceTree = \"<group>\"; };\n\t\tD03764AB19EDA41200A782A9 /* RACSubject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubject.h; sourceTree = \"<group>\"; };\n\t\tD03764AC19EDA41200A782A9 /* RACSubject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubject.m; sourceTree = \"<group>\"; };\n\t\tD03764AD19EDA41200A782A9 /* RACSubscriber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubscriber.h; sourceTree = \"<group>\"; };\n\t\tD03764AE19EDA41200A782A9 /* RACSubscriber.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriber.m; sourceTree = \"<group>\"; };\n\t\tD03764AF19EDA41200A782A9 /* RACSubscriber+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"RACSubscriber+Private.h\"; sourceTree = \"<group>\"; };\n\t\tD03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubscriptingAssignmentTrampoline.h; sourceTree = \"<group>\"; };\n\t\tD03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriptingAssignmentTrampoline.m; sourceTree = \"<group>\"; };\n\t\tD03764B219EDA41200A782A9 /* RACSubscriptionScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubscriptionScheduler.h; sourceTree = \"<group>\"; };\n\t\tD03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriptionScheduler.m; sourceTree = \"<group>\"; };\n\t\tD03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTargetQueueScheduler.h; sourceTree = \"<group>\"; };\n\t\tD03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTargetQueueScheduler.m; sourceTree = \"<group>\"; };\n\t\tD03764B619EDA41200A782A9 /* RACTestScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTestScheduler.h; sourceTree = \"<group>\"; };\n\t\tD03764B719EDA41200A782A9 /* RACTestScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTestScheduler.m; sourceTree = \"<group>\"; };\n\t\tD03764B819EDA41200A782A9 /* RACTuple.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTuple.h; sourceTree = \"<group>\"; };\n\t\tD03764B919EDA41200A782A9 /* RACTuple.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTuple.m; sourceTree = \"<group>\"; };\n\t\tD03764BA19EDA41200A782A9 /* RACTupleSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTupleSequence.h; sourceTree = \"<group>\"; };\n\t\tD03764BB19EDA41200A782A9 /* RACTupleSequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTupleSequence.m; sourceTree = \"<group>\"; };\n\t\tD03764BC19EDA41200A782A9 /* RACUnarySequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACUnarySequence.h; sourceTree = \"<group>\"; };\n\t\tD03764BD19EDA41200A782A9 /* RACUnarySequence.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACUnarySequence.m; sourceTree = \"<group>\"; };\n\t\tD03764BE19EDA41200A782A9 /* RACUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACUnit.h; sourceTree = \"<group>\"; };\n\t\tD03764BF19EDA41200A782A9 /* RACUnit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACUnit.m; sourceTree = \"<group>\"; };\n\t\tD03764C019EDA41200A782A9 /* RACValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACValueTransformer.h; sourceTree = \"<group>\"; };\n\t\tD03764C119EDA41200A782A9 /* RACValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACValueTransformer.m; sourceTree = \"<group>\"; };\n\t\tD03764C219EDA41200A782A9 /* UIActionSheet+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIActionSheet+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764C319EDA41200A782A9 /* UIActionSheet+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIActionSheet+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764C419EDA41200A782A9 /* UIAlertView+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIAlertView+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764C519EDA41200A782A9 /* UIAlertView+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIAlertView+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764C619EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIBarButtonItem+RACCommandSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764C719EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIBarButtonItem+RACCommandSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764C819EDA41200A782A9 /* UIButton+RACCommandSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIButton+RACCommandSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764C919EDA41200A782A9 /* UIButton+RACCommandSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIButton+RACCommandSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764CA19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UICollectionReusableView+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764CB19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UICollectionReusableView+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764CC19EDA41200A782A9 /* UIControl+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIControl+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764CD19EDA41200A782A9 /* UIControl+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIControl+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764CE19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIControl+RACSignalSupportPrivate.h\"; sourceTree = \"<group>\"; };\n\t\tD03764CF19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIControl+RACSignalSupportPrivate.m\"; sourceTree = \"<group>\"; };\n\t\tD03764D019EDA41200A782A9 /* UIDatePicker+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIDatePicker+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764D119EDA41200A782A9 /* UIDatePicker+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIDatePicker+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764D219EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIGestureRecognizer+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764D319EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIGestureRecognizer+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764D419EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIImagePickerController+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764D519EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIImagePickerController+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764D619EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIRefreshControl+RACCommandSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764D719EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIRefreshControl+RACCommandSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764D819EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UISegmentedControl+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764D919EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UISegmentedControl+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764DA19EDA41200A782A9 /* UISlider+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UISlider+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764DB19EDA41200A782A9 /* UISlider+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UISlider+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764DC19EDA41200A782A9 /* UIStepper+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIStepper+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764DD19EDA41200A782A9 /* UIStepper+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIStepper+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764DE19EDA41200A782A9 /* UISwitch+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UISwitch+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764DF19EDA41200A782A9 /* UISwitch+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UISwitch+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764E019EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UITableViewCell+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764E119EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UITableViewCell+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764E219EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UITableViewHeaderFooterView+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764E319EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UITableViewHeaderFooterView+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764E419EDA41200A782A9 /* UITextField+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UITextField+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764E519EDA41200A782A9 /* UITextField+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UITextField+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD03764E619EDA41200A782A9 /* UITextView+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UITextView+RACSignalSupport.h\"; sourceTree = \"<group>\"; };\n\t\tD03764E719EDA41200A782A9 /* UITextView+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UITextView+RACSignalSupport.m\"; sourceTree = \"<group>\"; };\n\t\tD037666619EDA57100A782A9 /* EXTKeyPathCoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EXTKeyPathCoding.h; sourceTree = \"<group>\"; };\n\t\tD037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EXTRuntimeExtensions.h; sourceTree = \"<group>\"; };\n\t\tD037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EXTRuntimeExtensions.m; sourceTree = \"<group>\"; };\n\t\tD037666919EDA57100A782A9 /* EXTScope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EXTScope.h; sourceTree = \"<group>\"; };\n\t\tD037666A19EDA57100A782A9 /* metamacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = metamacros.h; sourceTree = \"<group>\"; };\n\t\tD037667619EDA60000A782A9 /* NSControllerRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSControllerRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667819EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSEnumeratorRACSequenceAdditionsSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667919EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSNotificationCenterRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667A19EDA60000A782A9 /* NSObjectRACAppKitBindingsSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACAppKitBindingsSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667B19EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACDeallocatingSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667C19EDA60000A782A9 /* NSObjectRACLiftingSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACLiftingSpec.m; sourceTree = \"<group>\"; };\n\t\tD037667D19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSObjectRACPropertySubscribingExamples.h; sourceTree = \"<group>\"; };\n\t\tD037667E19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACPropertySubscribingExamples.m; sourceTree = \"<group>\"; };\n\t\tD037667F19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACPropertySubscribingSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668019EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObjectRACSelectorSignalSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668119EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSStringRACKeyPathUtilitiesSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668319EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSURLConnectionRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSUserDefaultsRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668619EDA60000A782A9 /* RACBlockTrampolineSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACBlockTrampolineSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668719EDA60000A782A9 /* RACChannelExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACChannelExamples.h; sourceTree = \"<group>\"; };\n\t\tD037668819EDA60000A782A9 /* RACChannelExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACChannelExamples.m; sourceTree = \"<group>\"; };\n\t\tD037668919EDA60000A782A9 /* RACChannelSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACChannelSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668A19EDA60000A782A9 /* RACCommandSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACCommandSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668B19EDA60000A782A9 /* RACCompoundDisposableSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACCompoundDisposableSpec.m; sourceTree = \"<group>\"; };\n\t\tD037668C19EDA60000A782A9 /* RACControlCommandExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACControlCommandExamples.h; sourceTree = \"<group>\"; };\n\t\tD037668D19EDA60000A782A9 /* RACControlCommandExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACControlCommandExamples.m; sourceTree = \"<group>\"; };\n\t\tD037668E19EDA60000A782A9 /* RACDelegateProxySpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDelegateProxySpec.m; sourceTree = \"<group>\"; };\n\t\tD037668F19EDA60000A782A9 /* RACDisposableSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDisposableSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669019EDA60000A782A9 /* RACEventSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACEventSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669119EDA60000A782A9 /* RACKVOChannelSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOChannelSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669219EDA60000A782A9 /* RACKVOWrapperSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACKVOWrapperSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669319EDA60000A782A9 /* RACMulticastConnectionSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACMulticastConnectionSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669419EDA60000A782A9 /* RACPropertySignalExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACPropertySignalExamples.h; sourceTree = \"<group>\"; };\n\t\tD037669519EDA60000A782A9 /* RACPropertySignalExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACPropertySignalExamples.m; sourceTree = \"<group>\"; };\n\t\tD037669619EDA60000A782A9 /* RACSchedulerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSchedulerSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669719EDA60000A782A9 /* RACSequenceAdditionsSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSequenceAdditionsSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669819EDA60000A782A9 /* RACSequenceExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSequenceExamples.h; sourceTree = \"<group>\"; };\n\t\tD037669919EDA60000A782A9 /* RACSequenceExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSequenceExamples.m; sourceTree = \"<group>\"; };\n\t\tD037669A19EDA60000A782A9 /* RACSequenceSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSequenceSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669B19EDA60000A782A9 /* RACSerialDisposableSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSerialDisposableSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669C19EDA60000A782A9 /* RACSignalSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSignalSpec.m; sourceTree = \"<group>\"; };\n\t\tD037669F19EDA60000A782A9 /* RACStreamExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACStreamExamples.h; sourceTree = \"<group>\"; };\n\t\tD03766A019EDA60000A782A9 /* RACStreamExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACStreamExamples.m; sourceTree = \"<group>\"; };\n\t\tD03766A119EDA60000A782A9 /* RACSubclassObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubclassObject.h; sourceTree = \"<group>\"; };\n\t\tD03766A219EDA60000A782A9 /* RACSubclassObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubclassObject.m; sourceTree = \"<group>\"; };\n\t\tD03766A319EDA60000A782A9 /* RACSubjectSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubjectSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766A419EDA60000A782A9 /* RACSubscriberExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACSubscriberExamples.h; sourceTree = \"<group>\"; };\n\t\tD03766A519EDA60000A782A9 /* RACSubscriberExamples.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriberExamples.m; sourceTree = \"<group>\"; };\n\t\tD03766A619EDA60000A782A9 /* RACSubscriberSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriberSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766A719EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACSubscriptingAssignmentTrampolineSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766A819EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTargetQueueSchedulerSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B019EDA60000A782A9 /* RACTupleSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTupleSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B119EDA60000A782A9 /* test-data.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = \"test-data.json\"; sourceTree = \"<group>\"; };\n\t\tD03766B219EDA60000A782A9 /* UIActionSheetRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIActionSheetRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B319EDA60000A782A9 /* UIAlertViewRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIAlertViewRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B419EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIBarButtonItemRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B519EDA60000A782A9 /* UIButtonRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIButtonRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD03766B719EDA60000A782A9 /* UIImagePickerControllerRACSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIImagePickerControllerRACSupportSpec.m; sourceTree = \"<group>\"; };\n\t\tD037672B19EDA75D00A782A9 /* Quick.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FoundationExtensions.swift; sourceTree = \"<group>\"; };\n\t\tD04725EA19E49ED7006002AA /* ReactiveCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ReactiveCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD04725EE19E49ED7006002AA /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD04725EF19E49ED7006002AA /* ReactiveCocoa.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ReactiveCocoa.h; sourceTree = \"<group>\"; };\n\t\tD04725F519E49ED7006002AA /* ReactiveCocoaTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ReactiveCocoaTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD04725FB19E49ED7006002AA /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD047260C19E49F82006002AA /* ReactiveCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ReactiveCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD047261619E49F82006002AA /* ReactiveCocoaTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ReactiveCocoaTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD047262719E49FE8006002AA /* Common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262919E49FE8006002AA /* Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262A19E49FE8006002AA /* Profile.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Profile.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262B19E49FE8006002AA /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262C19E49FE8006002AA /* Test.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Test.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262E19E49FE8006002AA /* Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Application.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047262F19E49FE8006002AA /* Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Framework.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047263019E49FE8006002AA /* StaticLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = StaticLibrary.xcconfig; sourceTree = \"<group>\"; };\n\t\tD047263219E49FE8006002AA /* iOS-Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"iOS-Application.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263319E49FE8006002AA /* iOS-Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"iOS-Base.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263419E49FE8006002AA /* iOS-Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"iOS-Framework.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263519E49FE8006002AA /* iOS-StaticLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"iOS-StaticLibrary.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263719E49FE8006002AA /* Mac-Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"Mac-Application.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263819E49FE8006002AA /* Mac-Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"Mac-Base.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263919E49FE8006002AA /* Mac-DynamicLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"Mac-DynamicLibrary.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263A19E49FE8006002AA /* Mac-Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"Mac-Framework.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263B19E49FE8006002AA /* Mac-StaticLibrary.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = \"Mac-StaticLibrary.xcconfig\"; sourceTree = \"<group>\"; };\n\t\tD047263C19E49FE8006002AA /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = \"<group>\"; };\n\t\tD05E662419EDD82000904ACA /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD08C54AF1A69A2AC00AD8286 /* Action.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Action.swift; sourceTree = \"<group>\"; };\n\t\tD08C54B01A69A2AC00AD8286 /* Property.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Property.swift; sourceTree = \"<group>\"; };\n\t\tD08C54B11A69A2AC00AD8286 /* Signal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Signal.swift; sourceTree = \"<group>\"; };\n\t\tD08C54B21A69A2AC00AD8286 /* SignalProducer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignalProducer.swift; sourceTree = \"<group>\"; };\n\t\tD08C54B51A69A3DB00AD8286 /* Event.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Event.swift; sourceTree = \"<group>\"; };\n\t\tD0A226071A72E0E900D33B74 /* SignalSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = SignalSpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD0A2260A1A72E6C500D33B74 /* SignalProducerSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = SignalProducerSpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD0A2260D1A72F16D00D33B74 /* PropertySpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = PropertySpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD0A226101A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = ObjectiveCBridgingSpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD0C312BB19EF2A5800984962 /* Atomic.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Atomic.swift; sourceTree = \"<group>\"; };\n\t\tD0C312BC19EF2A5800984962 /* Bag.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Bag.swift; sourceTree = \"<group>\"; };\n\t\tD0C312BE19EF2A5800984962 /* Disposable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Disposable.swift; sourceTree = \"<group>\"; };\n\t\tD0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectiveCBridging.swift; sourceTree = \"<group>\"; };\n\t\tD0C312C819EF2A5800984962 /* Scheduler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Scheduler.swift; sourceTree = \"<group>\"; };\n\t\tD0C312EE19EF2A7700984962 /* AtomicSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AtomicSpec.swift; sourceTree = \"<group>\"; };\n\t\tD0C312EF19EF2A7700984962 /* BagSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BagSpec.swift; sourceTree = \"<group>\"; };\n\t\tD0C312F019EF2A7700984962 /* DisposableSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DisposableSpec.swift; sourceTree = \"<group>\"; };\n\t\tD0C312F219EF2A7700984962 /* SchedulerSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SchedulerSpec.swift; sourceTree = \"<group>\"; };\n\t\tD0C3131719EF2D9700984962 /* RACTestExampleScheduler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTestExampleScheduler.h; sourceTree = \"<group>\"; };\n\t\tD0C3131819EF2D9700984962 /* RACTestExampleScheduler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTestExampleScheduler.m; sourceTree = \"<group>\"; };\n\t\tD0C3131919EF2D9700984962 /* RACTestObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTestObject.h; sourceTree = \"<group>\"; };\n\t\tD0C3131A19EF2D9700984962 /* RACTestObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTestObject.m; sourceTree = \"<group>\"; };\n\t\tD0C3131B19EF2D9700984962 /* RACTestSchedulerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTestSchedulerSpec.m; sourceTree = \"<group>\"; };\n\t\tD0C3131C19EF2D9700984962 /* RACTestUIButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACTestUIButton.h; sourceTree = \"<group>\"; };\n\t\tD0C3131D19EF2D9700984962 /* RACTestUIButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACTestUIButton.m; sourceTree = \"<group>\"; };\n\t\tD43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RACDynamicPropertySuperclass.h; sourceTree = \"<group>\"; };\n\t\tD43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RACDynamicPropertySuperclass.m; sourceTree = \"<group>\"; };\n\t\tD8024DB11B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = SignalProducerLiftingSpec.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n\t\tD8170FC01B100EBC004192AD /* FoundationExtensionsSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FoundationExtensionsSpec.swift; sourceTree = \"<group>\"; };\n\t\tD85C65291C0D84C7005A77AD /* Flatten.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Flatten.swift; sourceTree = \"<group>\"; };\n\t\tD871D69E1B3B29A40070F16C /* Optional.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Optional.swift; sourceTree = \"<group>\"; };\n\t\tEBCC7DBB1BBF010C00A2AE92 /* Observer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = Observer.swift; sourceTree = \"<group>\"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t57A4D2071BA13D7A00F7D4B1 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57A4D2081BA13D7A00F7D4B1 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t7DFBED001CDB8C9500EE435B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCDF066CA1CDC1CA200199626 /* Nimble.framework in Frameworks */,\n\t\t\t\tCDF066CB1CDC1CA200199626 /* Quick.framework in Frameworks */,\n\t\t\t\t7DFBED081CDB8C9500EE435B /* ReactiveCocoa.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tA9B315501B3940610001CB9C /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tA9B315C91B3940980001CB9C /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725E619E49ED7006002AA /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCDC42E2F1AE7AB8B00965373 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725F219E49ED7006002AA /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCDC42E301AE7AB8B00965373 /* Result.framework in Frameworks */,\n\t\t\t\tD05E662519EDD82000904ACA /* Nimble.framework in Frameworks */,\n\t\t\t\tD037672D19EDA75D00A782A9 /* Quick.framework in Frameworks */,\n\t\t\t\tD04725F619E49ED7006002AA /* ReactiveCocoa.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047260819E49F82006002AA /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tCDC42E311AE7AB8B00965373 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047261319E49F82006002AA /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD05E662619EDD83000904ACA /* Nimble.framework in Frameworks */,\n\t\t\t\tD037672F19EDA78B00A782A9 /* Quick.framework in Frameworks */,\n\t\t\t\tD047261719E49F82006002AA /* ReactiveCocoa.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t57A4D2431BA13F9700F7D4B1 /* tvOS */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */,\n\t\t\t\t57A4D2451BA13F9700F7D4B1 /* tvOS-Base.xcconfig */,\n\t\t\t\t57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */,\n\t\t\t\t57A4D2471BA13F9700F7D4B1 /* tvOS-StaticLibrary.xcconfig */,\n\t\t\t);\n\t\t\tpath = tvOS;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tA97451321B3A935E00F48E55 /* watchOS */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tA97451331B3A935E00F48E55 /* watchOS-Application.xcconfig */,\n\t\t\t\tA97451341B3A935E00F48E55 /* watchOS-Base.xcconfig */,\n\t\t\t\tA97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */,\n\t\t\t\tA97451361B3A935E00F48E55 /* watchOS-StaticLibrary.xcconfig */,\n\t\t\t);\n\t\t\tpath = watchOS;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD037642919EDA3B600A782A9 /* Objective-C */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD037666519EDA57100A782A9 /* extobjc */,\n\t\t\t\t314304151ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.h */,\n\t\t\t\t314304161ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.m */,\n\t\t\t\tD037642A19EDA41200A782A9 /* NSArray+RACSequenceAdditions.h */,\n\t\t\t\tD037642B19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m */,\n\t\t\t\tD037642C19EDA41200A782A9 /* NSControl+RACCommandSupport.h */,\n\t\t\t\tD037642D19EDA41200A782A9 /* NSControl+RACCommandSupport.m */,\n\t\t\t\tD037642E19EDA41200A782A9 /* NSControl+RACTextSignalSupport.h */,\n\t\t\t\tD037642F19EDA41200A782A9 /* NSControl+RACTextSignalSupport.m */,\n\t\t\t\tD037643019EDA41200A782A9 /* NSData+RACSupport.h */,\n\t\t\t\tD037643119EDA41200A782A9 /* NSData+RACSupport.m */,\n\t\t\t\tD037643219EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h */,\n\t\t\t\tD037643319EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m */,\n\t\t\t\tD037643419EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h */,\n\t\t\t\tD037643519EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m */,\n\t\t\t\tD037643619EDA41200A782A9 /* NSFileHandle+RACSupport.h */,\n\t\t\t\tD037643719EDA41200A782A9 /* NSFileHandle+RACSupport.m */,\n\t\t\t\tD037643819EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h */,\n\t\t\t\tD037643919EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m */,\n\t\t\t\tD037643A19EDA41200A782A9 /* NSInvocation+RACTypeParsing.h */,\n\t\t\t\tD037643B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m */,\n\t\t\t\tD037643C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h */,\n\t\t\t\tD037643D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m */,\n\t\t\t\tD037643E19EDA41200A782A9 /* NSObject+RACAppKitBindings.h */,\n\t\t\t\tD037643F19EDA41200A782A9 /* NSObject+RACAppKitBindings.m */,\n\t\t\t\tD037644019EDA41200A782A9 /* NSObject+RACDeallocating.h */,\n\t\t\t\tD037644119EDA41200A782A9 /* NSObject+RACDeallocating.m */,\n\t\t\t\tD037644219EDA41200A782A9 /* NSObject+RACDescription.h */,\n\t\t\t\tD037644319EDA41200A782A9 /* NSObject+RACDescription.m */,\n\t\t\t\tD037644419EDA41200A782A9 /* NSObject+RACKVOWrapper.h */,\n\t\t\t\tD037644519EDA41200A782A9 /* NSObject+RACKVOWrapper.m */,\n\t\t\t\tD037644619EDA41200A782A9 /* NSObject+RACLifting.h */,\n\t\t\t\tD037644719EDA41200A782A9 /* NSObject+RACLifting.m */,\n\t\t\t\tD037644819EDA41200A782A9 /* NSObject+RACPropertySubscribing.h */,\n\t\t\t\tD037644919EDA41200A782A9 /* NSObject+RACPropertySubscribing.m */,\n\t\t\t\tD037644A19EDA41200A782A9 /* NSObject+RACSelectorSignal.h */,\n\t\t\t\tD037644B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m */,\n\t\t\t\tD037644C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h */,\n\t\t\t\tD037644D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m */,\n\t\t\t\tD037644E19EDA41200A782A9 /* NSSet+RACSequenceAdditions.h */,\n\t\t\t\tD037644F19EDA41200A782A9 /* NSSet+RACSequenceAdditions.m */,\n\t\t\t\tD037645019EDA41200A782A9 /* NSString+RACKeyPathUtilities.h */,\n\t\t\t\tD037645119EDA41200A782A9 /* NSString+RACKeyPathUtilities.m */,\n\t\t\t\tD037645219EDA41200A782A9 /* NSString+RACSequenceAdditions.h */,\n\t\t\t\tD037645319EDA41200A782A9 /* NSString+RACSequenceAdditions.m */,\n\t\t\t\tD037645419EDA41200A782A9 /* NSString+RACSupport.h */,\n\t\t\t\tD037645519EDA41200A782A9 /* NSString+RACSupport.m */,\n\t\t\t\tD037645619EDA41200A782A9 /* NSText+RACSignalSupport.h */,\n\t\t\t\tD037645719EDA41200A782A9 /* NSText+RACSignalSupport.m */,\n\t\t\t\tD037645819EDA41200A782A9 /* NSURLConnection+RACSupport.h */,\n\t\t\t\tD037645919EDA41200A782A9 /* NSURLConnection+RACSupport.m */,\n\t\t\t\tD037645A19EDA41200A782A9 /* NSUserDefaults+RACSupport.h */,\n\t\t\t\tD037645B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m */,\n\t\t\t\tD037645C19EDA41200A782A9 /* RACArraySequence.h */,\n\t\t\t\tD037645D19EDA41200A782A9 /* RACArraySequence.m */,\n\t\t\t\tD037646019EDA41200A782A9 /* RACBehaviorSubject.h */,\n\t\t\t\tD037646119EDA41200A782A9 /* RACBehaviorSubject.m */,\n\t\t\t\tD037646219EDA41200A782A9 /* RACBlockTrampoline.h */,\n\t\t\t\tD037646319EDA41200A782A9 /* RACBlockTrampoline.m */,\n\t\t\t\tD037646419EDA41200A782A9 /* RACChannel.h */,\n\t\t\t\tD037646519EDA41200A782A9 /* RACChannel.m */,\n\t\t\t\tD037646619EDA41200A782A9 /* RACCommand.h */,\n\t\t\t\tD037646719EDA41200A782A9 /* RACCommand.m */,\n\t\t\t\tD037646819EDA41200A782A9 /* RACCompoundDisposable.h */,\n\t\t\t\tD037646919EDA41200A782A9 /* RACCompoundDisposable.m */,\n\t\t\t\tD037646A19EDA41200A782A9 /* RACCompoundDisposableProvider.d */,\n\t\t\t\tD037646B19EDA41200A782A9 /* RACDelegateProxy.h */,\n\t\t\t\tD037646C19EDA41200A782A9 /* RACDelegateProxy.m */,\n\t\t\t\tD037646D19EDA41200A782A9 /* RACDisposable.h */,\n\t\t\t\tD037646E19EDA41200A782A9 /* RACDisposable.m */,\n\t\t\t\tD037646F19EDA41200A782A9 /* RACDynamicSequence.h */,\n\t\t\t\tD037647019EDA41200A782A9 /* RACDynamicSequence.m */,\n\t\t\t\tD037647119EDA41200A782A9 /* RACDynamicSignal.h */,\n\t\t\t\tD037647219EDA41200A782A9 /* RACDynamicSignal.m */,\n\t\t\t\tD037647319EDA41200A782A9 /* RACEagerSequence.h */,\n\t\t\t\tD037647419EDA41200A782A9 /* RACEagerSequence.m */,\n\t\t\t\tD037647519EDA41200A782A9 /* RACEmptySequence.h */,\n\t\t\t\tD037647619EDA41200A782A9 /* RACEmptySequence.m */,\n\t\t\t\tD037647719EDA41200A782A9 /* RACEmptySignal.h */,\n\t\t\t\tD037647819EDA41200A782A9 /* RACEmptySignal.m */,\n\t\t\t\tD037647919EDA41200A782A9 /* RACErrorSignal.h */,\n\t\t\t\tD037647A19EDA41200A782A9 /* RACErrorSignal.m */,\n\t\t\t\tD037647B19EDA41200A782A9 /* RACEvent.h */,\n\t\t\t\tD037647C19EDA41200A782A9 /* RACEvent.m */,\n\t\t\t\tD037647D19EDA41200A782A9 /* RACGroupedSignal.h */,\n\t\t\t\tD037647E19EDA41200A782A9 /* RACGroupedSignal.m */,\n\t\t\t\tD037647F19EDA41200A782A9 /* RACImmediateScheduler.h */,\n\t\t\t\tD037648019EDA41200A782A9 /* RACImmediateScheduler.m */,\n\t\t\t\tD037648119EDA41200A782A9 /* RACIndexSetSequence.h */,\n\t\t\t\tD037648219EDA41200A782A9 /* RACIndexSetSequence.m */,\n\t\t\t\tD037648319EDA41200A782A9 /* RACKVOChannel.h */,\n\t\t\t\tD037648419EDA41200A782A9 /* RACKVOChannel.m */,\n\t\t\t\t7A70657D1A3F88B8001E8354 /* RACKVOProxy.h */,\n\t\t\t\t7A70657E1A3F88B8001E8354 /* RACKVOProxy.m */,\n\t\t\t\tD037648519EDA41200A782A9 /* RACKVOTrampoline.h */,\n\t\t\t\tD037648619EDA41200A782A9 /* RACKVOTrampoline.m */,\n\t\t\t\tD037648719EDA41200A782A9 /* RACMulticastConnection.h */,\n\t\t\t\tD037648819EDA41200A782A9 /* RACMulticastConnection.m */,\n\t\t\t\tD037648919EDA41200A782A9 /* RACMulticastConnection+Private.h */,\n\t\t\t\tD037648C19EDA41200A782A9 /* RACPassthroughSubscriber.h */,\n\t\t\t\tD037648D19EDA41200A782A9 /* RACPassthroughSubscriber.m */,\n\t\t\t\tD037648E19EDA41200A782A9 /* RACQueueScheduler.h */,\n\t\t\t\tD037648F19EDA41200A782A9 /* RACQueueScheduler.m */,\n\t\t\t\tD037649019EDA41200A782A9 /* RACQueueScheduler+Subclass.h */,\n\t\t\t\tD037649119EDA41200A782A9 /* RACReplaySubject.h */,\n\t\t\t\tD037649219EDA41200A782A9 /* RACReplaySubject.m */,\n\t\t\t\tD037649319EDA41200A782A9 /* RACReturnSignal.h */,\n\t\t\t\tD037649419EDA41200A782A9 /* RACReturnSignal.m */,\n\t\t\t\tD037649519EDA41200A782A9 /* RACScheduler.h */,\n\t\t\t\tD037649619EDA41200A782A9 /* RACScheduler.m */,\n\t\t\t\tD037649719EDA41200A782A9 /* RACScheduler+Private.h */,\n\t\t\t\tD037649819EDA41200A782A9 /* RACScheduler+Subclass.h */,\n\t\t\t\tD037649919EDA41200A782A9 /* RACScopedDisposable.h */,\n\t\t\t\tD037649A19EDA41200A782A9 /* RACScopedDisposable.m */,\n\t\t\t\tD037649B19EDA41200A782A9 /* RACSequence.h */,\n\t\t\t\tD037649C19EDA41200A782A9 /* RACSequence.m */,\n\t\t\t\tD037649D19EDA41200A782A9 /* RACSerialDisposable.h */,\n\t\t\t\tD037649E19EDA41200A782A9 /* RACSerialDisposable.m */,\n\t\t\t\tD037649F19EDA41200A782A9 /* RACSignal.h */,\n\t\t\t\tD03764A019EDA41200A782A9 /* RACSignal.m */,\n\t\t\t\tD03764A119EDA41200A782A9 /* RACSignal+Operations.h */,\n\t\t\t\tD03764A219EDA41200A782A9 /* RACSignal+Operations.m */,\n\t\t\t\tD03764A319EDA41200A782A9 /* RACSignalProvider.d */,\n\t\t\t\tD03764A419EDA41200A782A9 /* RACSignalSequence.h */,\n\t\t\t\tD03764A519EDA41200A782A9 /* RACSignalSequence.m */,\n\t\t\t\tD03764A619EDA41200A782A9 /* RACStream.h */,\n\t\t\t\tD03764A719EDA41200A782A9 /* RACStream.m */,\n\t\t\t\tD03764A819EDA41200A782A9 /* RACStream+Private.h */,\n\t\t\t\tD03764A919EDA41200A782A9 /* RACStringSequence.h */,\n\t\t\t\tD03764AA19EDA41200A782A9 /* RACStringSequence.m */,\n\t\t\t\tD03764AB19EDA41200A782A9 /* RACSubject.h */,\n\t\t\t\tD03764AC19EDA41200A782A9 /* RACSubject.m */,\n\t\t\t\tD03764AD19EDA41200A782A9 /* RACSubscriber.h */,\n\t\t\t\tD03764AE19EDA41200A782A9 /* RACSubscriber.m */,\n\t\t\t\tD03764AF19EDA41200A782A9 /* RACSubscriber+Private.h */,\n\t\t\t\tD03764B019EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h */,\n\t\t\t\tD03764B119EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m */,\n\t\t\t\tD03764B219EDA41200A782A9 /* RACSubscriptionScheduler.h */,\n\t\t\t\tD03764B319EDA41200A782A9 /* RACSubscriptionScheduler.m */,\n\t\t\t\tD03764B419EDA41200A782A9 /* RACTargetQueueScheduler.h */,\n\t\t\t\tD03764B519EDA41200A782A9 /* RACTargetQueueScheduler.m */,\n\t\t\t\tD03764B619EDA41200A782A9 /* RACTestScheduler.h */,\n\t\t\t\tD03764B719EDA41200A782A9 /* RACTestScheduler.m */,\n\t\t\t\tD03764B819EDA41200A782A9 /* RACTuple.h */,\n\t\t\t\tD03764B919EDA41200A782A9 /* RACTuple.m */,\n\t\t\t\tD03764BA19EDA41200A782A9 /* RACTupleSequence.h */,\n\t\t\t\tD03764BB19EDA41200A782A9 /* RACTupleSequence.m */,\n\t\t\t\tD03764BC19EDA41200A782A9 /* RACUnarySequence.h */,\n\t\t\t\tD03764BD19EDA41200A782A9 /* RACUnarySequence.m */,\n\t\t\t\tD03764BE19EDA41200A782A9 /* RACUnit.h */,\n\t\t\t\tD03764BF19EDA41200A782A9 /* RACUnit.m */,\n\t\t\t\tD03764C019EDA41200A782A9 /* RACValueTransformer.h */,\n\t\t\t\tD03764C119EDA41200A782A9 /* RACValueTransformer.m */,\n\t\t\t\tD03764C219EDA41200A782A9 /* UIActionSheet+RACSignalSupport.h */,\n\t\t\t\tD03764C319EDA41200A782A9 /* UIActionSheet+RACSignalSupport.m */,\n\t\t\t\tD03764C419EDA41200A782A9 /* UIAlertView+RACSignalSupport.h */,\n\t\t\t\tD03764C519EDA41200A782A9 /* UIAlertView+RACSignalSupport.m */,\n\t\t\t\tD03764C619EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h */,\n\t\t\t\tD03764C719EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m */,\n\t\t\t\tD03764C819EDA41200A782A9 /* UIButton+RACCommandSupport.h */,\n\t\t\t\tD03764C919EDA41200A782A9 /* UIButton+RACCommandSupport.m */,\n\t\t\t\tD03764CA19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h */,\n\t\t\t\tD03764CB19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m */,\n\t\t\t\tD03764CC19EDA41200A782A9 /* UIControl+RACSignalSupport.h */,\n\t\t\t\tD03764CD19EDA41200A782A9 /* UIControl+RACSignalSupport.m */,\n\t\t\t\tD03764CE19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.h */,\n\t\t\t\tD03764CF19EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m */,\n\t\t\t\tD03764D019EDA41200A782A9 /* UIDatePicker+RACSignalSupport.h */,\n\t\t\t\tD03764D119EDA41200A782A9 /* UIDatePicker+RACSignalSupport.m */,\n\t\t\t\tD03764D219EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h */,\n\t\t\t\tD03764D319EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m */,\n\t\t\t\tD03764D419EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.h */,\n\t\t\t\tD03764D519EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.m */,\n\t\t\t\tD03764D619EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.h */,\n\t\t\t\tD03764D719EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.m */,\n\t\t\t\tD03764D819EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h */,\n\t\t\t\tD03764D919EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m */,\n\t\t\t\tD03764DA19EDA41200A782A9 /* UISlider+RACSignalSupport.h */,\n\t\t\t\tD03764DB19EDA41200A782A9 /* UISlider+RACSignalSupport.m */,\n\t\t\t\tD03764DC19EDA41200A782A9 /* UIStepper+RACSignalSupport.h */,\n\t\t\t\tD03764DD19EDA41200A782A9 /* UIStepper+RACSignalSupport.m */,\n\t\t\t\tD03764DE19EDA41200A782A9 /* UISwitch+RACSignalSupport.h */,\n\t\t\t\tD03764DF19EDA41200A782A9 /* UISwitch+RACSignalSupport.m */,\n\t\t\t\tD03764E019EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h */,\n\t\t\t\tD03764E119EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m */,\n\t\t\t\tD03764E219EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h */,\n\t\t\t\tD03764E319EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m */,\n\t\t\t\tD03764E419EDA41200A782A9 /* UITextField+RACSignalSupport.h */,\n\t\t\t\tD03764E519EDA41200A782A9 /* UITextField+RACSignalSupport.m */,\n\t\t\t\tD03764E619EDA41200A782A9 /* UITextView+RACSignalSupport.h */,\n\t\t\t\tD03764E719EDA41200A782A9 /* UITextView+RACSignalSupport.m */,\n\t\t\t\tD43F279E1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h */,\n\t\t\t\tD43F279F1A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m */,\n\t\t\t);\n\t\t\tpath = \"Objective-C\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD037666519EDA57100A782A9 /* extobjc */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD037666619EDA57100A782A9 /* EXTKeyPathCoding.h */,\n\t\t\t\tD037666719EDA57100A782A9 /* EXTRuntimeExtensions.h */,\n\t\t\t\tD037666819EDA57100A782A9 /* EXTRuntimeExtensions.m */,\n\t\t\t\tD037666919EDA57100A782A9 /* EXTScope.h */,\n\t\t\t\tD037666A19EDA57100A782A9 /* metamacros.h */,\n\t\t\t);\n\t\t\tpath = extobjc;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD037667519EDA5D900A782A9 /* Objective-C */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD037667619EDA60000A782A9 /* NSControllerRACSupportSpec.m */,\n\t\t\t\tD037667819EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m */,\n\t\t\t\tD037667919EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m */,\n\t\t\t\tD037667A19EDA60000A782A9 /* NSObjectRACAppKitBindingsSpec.m */,\n\t\t\t\tD037667B19EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m */,\n\t\t\t\tD037667C19EDA60000A782A9 /* NSObjectRACLiftingSpec.m */,\n\t\t\t\tD037667D19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.h */,\n\t\t\t\tD037667E19EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m */,\n\t\t\t\tD037667F19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m */,\n\t\t\t\tD037668019EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m */,\n\t\t\t\tD037668119EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m */,\n\t\t\t\tD037668319EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m */,\n\t\t\t\tD037668419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m */,\n\t\t\t\tD037668619EDA60000A782A9 /* RACBlockTrampolineSpec.m */,\n\t\t\t\tD037668719EDA60000A782A9 /* RACChannelExamples.h */,\n\t\t\t\tD037668819EDA60000A782A9 /* RACChannelExamples.m */,\n\t\t\t\tD037668919EDA60000A782A9 /* RACChannelSpec.m */,\n\t\t\t\tD037668A19EDA60000A782A9 /* RACCommandSpec.m */,\n\t\t\t\tD037668B19EDA60000A782A9 /* RACCompoundDisposableSpec.m */,\n\t\t\t\tD037668C19EDA60000A782A9 /* RACControlCommandExamples.h */,\n\t\t\t\tD037668D19EDA60000A782A9 /* RACControlCommandExamples.m */,\n\t\t\t\tD037668E19EDA60000A782A9 /* RACDelegateProxySpec.m */,\n\t\t\t\tD037668F19EDA60000A782A9 /* RACDisposableSpec.m */,\n\t\t\t\tD037669019EDA60000A782A9 /* RACEventSpec.m */,\n\t\t\t\tD037669119EDA60000A782A9 /* RACKVOChannelSpec.m */,\n\t\t\t\t7A7065831A3F8967001E8354 /* RACKVOProxySpec.m */,\n\t\t\t\tD037669219EDA60000A782A9 /* RACKVOWrapperSpec.m */,\n\t\t\t\tD037669319EDA60000A782A9 /* RACMulticastConnectionSpec.m */,\n\t\t\t\tD037669419EDA60000A782A9 /* RACPropertySignalExamples.h */,\n\t\t\t\tD037669519EDA60000A782A9 /* RACPropertySignalExamples.m */,\n\t\t\t\tD037669619EDA60000A782A9 /* RACSchedulerSpec.m */,\n\t\t\t\tD037669719EDA60000A782A9 /* RACSequenceAdditionsSpec.m */,\n\t\t\t\tD037669819EDA60000A782A9 /* RACSequenceExamples.h */,\n\t\t\t\tD037669919EDA60000A782A9 /* RACSequenceExamples.m */,\n\t\t\t\tD037669A19EDA60000A782A9 /* RACSequenceSpec.m */,\n\t\t\t\tD037669B19EDA60000A782A9 /* RACSerialDisposableSpec.m */,\n\t\t\t\tD037669C19EDA60000A782A9 /* RACSignalSpec.m */,\n\t\t\t\tD037669F19EDA60000A782A9 /* RACStreamExamples.h */,\n\t\t\t\tD03766A019EDA60000A782A9 /* RACStreamExamples.m */,\n\t\t\t\tD03766A119EDA60000A782A9 /* RACSubclassObject.h */,\n\t\t\t\tD03766A219EDA60000A782A9 /* RACSubclassObject.m */,\n\t\t\t\tD03766A319EDA60000A782A9 /* RACSubjectSpec.m */,\n\t\t\t\tD03766A419EDA60000A782A9 /* RACSubscriberExamples.h */,\n\t\t\t\tD03766A519EDA60000A782A9 /* RACSubscriberExamples.m */,\n\t\t\t\tD03766A619EDA60000A782A9 /* RACSubscriberSpec.m */,\n\t\t\t\tD03766A719EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m */,\n\t\t\t\tD03766A819EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m */,\n\t\t\t\tD03766B019EDA60000A782A9 /* RACTupleSpec.m */,\n\t\t\t\tD03766B219EDA60000A782A9 /* UIActionSheetRACSupportSpec.m */,\n\t\t\t\tD03766B319EDA60000A782A9 /* UIAlertViewRACSupportSpec.m */,\n\t\t\t\tD03766B419EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m */,\n\t\t\t\tD03766B519EDA60000A782A9 /* UIButtonRACSupportSpec.m */,\n\t\t\t\tD03766B719EDA60000A782A9 /* UIImagePickerControllerRACSupportSpec.m */,\n\t\t\t\tD0C3131719EF2D9700984962 /* RACTestExampleScheduler.h */,\n\t\t\t\tD0C3131819EF2D9700984962 /* RACTestExampleScheduler.m */,\n\t\t\t\tD0C3131919EF2D9700984962 /* RACTestObject.h */,\n\t\t\t\tD0C3131A19EF2D9700984962 /* RACTestObject.m */,\n\t\t\t\tD0C3131B19EF2D9700984962 /* RACTestSchedulerSpec.m */,\n\t\t\t\tD0C3131C19EF2D9700984962 /* RACTestUIButton.h */,\n\t\t\t\tD0C3131D19EF2D9700984962 /* RACTestUIButton.m */,\n\t\t\t);\n\t\t\tpath = \"Objective-C\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD03B4A3919F4C25F009E02AC /* Signals */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD08C54AF1A69A2AC00AD8286 /* Action.swift */,\n\t\t\t\tC7142DBB1CDEA167009F402D /* CocoaAction.swift */,\n\t\t\t\tCD0C45DD1CC9A288009F5BF0 /* DynamicProperty.swift */,\n\t\t\t\tD85C65291C0D84C7005A77AD /* Flatten.swift */,\n\t\t\t\tD08C54B01A69A2AC00AD8286 /* Property.swift */,\n\t\t\t\tD08C54B11A69A2AC00AD8286 /* Signal.swift */,\n\t\t\t\tD08C54B21A69A2AC00AD8286 /* SignalProducer.swift */,\n\t\t\t);\n\t\t\tname = Signals;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD03B4A3A19F4C26D009E02AC /* Internal Utilities */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD00004081A46864E000E7D41 /* TupleExtensions.swift */,\n\t\t\t);\n\t\t\tname = \"Internal Utilities\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD03B4A3B19F4C281009E02AC /* Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD03B4A3C19F4C39A009E02AC /* FoundationExtensions.swift */,\n\t\t\t);\n\t\t\tname = Extensions;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD04725E019E49ED7006002AA = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD04725EC19E49ED7006002AA /* ReactiveCocoa */,\n\t\t\t\tD04725F919E49ED7006002AA /* ReactiveCocoaTests */,\n\t\t\t\tD047262519E49FE8006002AA /* Configuration */,\n\t\t\t\tD04725EB19E49ED7006002AA /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t\tusesTabs = 1;\n\t\t};\n\t\tD04725EB19E49ED7006002AA /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD04725EA19E49ED7006002AA /* ReactiveCocoa.framework */,\n\t\t\t\tD04725F519E49ED7006002AA /* ReactiveCocoaTests.xctest */,\n\t\t\t\tD047260C19E49F82006002AA /* ReactiveCocoa.framework */,\n\t\t\t\tD047261619E49F82006002AA /* ReactiveCocoaTests.xctest */,\n\t\t\t\tA9B315541B3940610001CB9C /* ReactiveCocoa.framework */,\n\t\t\t\t57A4D2411BA13D7A00F7D4B1 /* ReactiveCocoa.framework */,\n\t\t\t\t7DFBED031CDB8C9500EE435B /* ReactiveCocoaTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD04725EC19E49ED7006002AA /* ReactiveCocoa */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD04725EF19E49ED7006002AA /* ReactiveCocoa.h */,\n\t\t\t\tD0C312B919EF2A3000984962 /* Swift */,\n\t\t\t\tD037642919EDA3B600A782A9 /* Objective-C */,\n\t\t\t\tD04725ED19E49ED7006002AA /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = ReactiveCocoa;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD04725ED19E49ED7006002AA /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tCDC42E2E1AE7AB8B00965373 /* Result.framework */,\n\t\t\t\tD04725EE19E49ED7006002AA /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD04725F919E49ED7006002AA /* ReactiveCocoaTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD0C312ED19EF2A6F00984962 /* Swift */,\n\t\t\t\tD037667519EDA5D900A782A9 /* Objective-C */,\n\t\t\t\tD04725FA19E49ED7006002AA /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = ReactiveCocoaTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD04725FA19E49ED7006002AA /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD05E662419EDD82000904ACA /* Nimble.framework */,\n\t\t\t\tD037672B19EDA75D00A782A9 /* Quick.framework */,\n\t\t\t\tD03766B119EDA60000A782A9 /* test-data.json */,\n\t\t\t\tBFA6B94A1A76044800C846D1 /* SignalProducerNimbleMatchers.swift */,\n\t\t\t\tD04725FB19E49ED7006002AA /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047262519E49FE8006002AA /* Configuration */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047262619E49FE8006002AA /* Base */,\n\t\t\t\tD047263119E49FE8006002AA /* iOS */,\n\t\t\t\tD047263619E49FE8006002AA /* Mac OS X */,\n\t\t\t\tA97451321B3A935E00F48E55 /* watchOS */,\n\t\t\t\t57A4D2431BA13F9700F7D4B1 /* tvOS */,\n\t\t\t\tD047263C19E49FE8006002AA /* README.md */,\n\t\t\t);\n\t\t\tname = Configuration;\n\t\t\tpath = Carthage/Checkouts/xcconfigs;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047262619E49FE8006002AA /* Base */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047262719E49FE8006002AA /* Common.xcconfig */,\n\t\t\t\tD047262819E49FE8006002AA /* Configurations */,\n\t\t\t\tD047262D19E49FE8006002AA /* Targets */,\n\t\t\t);\n\t\t\tpath = Base;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047262819E49FE8006002AA /* Configurations */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047262919E49FE8006002AA /* Debug.xcconfig */,\n\t\t\t\tD047262A19E49FE8006002AA /* Profile.xcconfig */,\n\t\t\t\tD047262B19E49FE8006002AA /* Release.xcconfig */,\n\t\t\t\tD047262C19E49FE8006002AA /* Test.xcconfig */,\n\t\t\t);\n\t\t\tpath = Configurations;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047262D19E49FE8006002AA /* Targets */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047262E19E49FE8006002AA /* Application.xcconfig */,\n\t\t\t\tD047262F19E49FE8006002AA /* Framework.xcconfig */,\n\t\t\t\tD047263019E49FE8006002AA /* StaticLibrary.xcconfig */,\n\t\t\t);\n\t\t\tpath = Targets;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047263119E49FE8006002AA /* iOS */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047263219E49FE8006002AA /* iOS-Application.xcconfig */,\n\t\t\t\tD047263319E49FE8006002AA /* iOS-Base.xcconfig */,\n\t\t\t\tD047263419E49FE8006002AA /* iOS-Framework.xcconfig */,\n\t\t\t\tD047263519E49FE8006002AA /* iOS-StaticLibrary.xcconfig */,\n\t\t\t);\n\t\t\tpath = iOS;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD047263619E49FE8006002AA /* Mac OS X */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD047263719E49FE8006002AA /* Mac-Application.xcconfig */,\n\t\t\t\tD047263819E49FE8006002AA /* Mac-Base.xcconfig */,\n\t\t\t\tD047263919E49FE8006002AA /* Mac-DynamicLibrary.xcconfig */,\n\t\t\t\tD047263A19E49FE8006002AA /* Mac-Framework.xcconfig */,\n\t\t\t\tD047263B19E49FE8006002AA /* Mac-StaticLibrary.xcconfig */,\n\t\t\t);\n\t\t\tpath = \"Mac OS X\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD0C312B919EF2A3000984962 /* Swift */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD0C312BB19EF2A5800984962 /* Atomic.swift */,\n\t\t\t\tD0C312BC19EF2A5800984962 /* Bag.swift */,\n\t\t\t\tD0C312BE19EF2A5800984962 /* Disposable.swift */,\n\t\t\t\tD08C54B51A69A3DB00AD8286 /* Event.swift */,\n\t\t\t\tD0C312C419EF2A5800984962 /* ObjectiveCBridging.swift */,\n\t\t\t\tEBCC7DBB1BBF010C00A2AE92 /* Observer.swift */,\n\t\t\t\tD871D69E1B3B29A40070F16C /* Optional.swift */,\n\t\t\t\tD0C312C819EF2A5800984962 /* Scheduler.swift */,\n\t\t\t\tC79B647B1CD52E23003F2376 /* EventLogger.swift */,\n\t\t\t\tD03B4A3919F4C25F009E02AC /* Signals */,\n\t\t\t\tD03B4A3A19F4C26D009E02AC /* Internal Utilities */,\n\t\t\t\tD03B4A3B19F4C281009E02AC /* Extensions */,\n\t\t\t);\n\t\t\tpath = Swift;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD0C312ED19EF2A6F00984962 /* Swift */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD021671C1A6CD50500987861 /* ActionSpec.swift */,\n\t\t\t\tD0C312EE19EF2A7700984962 /* AtomicSpec.swift */,\n\t\t\t\tD0C312EF19EF2A7700984962 /* BagSpec.swift */,\n\t\t\t\tCD8401821CEE8ED7009F0ABF /* CocoaActionSpec.swift */,\n\t\t\t\tD0C312F019EF2A7700984962 /* DisposableSpec.swift */,\n\t\t\t\tCA6F284F1C52626B001879D2 /* FlattenSpec.swift */,\n\t\t\t\tD8170FC01B100EBC004192AD /* FoundationExtensionsSpec.swift */,\n\t\t\t\tD0A226101A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift */,\n\t\t\t\tD0A2260D1A72F16D00D33B74 /* PropertySpec.swift */,\n\t\t\t\tD0C312F219EF2A7700984962 /* SchedulerSpec.swift */,\n\t\t\t\t02D260291C1D6DAF003ACC61 /* SignalLifetimeSpec.swift */,\n\t\t\t\tD8024DB11B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift */,\n\t\t\t\tD0A2260A1A72E6C500D33B74 /* SignalProducerSpec.swift */,\n\t\t\t\tD0A226071A72E0E900D33B74 /* SignalSpec.swift */,\n\t\t\t\tB696FB801A7640C00075236D /* TestError.swift */,\n\t\t\t\tC79B64731CD38B2B003F2376 /* TestLogger.swift */,\n\t\t\t);\n\t\t\tpath = Swift;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t57A4D2091BA13D7A00F7D4B1 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57A4D20A1BA13D7A00F7D4B1 /* ReactiveCocoa.h in Headers */,\n\t\t\t\t57A4D20B1BA13D7A00F7D4B1 /* EXTKeyPathCoding.h in Headers */,\n\t\t\t\tA1046B7D1BFF5664004D8045 /* EXTRuntimeExtensions.h in Headers */,\n\t\t\t\t57A4D20C1BA13D7A00F7D4B1 /* EXTScope.h in Headers */,\n\t\t\t\t57A4D20D1BA13D7A00F7D4B1 /* metamacros.h in Headers */,\n\t\t\t\t57A4D20E1BA13D7A00F7D4B1 /* NSArray+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D20F1BA13D7A00F7D4B1 /* NSData+RACSupport.h in Headers */,\n\t\t\t\tBEBDD6E51CDC292D009A75A9 /* RACDelegateProxy.h in Headers */,\n\t\t\t\t57A4D2101BA13D7A00F7D4B1 /* NSDictionary+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D2111BA13D7A00F7D4B1 /* NSEnumerator+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D2121BA13D7A00F7D4B1 /* NSFileHandle+RACSupport.h in Headers */,\n\t\t\t\t57A4D2131BA13D7A00F7D4B1 /* NSIndexSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D2141BA13D7A00F7D4B1 /* NSNotificationCenter+RACSupport.h in Headers */,\n\t\t\t\t57A4D2151BA13D7A00F7D4B1 /* NSObject+RACDeallocating.h in Headers */,\n\t\t\t\t57A4D2161BA13D7A00F7D4B1 /* NSObject+RACLifting.h in Headers */,\n\t\t\t\t57A4D2171BA13D7A00F7D4B1 /* NSObject+RACPropertySubscribing.h in Headers */,\n\t\t\t\t57DC89A01C5066D400E367B7 /* UIGestureRecognizer+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D2181BA13D7A00F7D4B1 /* NSObject+RACSelectorSignal.h in Headers */,\n\t\t\t\t57A4D2191BA13D7A00F7D4B1 /* NSOrderedSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D21A1BA13D7A00F7D4B1 /* NSSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D21B1BA13D7A00F7D4B1 /* NSString+RACSequenceAdditions.h in Headers */,\n\t\t\t\t57A4D21C1BA13D7A00F7D4B1 /* NSString+RACSupport.h in Headers */,\n\t\t\t\t57A4D21E1BA13D7A00F7D4B1 /* NSUserDefaults+RACSupport.h in Headers */,\n\t\t\t\t57A4D21F1BA13D7A00F7D4B1 /* RACBehaviorSubject.h in Headers */,\n\t\t\t\t57A4D2201BA13D7A00F7D4B1 /* RACChannel.h in Headers */,\n\t\t\t\t57A4D2211BA13D7A00F7D4B1 /* RACCommand.h in Headers */,\n\t\t\t\t57A4D2221BA13D7A00F7D4B1 /* RACCompoundDisposable.h in Headers */,\n\t\t\t\t57A4D2231BA13D7A00F7D4B1 /* RACDisposable.h in Headers */,\n\t\t\t\t57A4D2241BA13D7A00F7D4B1 /* RACEvent.h in Headers */,\n\t\t\t\t7DFBED6F1CDB926400EE435B /* UIBarButtonItem+RACCommandSupport.h in Headers */,\n\t\t\t\t57A4D2251BA13D7A00F7D4B1 /* RACGroupedSignal.h in Headers */,\n\t\t\t\t57A4D2261BA13D7A00F7D4B1 /* RACKVOChannel.h in Headers */,\n\t\t\t\t57A4D2271BA13D7A00F7D4B1 /* RACMulticastConnection.h in Headers */,\n\t\t\t\t57A4D2281BA13D7A00F7D4B1 /* RACQueueScheduler.h in Headers */,\n\t\t\t\t57DC89A51C50675700E367B7 /* UITextField+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D2291BA13D7A00F7D4B1 /* RACQueueScheduler+Subclass.h in Headers */,\n\t\t\t\t57A4D22A1BA13D7A00F7D4B1 /* RACReplaySubject.h in Headers */,\n\t\t\t\t57DC89A21C50673C00E367B7 /* UISegmentedControl+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D22B1BA13D7A00F7D4B1 /* RACScheduler.h in Headers */,\n\t\t\t\t57DC89A41C50674D00E367B7 /* UITableViewHeaderFooterView+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D22C1BA13D7A00F7D4B1 /* RACScheduler+Subclass.h in Headers */,\n\t\t\t\t57DC89A11C50672B00E367B7 /* UIControl+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D22D1BA13D7A00F7D4B1 /* RACScopedDisposable.h in Headers */,\n\t\t\t\t57DC89A31C50674300E367B7 /* UITableViewCell+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D22E1BA13D7A00F7D4B1 /* RACSequence.h in Headers */,\n\t\t\t\t57A4D22F1BA13D7A00F7D4B1 /* RACSerialDisposable.h in Headers */,\n\t\t\t\t57A4D2301BA13D7A00F7D4B1 /* RACSignal.h in Headers */,\n\t\t\t\t57DC89A81C50679E00E367B7 /* UICollectionReusableView+RACSignalSupport.h in Headers */,\n\t\t\t\t57DC89A71C50679700E367B7 /* UIButton+RACCommandSupport.h in Headers */,\n\t\t\t\t57A4D2311BA13D7A00F7D4B1 /* RACSignal+Operations.h in Headers */,\n\t\t\t\t57A4D2321BA13D7A00F7D4B1 /* RACStream.h in Headers */,\n\t\t\t\t57A4D2331BA13D7A00F7D4B1 /* RACSubject.h in Headers */,\n\t\t\t\t57A4D2341BA13D7A00F7D4B1 /* RACSubscriber.h in Headers */,\n\t\t\t\t57A4D2351BA13D7A00F7D4B1 /* RACSubscriptingAssignmentTrampoline.h in Headers */,\n\t\t\t\t57A4D2361BA13D7A00F7D4B1 /* RACTargetQueueScheduler.h in Headers */,\n\t\t\t\t57A4D2371BA13D7A00F7D4B1 /* RACTestScheduler.h in Headers */,\n\t\t\t\t57A4D2381BA13D7A00F7D4B1 /* RACTuple.h in Headers */,\n\t\t\t\t57DC89A61C50675F00E367B7 /* UITextView+RACSignalSupport.h in Headers */,\n\t\t\t\t57A4D2391BA13D7A00F7D4B1 /* RACUnit.h in Headers */,\n\t\t\t\t57A4D23A1BA13D7A00F7D4B1 /* RACDynamicPropertySuperclass.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tA9B315511B3940610001CB9C /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tA9B315CA1B3940AB0001CB9C /* ReactiveCocoa.h in Headers */,\n\t\t\t\tA9B315CB1B3940AB0001CB9C /* EXTKeyPathCoding.h in Headers */,\n\t\t\t\tA1046B7C1BFF5662004D8045 /* EXTRuntimeExtensions.h in Headers */,\n\t\t\t\tA9B315CD1B3940AB0001CB9C /* EXTScope.h in Headers */,\n\t\t\t\tA9B315CE1B3940AB0001CB9C /* metamacros.h in Headers */,\n\t\t\t\tA9B315D01B3940AB0001CB9C /* NSArray+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315D31B3940AB0001CB9C /* NSData+RACSupport.h in Headers */,\n\t\t\t\tA9B315D41B3940AB0001CB9C /* NSDictionary+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315D51B3940AB0001CB9C /* NSEnumerator+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315D61B3940AB0001CB9C /* NSFileHandle+RACSupport.h in Headers */,\n\t\t\t\tA9B315D71B3940AB0001CB9C /* NSIndexSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315D91B3940AB0001CB9C /* NSNotificationCenter+RACSupport.h in Headers */,\n\t\t\t\tA9B315DB1B3940AB0001CB9C /* NSObject+RACDeallocating.h in Headers */,\n\t\t\t\tA9B315DE1B3940AB0001CB9C /* NSObject+RACLifting.h in Headers */,\n\t\t\t\tA9B315DF1B3940AB0001CB9C /* NSObject+RACPropertySubscribing.h in Headers */,\n\t\t\t\tA9B315E01B3940AB0001CB9C /* NSObject+RACSelectorSignal.h in Headers */,\n\t\t\t\tA9B315E11B3940AB0001CB9C /* NSOrderedSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315E21B3940AB0001CB9C /* NSSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315E41B3940AB0001CB9C /* NSString+RACSequenceAdditions.h in Headers */,\n\t\t\t\tA9B315E51B3940AB0001CB9C /* NSString+RACSupport.h in Headers */,\n\t\t\t\tA9B315E81B3940AB0001CB9C /* NSUserDefaults+RACSupport.h in Headers */,\n\t\t\t\tA9B315EA1B3940AB0001CB9C /* RACBehaviorSubject.h in Headers */,\n\t\t\t\tA9B315EC1B3940AB0001CB9C /* RACChannel.h in Headers */,\n\t\t\t\tA9B315ED1B3940AC0001CB9C /* RACCommand.h in Headers */,\n\t\t\t\tA9B315EE1B3940AC0001CB9C /* RACCompoundDisposable.h in Headers */,\n\t\t\t\tA9B315F01B3940AC0001CB9C /* RACDisposable.h in Headers */,\n\t\t\t\tA9B315F71B3940AC0001CB9C /* RACEvent.h in Headers */,\n\t\t\t\tBEBDD6E61CDC292D009A75A9 /* RACDelegateProxy.h in Headers */,\n\t\t\t\tA9B315F81B3940AC0001CB9C /* RACGroupedSignal.h in Headers */,\n\t\t\t\tA9B315FB1B3940AC0001CB9C /* RACKVOChannel.h in Headers */,\n\t\t\t\tA9B315FE1B3940AC0001CB9C /* RACMulticastConnection.h in Headers */,\n\t\t\t\tA9B316021B3940AD0001CB9C /* RACQueueScheduler.h in Headers */,\n\t\t\t\tA9B316031B3940AD0001CB9C /* RACQueueScheduler+Subclass.h in Headers */,\n\t\t\t\tA9B316041B3940AD0001CB9C /* RACReplaySubject.h in Headers */,\n\t\t\t\tA9B316061B3940AD0001CB9C /* RACScheduler.h in Headers */,\n\t\t\t\tA9B316081B3940AD0001CB9C /* RACScheduler+Subclass.h in Headers */,\n\t\t\t\tA9B316091B3940AD0001CB9C /* RACScopedDisposable.h in Headers */,\n\t\t\t\tA9B3160A1B3940AD0001CB9C /* RACSequence.h in Headers */,\n\t\t\t\tA9B3160B1B3940AD0001CB9C /* RACSerialDisposable.h in Headers */,\n\t\t\t\tA9B3160C1B3940AE0001CB9C /* RACSignal.h in Headers */,\n\t\t\t\tA9B3160D1B3940AE0001CB9C /* RACSignal+Operations.h in Headers */,\n\t\t\t\tA9B3160F1B3940AE0001CB9C /* RACStream.h in Headers */,\n\t\t\t\tA9B316121B3940AE0001CB9C /* RACSubject.h in Headers */,\n\t\t\t\tA9B316131B3940AE0001CB9C /* RACSubscriber.h in Headers */,\n\t\t\t\tA9B316151B3940AE0001CB9C /* RACSubscriptingAssignmentTrampoline.h in Headers */,\n\t\t\t\tA9B316171B3940AF0001CB9C /* RACTargetQueueScheduler.h in Headers */,\n\t\t\t\tA9B316181B3940AF0001CB9C /* RACTestScheduler.h in Headers */,\n\t\t\t\tA9B316191B3940AF0001CB9C /* RACTuple.h in Headers */,\n\t\t\t\tA9B3161C1B3940AF0001CB9C /* RACUnit.h in Headers */,\n\t\t\t\tA9B316311B3940B20001CB9C /* RACDynamicPropertySuperclass.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725E719E49ED7006002AA /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD04725F019E49ED7006002AA /* ReactiveCocoa.h in Headers */,\n\t\t\t\tD037652019EDA41200A782A9 /* NSObject+RACLifting.h in Headers */,\n\t\t\t\tD03764EC19EDA41200A782A9 /* NSControl+RACCommandSupport.h in Headers */,\n\t\t\t\tD037655C19EDA41200A782A9 /* RACChannel.h in Headers */,\n\t\t\t\tD03765EE19EDA41200A782A9 /* RACSubscriber.h in Headers */,\n\t\t\t\tD03765D219EDA41200A782A9 /* RACSignal.h in Headers */,\n\t\t\t\tD037650419EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD43F27A01A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h in Headers */,\n\t\t\t\tD037659A19EDA41200A782A9 /* RACKVOChannel.h in Headers */,\n\t\t\t\tD037651419EDA41200A782A9 /* NSObject+RACDeallocating.h in Headers */,\n\t\t\t\tD037650C19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h in Headers */,\n\t\t\t\tD037667319EDA57100A782A9 /* metamacros.h in Headers */,\n\t\t\t\tD037666B19EDA57100A782A9 /* EXTKeyPathCoding.h in Headers */,\n\t\t\t\tD03765F419EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h in Headers */,\n\t\t\t\tD03765C419EDA41200A782A9 /* RACScheduler+Subclass.h in Headers */,\n\t\t\t\tD037656E19EDA41200A782A9 /* RACDisposable.h in Headers */,\n\t\t\t\tD03765B019EDA41200A782A9 /* RACQueueScheduler.h in Headers */,\n\t\t\t\tBEBDD6E81CDC292F009A75A9 /* RACDelegateProxy.h in Headers */,\n\t\t\t\tD037652419EDA41200A782A9 /* NSObject+RACPropertySubscribing.h in Headers */,\n\t\t\t\tD037650019EDA41200A782A9 /* NSFileHandle+RACSupport.h in Headers */,\n\t\t\t\tD037653019EDA41200A782A9 /* NSSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037654019EDA41200A782A9 /* NSText+RACSignalSupport.h in Headers */,\n\t\t\t\tD03765E019EDA41200A782A9 /* RACStream.h in Headers */,\n\t\t\t\tD03765FC19EDA41200A782A9 /* RACTargetQueueScheduler.h in Headers */,\n\t\t\t\tD03765B419EDA41200A782A9 /* RACQueueScheduler+Subclass.h in Headers */,\n\t\t\t\tD037661019EDA41200A782A9 /* RACUnit.h in Headers */,\n\t\t\t\tD037656419EDA41200A782A9 /* RACCompoundDisposable.h in Headers */,\n\t\t\t\tD03764F419EDA41200A782A9 /* NSData+RACSupport.h in Headers */,\n\t\t\t\tD03764FC19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD03765CA19EDA41200A782A9 /* RACSequence.h in Headers */,\n\t\t\t\tD037672719EDA63400A782A9 /* RACBehaviorSubject.h in Headers */,\n\t\t\t\tD037653C19EDA41200A782A9 /* NSString+RACSupport.h in Headers */,\n\t\t\t\tD03765CE19EDA41200A782A9 /* RACSerialDisposable.h in Headers */,\n\t\t\t\tD03765D619EDA41200A782A9 /* RACSignal+Operations.h in Headers */,\n\t\t\t\tD03765B619EDA41200A782A9 /* RACReplaySubject.h in Headers */,\n\t\t\t\tD03765A219EDA41200A782A9 /* RACMulticastConnection.h in Headers */,\n\t\t\t\tD037658E19EDA41200A782A9 /* RACGroupedSignal.h in Headers */,\n\t\t\t\tD037654819EDA41200A782A9 /* NSUserDefaults+RACSupport.h in Headers */,\n\t\t\t\tD03765BE19EDA41200A782A9 /* RACScheduler.h in Headers */,\n\t\t\t\tD037656019EDA41200A782A9 /* RACCommand.h in Headers */,\n\t\t\t\tD037660419EDA41200A782A9 /* RACTuple.h in Headers */,\n\t\t\t\tD03765C619EDA41200A782A9 /* RACScopedDisposable.h in Headers */,\n\t\t\t\tD037660019EDA41200A782A9 /* RACTestScheduler.h in Headers */,\n\t\t\t\tD037652C19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD03764F019EDA41200A782A9 /* NSControl+RACTextSignalSupport.h in Headers */,\n\t\t\t\tD03765EA19EDA41200A782A9 /* RACSubject.h in Headers */,\n\t\t\t\tA1046B7A1BFF5661004D8045 /* EXTRuntimeExtensions.h in Headers */,\n\t\t\t\tD037652819EDA41200A782A9 /* NSObject+RACSelectorSignal.h in Headers */,\n\t\t\t\tD037654419EDA41200A782A9 /* NSURLConnection+RACSupport.h in Headers */,\n\t\t\t\tD03764E819EDA41200A782A9 /* NSArray+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037651019EDA41200A782A9 /* NSObject+RACAppKitBindings.h in Headers */,\n\t\t\t\tD037658A19EDA41200A782A9 /* RACEvent.h in Headers */,\n\t\t\t\tD037667119EDA57100A782A9 /* EXTScope.h in Headers */,\n\t\t\t\tD037653819EDA41200A782A9 /* NSString+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD03764F819EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047260919E49F82006002AA /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD037664519EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.h in Headers */,\n\t\t\t\tD037666419EDA43C00A782A9 /* ReactiveCocoa.h in Headers */,\n\t\t\t\tD037652519EDA41200A782A9 /* NSObject+RACPropertySubscribing.h in Headers */,\n\t\t\t\tD03765B119EDA41200A782A9 /* RACQueueScheduler.h in Headers */,\n\t\t\t\tD037662519EDA41200A782A9 /* UIButton+RACCommandSupport.h in Headers */,\n\t\t\t\tD037672819EDA63500A782A9 /* RACBehaviorSubject.h in Headers */,\n\t\t\t\tD037660119EDA41200A782A9 /* RACTestScheduler.h in Headers */,\n\t\t\t\tD03765A319EDA41200A782A9 /* RACMulticastConnection.h in Headers */,\n\t\t\t\tD03765B719EDA41200A782A9 /* RACReplaySubject.h in Headers */,\n\t\t\t\tD037663D19EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.h in Headers */,\n\t\t\t\tD037656F19EDA41200A782A9 /* RACDisposable.h in Headers */,\n\t\t\t\t314304171ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.h in Headers */,\n\t\t\t\tD037654519EDA41200A782A9 /* NSURLConnection+RACSupport.h in Headers */,\n\t\t\t\tD037661D19EDA41200A782A9 /* UIAlertView+RACSignalSupport.h in Headers */,\n\t\t\t\tD037650D19EDA41200A782A9 /* NSNotificationCenter+RACSupport.h in Headers */,\n\t\t\t\tD037650119EDA41200A782A9 /* NSFileHandle+RACSupport.h in Headers */,\n\t\t\t\tD037666119EDA41200A782A9 /* UITextView+RACSignalSupport.h in Headers */,\n\t\t\t\tD037659B19EDA41200A782A9 /* RACKVOChannel.h in Headers */,\n\t\t\t\tD037652D19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD03764F919EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037667219EDA57100A782A9 /* EXTScope.h in Headers */,\n\t\t\t\tD037663519EDA41200A782A9 /* UIDatePicker+RACSignalSupport.h in Headers */,\n\t\t\t\tD037667419EDA57100A782A9 /* metamacros.h in Headers */,\n\t\t\t\tD03764FD19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037652119EDA41200A782A9 /* NSObject+RACLifting.h in Headers */,\n\t\t\t\tD037665919EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.h in Headers */,\n\t\t\t\tD037656519EDA41200A782A9 /* RACCompoundDisposable.h in Headers */,\n\t\t\t\tD037653D19EDA41200A782A9 /* NSString+RACSupport.h in Headers */,\n\t\t\t\tD037662919EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.h in Headers */,\n\t\t\t\tD037660519EDA41200A782A9 /* RACTuple.h in Headers */,\n\t\t\t\tD037665519EDA41200A782A9 /* UITableViewCell+RACSignalSupport.h in Headers */,\n\t\t\t\tD03764F519EDA41200A782A9 /* NSData+RACSupport.h in Headers */,\n\t\t\t\tD037653919EDA41200A782A9 /* NSString+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037651519EDA41200A782A9 /* NSObject+RACDeallocating.h in Headers */,\n\t\t\t\tD037658F19EDA41200A782A9 /* RACGroupedSignal.h in Headers */,\n\t\t\t\tD03765C519EDA41200A782A9 /* RACScheduler+Subclass.h in Headers */,\n\t\t\t\tD03765E119EDA41200A782A9 /* RACStream.h in Headers */,\n\t\t\t\tD03765D719EDA41200A782A9 /* RACSignal+Operations.h in Headers */,\n\t\t\t\tD037665D19EDA41200A782A9 /* UITextField+RACSignalSupport.h in Headers */,\n\t\t\t\tD037664919EDA41200A782A9 /* UISlider+RACSignalSupport.h in Headers */,\n\t\t\t\tD03765BF19EDA41200A782A9 /* RACScheduler.h in Headers */,\n\t\t\t\tD43F27A11A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.h in Headers */,\n\t\t\t\tD03764E919EDA41200A782A9 /* NSArray+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037654919EDA41200A782A9 /* NSUserDefaults+RACSupport.h in Headers */,\n\t\t\t\tD037663919EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.h in Headers */,\n\t\t\t\tD037653119EDA41200A782A9 /* NSSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD03765CB19EDA41200A782A9 /* RACSequence.h in Headers */,\n\t\t\t\tD037662D19EDA41200A782A9 /* UIControl+RACSignalSupport.h in Headers */,\n\t\t\t\tD037666C19EDA57100A782A9 /* EXTKeyPathCoding.h in Headers */,\n\t\t\t\tD037658B19EDA41200A782A9 /* RACEvent.h in Headers */,\n\t\t\t\tD03765CF19EDA41200A782A9 /* RACSerialDisposable.h in Headers */,\n\t\t\t\tD037650519EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.h in Headers */,\n\t\t\t\tD037655D19EDA41200A782A9 /* RACChannel.h in Headers */,\n\t\t\t\tD03765B519EDA41200A782A9 /* RACQueueScheduler+Subclass.h in Headers */,\n\t\t\t\tD037665119EDA41200A782A9 /* UISwitch+RACSignalSupport.h in Headers */,\n\t\t\t\tD037664119EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.h in Headers */,\n\t\t\t\tD037652919EDA41200A782A9 /* NSObject+RACSelectorSignal.h in Headers */,\n\t\t\t\tD03765D319EDA41200A782A9 /* RACSignal.h in Headers */,\n\t\t\t\tD03765F519EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.h in Headers */,\n\t\t\t\tD03765C719EDA41200A782A9 /* RACScopedDisposable.h in Headers */,\n\t\t\t\tA1046B7B1BFF5662004D8045 /* EXTRuntimeExtensions.h in Headers */,\n\t\t\t\tD037661119EDA41200A782A9 /* RACUnit.h in Headers */,\n\t\t\t\tD03765FD19EDA41200A782A9 /* RACTargetQueueScheduler.h in Headers */,\n\t\t\t\tD037661919EDA41200A782A9 /* UIActionSheet+RACSignalSupport.h in Headers */,\n\t\t\t\tD037664D19EDA41200A782A9 /* UIStepper+RACSignalSupport.h in Headers */,\n\t\t\t\tD037662119EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.h in Headers */,\n\t\t\t\tD03765EB19EDA41200A782A9 /* RACSubject.h in Headers */,\n\t\t\t\tBEBDD6E71CDC292E009A75A9 /* RACDelegateProxy.h in Headers */,\n\t\t\t\tD037656119EDA41200A782A9 /* RACCommand.h in Headers */,\n\t\t\t\tD03765EF19EDA41200A782A9 /* RACSubscriber.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t57A4D1AF1BA13D7A00F7D4B1 /* ReactiveCocoa-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 57A4D23C1BA13D7A00F7D4B1 /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t57A4D1B01BA13D7A00F7D4B1 /* Sources */,\n\t\t\t\t57A4D2071BA13D7A00F7D4B1 /* Frameworks */,\n\t\t\t\t57A4D2091BA13D7A00F7D4B1 /* Headers */,\n\t\t\t\t57A4D23B1BA13D7A00F7D4B1 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-tvOS\";\n\t\t\tproductName = ReactiveCocoa;\n\t\t\tproductReference = 57A4D2411BA13D7A00F7D4B1 /* ReactiveCocoa.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t7DFBED021CDB8C9500EE435B /* ReactiveCocoa-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 7DFBED0F1CDB8C9500EE435B /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t7DFBECFF1CDB8C9500EE435B /* Sources */,\n\t\t\t\t7DFBED001CDB8C9500EE435B /* Frameworks */,\n\t\t\t\t7DFBED011CDB8C9500EE435B /* Resources */,\n\t\t\t\t7DFBED151CDB8CEC00EE435B /* Copy Frameworks */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t7DFBED0A1CDB8C9500EE435B /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-tvOSTests\";\n\t\t\tproductName = \"ReactiveCocoa-tvOSTests\";\n\t\t\tproductReference = 7DFBED031CDB8C9500EE435B /* ReactiveCocoaTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tA9B315531B3940610001CB9C /* ReactiveCocoa-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = A9B3155D1B3940610001CB9C /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tA9B3154F1B3940610001CB9C /* Sources */,\n\t\t\t\tA9B315501B3940610001CB9C /* Frameworks */,\n\t\t\t\tA9B315511B3940610001CB9C /* Headers */,\n\t\t\t\tA9B315521B3940610001CB9C /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-watchOS\";\n\t\t\tproductName = ReactiveCocoa;\n\t\t\tproductReference = A9B315541B3940610001CB9C /* ReactiveCocoa.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD04725E919E49ED7006002AA /* ReactiveCocoa-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D047260019E49ED7006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD04725E519E49ED7006002AA /* Sources */,\n\t\t\t\tD04725E619E49ED7006002AA /* Frameworks */,\n\t\t\t\tD04725E719E49ED7006002AA /* Headers */,\n\t\t\t\tD04725E819E49ED7006002AA /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-Mac\";\n\t\t\tproductName = ReactiveCocoa;\n\t\t\tproductReference = D04725EA19E49ED7006002AA /* ReactiveCocoa.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD04725F419E49ED7006002AA /* ReactiveCocoa-MacTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D047260319E49ED7006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-MacTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD04725F119E49ED7006002AA /* Sources */,\n\t\t\t\tD04725F219E49ED7006002AA /* Frameworks */,\n\t\t\t\tD04725F319E49ED7006002AA /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD04725F819E49ED7006002AA /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-MacTests\";\n\t\t\tproductName = ReactiveCocoaTests;\n\t\t\tproductReference = D04725F519E49ED7006002AA /* ReactiveCocoaTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD047260B19E49F82006002AA /* ReactiveCocoa-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D047261F19E49F82006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD047260719E49F82006002AA /* Sources */,\n\t\t\t\tD047260819E49F82006002AA /* Frameworks */,\n\t\t\t\tD047260919E49F82006002AA /* Headers */,\n\t\t\t\tD047260A19E49F82006002AA /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-iOS\";\n\t\t\tproductName = ReactiveCocoa;\n\t\t\tproductReference = D047260C19E49F82006002AA /* ReactiveCocoa.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD047261519E49F82006002AA /* ReactiveCocoa-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D047262219E49F82006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD047261219E49F82006002AA /* Sources */,\n\t\t\t\tD047261319E49F82006002AA /* Frameworks */,\n\t\t\t\tD047261419E49F82006002AA /* Resources */,\n\t\t\t\tD01B7B6119EDD8F600D26E01 /* Copy Frameworks */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD047261919E49F82006002AA /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"ReactiveCocoa-iOSTests\";\n\t\t\tproductName = ReactiveCocoaTests;\n\t\t\tproductReference = D047261619E49F82006002AA /* ReactiveCocoaTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tD04725E119E49ED7006002AA /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0730;\n\t\t\t\tLastUpgradeCheck = 0710;\n\t\t\t\tORGANIZATIONNAME = GitHub;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t57A4D1AF1BA13D7A00F7D4B1 = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t7DFBED021CDB8C9500EE435B = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.3.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tA9B315531B3940610001CB9C = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD04725E919E49ED7006002AA = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD04725F419E49ED7006002AA = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD047260B19E49F82006002AA = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD047261519E49F82006002AA = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = D04725E419E49ED7006002AA /* Build configuration list for PBXProject \"ReactiveCocoa\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = D04725E019E49ED7006002AA;\n\t\t\tproductRefGroup = D04725EB19E49ED7006002AA /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tD04725E919E49ED7006002AA /* ReactiveCocoa-Mac */,\n\t\t\t\tD04725F419E49ED7006002AA /* ReactiveCocoa-MacTests */,\n\t\t\t\tD047260B19E49F82006002AA /* ReactiveCocoa-iOS */,\n\t\t\t\tD047261519E49F82006002AA /* ReactiveCocoa-iOSTests */,\n\t\t\t\tA9B315531B3940610001CB9C /* ReactiveCocoa-watchOS */,\n\t\t\t\t57A4D1AF1BA13D7A00F7D4B1 /* ReactiveCocoa-tvOS */,\n\t\t\t\t7DFBED021CDB8C9500EE435B /* ReactiveCocoa-tvOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t57A4D23B1BA13D7A00F7D4B1 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t7DFBED011CDB8C9500EE435B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t7DFBED141CDB8CE600EE435B /* test-data.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tA9B315521B3940610001CB9C /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725E819E49ED7006002AA /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725F319E49ED7006002AA /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD037671719EDA60000A782A9 /* test-data.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047260A19E49F82006002AA /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047261419E49F82006002AA /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD037671819EDA60000A782A9 /* test-data.json in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t57A4D1B01BA13D7A00F7D4B1 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57A4D1B11BA13D7A00F7D4B1 /* Optional.swift in Sources */,\n\t\t\t\t57D476951C4206EC00EFE697 /* UITableViewCell+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1B21BA13D7A00F7D4B1 /* RACCompoundDisposableProvider.d in Sources */,\n\t\t\t\t57D476901C4206D400EFE697 /* UIControl+RACSignalSupportPrivate.m in Sources */,\n\t\t\t\t57A4D1B31BA13D7A00F7D4B1 /* RACSignalProvider.d in Sources */,\n\t\t\t\t57A4D1B41BA13D7A00F7D4B1 /* Disposable.swift in Sources */,\n\t\t\t\t57A4D1B61BA13D7A00F7D4B1 /* Event.swift in Sources */,\n\t\t\t\t57A4D1B71BA13D7A00F7D4B1 /* ObjectiveCBridging.swift in Sources */,\n\t\t\t\t57A4D1B81BA13D7A00F7D4B1 /* Scheduler.swift in Sources */,\n\t\t\t\t57A4D1B91BA13D7A00F7D4B1 /* Action.swift in Sources */,\n\t\t\t\t57A4D1BA1BA13D7A00F7D4B1 /* Property.swift in Sources */,\n\t\t\t\t57A4D1BB1BA13D7A00F7D4B1 /* Signal.swift in Sources */,\n\t\t\t\t57A4D1BC1BA13D7A00F7D4B1 /* SignalProducer.swift in Sources */,\n\t\t\t\t57A4D1BD1BA13D7A00F7D4B1 /* Atomic.swift in Sources */,\n\t\t\t\t57A4D1BE1BA13D7A00F7D4B1 /* Bag.swift in Sources */,\n\t\t\t\t57A4D1BF1BA13D7A00F7D4B1 /* TupleExtensions.swift in Sources */,\n\t\t\t\t57A4D1C01BA13D7A00F7D4B1 /* FoundationExtensions.swift in Sources */,\n\t\t\t\t57A4D1C11BA13D7A00F7D4B1 /* EXTRuntimeExtensions.m in Sources */,\n\t\t\t\t57A4D1C21BA13D7A00F7D4B1 /* NSArray+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57A4D1C31BA13D7A00F7D4B1 /* NSData+RACSupport.m in Sources */,\n\t\t\t\t57A4D1C41BA13D7A00F7D4B1 /* NSDictionary+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57A4D1C51BA13D7A00F7D4B1 /* NSEnumerator+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD85C652D1C0E70E5005A77AD /* Flatten.swift in Sources */,\n\t\t\t\t57D476961C4206EC00EFE697 /* UITableViewHeaderFooterView+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1C61BA13D7A00F7D4B1 /* NSFileHandle+RACSupport.m in Sources */,\n\t\t\t\t57A4D1C71BA13D7A00F7D4B1 /* NSIndexSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57A4D1C81BA13D7A00F7D4B1 /* NSInvocation+RACTypeParsing.m in Sources */,\n\t\t\t\t57D4769B1C4206F200EFE697 /* UICollectionReusableView+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1C91BA13D7A00F7D4B1 /* NSNotificationCenter+RACSupport.m in Sources */,\n\t\t\t\t7DFBED6E1CDB918900EE435B /* UIBarButtonItem+RACCommandSupport.m in Sources */,\n\t\t\t\t57A4D1CA1BA13D7A00F7D4B1 /* NSObject+RACDeallocating.m in Sources */,\n\t\t\t\t57A4D1CB1BA13D7A00F7D4B1 /* NSObject+RACDescription.m in Sources */,\n\t\t\t\t57A4D1CC1BA13D7A00F7D4B1 /* NSObject+RACKVOWrapper.m in Sources */,\n\t\t\t\t57A4D1CD1BA13D7A00F7D4B1 /* NSObject+RACLifting.m in Sources */,\n\t\t\t\t57A4D1CE1BA13D7A00F7D4B1 /* NSObject+RACPropertySubscribing.m in Sources */,\n\t\t\t\t57A4D1CF1BA13D7A00F7D4B1 /* NSObject+RACSelectorSignal.m in Sources */,\n\t\t\t\t57D476981C4206EC00EFE697 /* UITextView+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1D01BA13D7A00F7D4B1 /* NSOrderedSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57A4D1D11BA13D7A00F7D4B1 /* NSSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57D476911C4206DA00EFE697 /* UIGestureRecognizer+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1D21BA13D7A00F7D4B1 /* NSString+RACKeyPathUtilities.m in Sources */,\n\t\t\t\t57D4769A1C4206F200EFE697 /* UIButton+RACCommandSupport.m in Sources */,\n\t\t\t\t57A4D1D31BA13D7A00F7D4B1 /* NSString+RACSequenceAdditions.m in Sources */,\n\t\t\t\t57A4D1D41BA13D7A00F7D4B1 /* NSString+RACSupport.m in Sources */,\n\t\t\t\t57A4D1D61BA13D7A00F7D4B1 /* NSUserDefaults+RACSupport.m in Sources */,\n\t\t\t\t57A4D1D71BA13D7A00F7D4B1 /* RACArraySequence.m in Sources */,\n\t\t\t\t57A4D1D81BA13D7A00F7D4B1 /* RACBehaviorSubject.m in Sources */,\n\t\t\t\t57A4D1D91BA13D7A00F7D4B1 /* RACBlockTrampoline.m in Sources */,\n\t\t\t\t57A4D1DA1BA13D7A00F7D4B1 /* RACChannel.m in Sources */,\n\t\t\t\t57A4D1DB1BA13D7A00F7D4B1 /* RACCommand.m in Sources */,\n\t\t\t\t57A4D1DC1BA13D7A00F7D4B1 /* RACCompoundDisposable.m in Sources */,\n\t\t\t\t57A4D1DD1BA13D7A00F7D4B1 /* RACDelegateProxy.m in Sources */,\n\t\t\t\t57A4D1DE1BA13D7A00F7D4B1 /* RACDisposable.m in Sources */,\n\t\t\t\tEBCC7DBF1BBF01E200A2AE92 /* Observer.swift in Sources */,\n\t\t\t\t57A4D1DF1BA13D7A00F7D4B1 /* RACDynamicSequence.m in Sources */,\n\t\t\t\tC7142DBF1CDEA195009F402D /* CocoaAction.swift in Sources */,\n\t\t\t\t57A4D1E01BA13D7A00F7D4B1 /* RACDynamicSignal.m in Sources */,\n\t\t\t\t57A4D1E11BA13D7A00F7D4B1 /* RACEagerSequence.m in Sources */,\n\t\t\t\tC79B64801CD52E4E003F2376 /* EventLogger.swift in Sources */,\n\t\t\t\t57D4768D1C42063C00EFE697 /* UIControl+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1E21BA13D7A00F7D4B1 /* RACEmptySequence.m in Sources */,\n\t\t\t\t57A4D1E31BA13D7A00F7D4B1 /* RACEmptySignal.m in Sources */,\n\t\t\t\t57A4D1E41BA13D7A00F7D4B1 /* RACErrorSignal.m in Sources */,\n\t\t\t\t57A4D1E51BA13D7A00F7D4B1 /* RACEvent.m in Sources */,\n\t\t\t\t57A4D1E61BA13D7A00F7D4B1 /* RACGroupedSignal.m in Sources */,\n\t\t\t\t57A4D1E71BA13D7A00F7D4B1 /* RACImmediateScheduler.m in Sources */,\n\t\t\t\t57D476971C4206EC00EFE697 /* UITextField+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1E81BA13D7A00F7D4B1 /* RACIndexSetSequence.m in Sources */,\n\t\t\t\t57A4D1E91BA13D7A00F7D4B1 /* RACKVOChannel.m in Sources */,\n\t\t\t\t57A4D1EA1BA13D7A00F7D4B1 /* RACKVOProxy.m in Sources */,\n\t\t\t\t57A4D1EB1BA13D7A00F7D4B1 /* RACKVOTrampoline.m in Sources */,\n\t\t\t\t57A4D1EC1BA13D7A00F7D4B1 /* RACMulticastConnection.m in Sources */,\n\t\t\t\t57A4D1EE1BA13D7A00F7D4B1 /* RACPassthroughSubscriber.m in Sources */,\n\t\t\t\t57A4D1EF1BA13D7A00F7D4B1 /* RACQueueScheduler.m in Sources */,\n\t\t\t\t57A4D1F01BA13D7A00F7D4B1 /* RACReplaySubject.m in Sources */,\n\t\t\t\t57A4D1F11BA13D7A00F7D4B1 /* RACReturnSignal.m in Sources */,\n\t\t\t\t57A4D1F21BA13D7A00F7D4B1 /* RACScheduler.m in Sources */,\n\t\t\t\t57A4D1F31BA13D7A00F7D4B1 /* RACScopedDisposable.m in Sources */,\n\t\t\t\t57A4D1F41BA13D7A00F7D4B1 /* RACSequence.m in Sources */,\n\t\t\t\t57A4D1F51BA13D7A00F7D4B1 /* RACSerialDisposable.m in Sources */,\n\t\t\t\t57A4D1F61BA13D7A00F7D4B1 /* RACSignal.m in Sources */,\n\t\t\t\t57D476921C4206DF00EFE697 /* UISegmentedControl+RACSignalSupport.m in Sources */,\n\t\t\t\t57A4D1F71BA13D7A00F7D4B1 /* RACSignal+Operations.m in Sources */,\n\t\t\t\t57A4D1F81BA13D7A00F7D4B1 /* RACSignalSequence.m in Sources */,\n\t\t\t\t57A4D1F91BA13D7A00F7D4B1 /* RACStream.m in Sources */,\n\t\t\t\t57A4D1FA1BA13D7A00F7D4B1 /* RACStringSequence.m in Sources */,\n\t\t\t\tCD0C45E11CC9A288009F5BF0 /* DynamicProperty.swift in Sources */,\n\t\t\t\t57A4D1FB1BA13D7A00F7D4B1 /* RACSubject.m in Sources */,\n\t\t\t\t57A4D1FC1BA13D7A00F7D4B1 /* RACSubscriber.m in Sources */,\n\t\t\t\t57A4D1FD1BA13D7A00F7D4B1 /* RACSubscriptingAssignmentTrampoline.m in Sources */,\n\t\t\t\t57A4D1FE1BA13D7A00F7D4B1 /* RACSubscriptionScheduler.m in Sources */,\n\t\t\t\t57A4D1FF1BA13D7A00F7D4B1 /* RACTargetQueueScheduler.m in Sources */,\n\t\t\t\t57A4D2001BA13D7A00F7D4B1 /* RACTestScheduler.m in Sources */,\n\t\t\t\t57A4D2011BA13D7A00F7D4B1 /* RACTuple.m in Sources */,\n\t\t\t\t57A4D2021BA13D7A00F7D4B1 /* RACTupleSequence.m in Sources */,\n\t\t\t\t57A4D2031BA13D7A00F7D4B1 /* RACUnarySequence.m in Sources */,\n\t\t\t\t57A4D2041BA13D7A00F7D4B1 /* RACUnit.m in Sources */,\n\t\t\t\t57A4D2051BA13D7A00F7D4B1 /* RACValueTransformer.m in Sources */,\n\t\t\t\t57A4D2061BA13D7A00F7D4B1 /* RACDynamicPropertySuperclass.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t7DFBECFF1CDB8C9500EE435B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t7DFBED221CDB8DE300EE435B /* ActionSpec.swift in Sources */,\n\t\t\t\t7DFBED231CDB8DE300EE435B /* AtomicSpec.swift in Sources */,\n\t\t\t\t7DFBED241CDB8DE300EE435B /* BagSpec.swift in Sources */,\n\t\t\t\t7DFBED251CDB8DE300EE435B /* DisposableSpec.swift in Sources */,\n\t\t\t\t7DFBED261CDB8DE300EE435B /* FoundationExtensionsSpec.swift in Sources */,\n\t\t\t\t7DFBED271CDB8DE300EE435B /* ObjectiveCBridgingSpec.swift in Sources */,\n\t\t\t\t7DFBED281CDB8DE300EE435B /* PropertySpec.swift in Sources */,\n\t\t\t\t7DFBED291CDB8DE300EE435B /* SchedulerSpec.swift in Sources */,\n\t\t\t\t7DFBED2A1CDB8DE300EE435B /* SignalLifetimeSpec.swift in Sources */,\n\t\t\t\t7DFBED2B1CDB8DE300EE435B /* SignalProducerSpec.swift in Sources */,\n\t\t\t\t7DFBED2C1CDB8DE300EE435B /* SignalProducerLiftingSpec.swift in Sources */,\n\t\t\t\t7DFBED2D1CDB8DE300EE435B /* SignalSpec.swift in Sources */,\n\t\t\t\t7DFBED2E1CDB8DE300EE435B /* FlattenSpec.swift in Sources */,\n\t\t\t\t7DFBED2F1CDB8DE300EE435B /* TestError.swift in Sources */,\n\t\t\t\t7DFBED301CDB8DE300EE435B /* TestLogger.swift in Sources */,\n\t\t\t\t7DFBED321CDB8DE300EE435B /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\t7DFBED331CDB8DE300EE435B /* NSNotificationCenterRACSupportSpec.m in Sources */,\n\t\t\t\t7DFBED351CDB8DE300EE435B /* NSObjectRACDeallocatingSpec.m in Sources */,\n\t\t\t\t7DFBED361CDB8DE300EE435B /* NSObjectRACLiftingSpec.m in Sources */,\n\t\t\t\t7DFBED381CDB8DE300EE435B /* NSObjectRACPropertySubscribingExamples.m in Sources */,\n\t\t\t\t7DFBED391CDB8DE300EE435B /* NSObjectRACPropertySubscribingSpec.m in Sources */,\n\t\t\t\t7DFBED3A1CDB8DE300EE435B /* NSObjectRACSelectorSignalSpec.m in Sources */,\n\t\t\t\t7DFBED3B1CDB8DE300EE435B /* NSStringRACKeyPathUtilitiesSpec.m in Sources */,\n\t\t\t\t7DFBED3D1CDB8DE300EE435B /* NSUserDefaultsRACSupportSpec.m in Sources */,\n\t\t\t\t7DFBED3E1CDB8DE300EE435B /* RACBlockTrampolineSpec.m in Sources */,\n\t\t\t\t7DFBED401CDB8DE300EE435B /* RACChannelExamples.m in Sources */,\n\t\t\t\t7DFBED411CDB8DE300EE435B /* RACChannelSpec.m in Sources */,\n\t\t\t\t7DFBED421CDB8DE300EE435B /* RACCommandSpec.m in Sources */,\n\t\t\t\t7DFBED431CDB8DE300EE435B /* RACCompoundDisposableSpec.m in Sources */,\n\t\t\t\t7DFBED451CDB8DE300EE435B /* RACControlCommandExamples.m in Sources */,\n\t\t\t\t7DFBED461CDB8DE300EE435B /* RACDelegateProxySpec.m in Sources */,\n\t\t\t\t7DFBED471CDB8DE300EE435B /* RACDisposableSpec.m in Sources */,\n\t\t\t\t7DFBED481CDB8DE300EE435B /* RACEventSpec.m in Sources */,\n\t\t\t\t7DFBED491CDB8DE300EE435B /* RACKVOChannelSpec.m in Sources */,\n\t\t\t\tCD8401851CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */,\n\t\t\t\t7DFBED4A1CDB8DE300EE435B /* RACKVOProxySpec.m in Sources */,\n\t\t\t\t7DFBED4B1CDB8DE300EE435B /* RACKVOWrapperSpec.m in Sources */,\n\t\t\t\t7DFBED6D1CDB8F7D00EE435B /* SignalProducerNimbleMatchers.swift in Sources */,\n\t\t\t\t7DFBED4C1CDB8DE300EE435B /* RACMulticastConnectionSpec.m in Sources */,\n\t\t\t\t7DFBED4E1CDB8DE300EE435B /* RACPropertySignalExamples.m in Sources */,\n\t\t\t\t7DFBED4F1CDB8DE300EE435B /* RACSchedulerSpec.m in Sources */,\n\t\t\t\t7DFBED501CDB8DE300EE435B /* RACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\t7DFBED521CDB8DE300EE435B /* RACSequenceExamples.m in Sources */,\n\t\t\t\t7DFBED531CDB8DE300EE435B /* RACSequenceSpec.m in Sources */,\n\t\t\t\t7DFBED541CDB8DE300EE435B /* RACSerialDisposableSpec.m in Sources */,\n\t\t\t\t7DFBED551CDB8DE300EE435B /* RACSignalSpec.m in Sources */,\n\t\t\t\t7DFBED571CDB8DE300EE435B /* RACStreamExamples.m in Sources */,\n\t\t\t\t7DFBED591CDB8DE300EE435B /* RACSubclassObject.m in Sources */,\n\t\t\t\t7DFBED5A1CDB8DE300EE435B /* RACSubjectSpec.m in Sources */,\n\t\t\t\t7DFBED5C1CDB8DE300EE435B /* RACSubscriberExamples.m in Sources */,\n\t\t\t\t7DFBED5D1CDB8DE300EE435B /* RACSubscriberSpec.m in Sources */,\n\t\t\t\t7DFBED5E1CDB8DE300EE435B /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */,\n\t\t\t\t7DFBED5F1CDB8DE300EE435B /* RACTargetQueueSchedulerSpec.m in Sources */,\n\t\t\t\t7DFBED601CDB8DE300EE435B /* RACTupleSpec.m in Sources */,\n\t\t\t\t7DFBED631CDB8DE300EE435B /* UIBarButtonItemRACSupportSpec.m in Sources */,\n\t\t\t\t7DFBED641CDB8DE300EE435B /* UIButtonRACSupportSpec.m in Sources */,\n\t\t\t\t7DFBED671CDB8DE300EE435B /* RACTestExampleScheduler.m in Sources */,\n\t\t\t\t7DFBED691CDB8DE300EE435B /* RACTestObject.m in Sources */,\n\t\t\t\t7DFBED6A1CDB8DE300EE435B /* RACTestSchedulerSpec.m in Sources */,\n\t\t\t\t7DFBED6C1CDB8DE300EE435B /* RACTestUIButton.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tA9B3154F1B3940610001CB9C /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tA9F793341B60D0140026BCBA /* Optional.swift in Sources */,\n\t\t\t\tA9B316341B394C7F0001CB9C /* RACCompoundDisposableProvider.d in Sources */,\n\t\t\t\tA9B316351B394C7F0001CB9C /* RACSignalProvider.d in Sources */,\n\t\t\t\tA9B315BC1B3940810001CB9C /* Disposable.swift in Sources */,\n\t\t\t\tA9B315BE1B3940810001CB9C /* Event.swift in Sources */,\n\t\t\t\tA9B315BF1B3940810001CB9C /* ObjectiveCBridging.swift in Sources */,\n\t\t\t\tA9B315C01B3940810001CB9C /* Scheduler.swift in Sources */,\n\t\t\t\tA9B315C11B3940810001CB9C /* Action.swift in Sources */,\n\t\t\t\tA9B315C21B3940810001CB9C /* Property.swift in Sources */,\n\t\t\t\tA9B315C31B3940810001CB9C /* Signal.swift in Sources */,\n\t\t\t\tA9B315C41B3940810001CB9C /* SignalProducer.swift in Sources */,\n\t\t\t\tA9B315C51B3940810001CB9C /* Atomic.swift in Sources */,\n\t\t\t\tA9B315C61B3940810001CB9C /* Bag.swift in Sources */,\n\t\t\t\tA9B315C71B3940810001CB9C /* TupleExtensions.swift in Sources */,\n\t\t\t\tA9B315C81B3940810001CB9C /* FoundationExtensions.swift in Sources */,\n\t\t\t\tA9B3155E1B3940750001CB9C /* EXTRuntimeExtensions.m in Sources */,\n\t\t\t\tA9B315601B3940750001CB9C /* NSArray+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315631B3940750001CB9C /* NSData+RACSupport.m in Sources */,\n\t\t\t\tA9B315641B3940750001CB9C /* NSDictionary+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315651B3940750001CB9C /* NSEnumerator+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD85C652C1C0E70E4005A77AD /* Flatten.swift in Sources */,\n\t\t\t\tA9B315661B3940750001CB9C /* NSFileHandle+RACSupport.m in Sources */,\n\t\t\t\tA9B315671B3940750001CB9C /* NSIndexSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315681B3940750001CB9C /* NSInvocation+RACTypeParsing.m in Sources */,\n\t\t\t\tA9B315691B3940750001CB9C /* NSNotificationCenter+RACSupport.m in Sources */,\n\t\t\t\tA9B3156B1B3940750001CB9C /* NSObject+RACDeallocating.m in Sources */,\n\t\t\t\tA9B3156C1B3940750001CB9C /* NSObject+RACDescription.m in Sources */,\n\t\t\t\tA9B3156D1B3940750001CB9C /* NSObject+RACKVOWrapper.m in Sources */,\n\t\t\t\tA9B3156E1B3940750001CB9C /* NSObject+RACLifting.m in Sources */,\n\t\t\t\tA9B3156F1B3940750001CB9C /* NSObject+RACPropertySubscribing.m in Sources */,\n\t\t\t\tA9B315701B3940750001CB9C /* NSObject+RACSelectorSignal.m in Sources */,\n\t\t\t\tA9B315711B3940750001CB9C /* NSOrderedSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315721B3940750001CB9C /* NSSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315731B3940750001CB9C /* NSString+RACKeyPathUtilities.m in Sources */,\n\t\t\t\tA9B315741B3940750001CB9C /* NSString+RACSequenceAdditions.m in Sources */,\n\t\t\t\tA9B315751B3940750001CB9C /* NSString+RACSupport.m in Sources */,\n\t\t\t\tA9B315781B3940750001CB9C /* NSUserDefaults+RACSupport.m in Sources */,\n\t\t\t\tA9B315791B3940750001CB9C /* RACArraySequence.m in Sources */,\n\t\t\t\tA9B3157A1B3940750001CB9C /* RACBehaviorSubject.m in Sources */,\n\t\t\t\tA9B3157B1B3940750001CB9C /* RACBlockTrampoline.m in Sources */,\n\t\t\t\tA9B3157C1B3940750001CB9C /* RACChannel.m in Sources */,\n\t\t\t\tA9B3157D1B3940750001CB9C /* RACCommand.m in Sources */,\n\t\t\t\tA9B3157E1B3940750001CB9C /* RACCompoundDisposable.m in Sources */,\n\t\t\t\tA9B3157F1B3940750001CB9C /* RACDelegateProxy.m in Sources */,\n\t\t\t\tA9B315801B3940750001CB9C /* RACDisposable.m in Sources */,\n\t\t\t\tEBCC7DBE1BBF01E200A2AE92 /* Observer.swift in Sources */,\n\t\t\t\tC79B647F1CD52E4D003F2376 /* EventLogger.swift in Sources */,\n\t\t\t\tA9B315811B3940750001CB9C /* RACDynamicSequence.m in Sources */,\n\t\t\t\tA9B315821B3940750001CB9C /* RACDynamicSignal.m in Sources */,\n\t\t\t\tA9B315831B3940750001CB9C /* RACEagerSequence.m in Sources */,\n\t\t\t\tA9B315841B3940750001CB9C /* RACEmptySequence.m in Sources */,\n\t\t\t\tA9B315851B3940750001CB9C /* RACEmptySignal.m in Sources */,\n\t\t\t\tA9B315861B3940750001CB9C /* RACErrorSignal.m in Sources */,\n\t\t\t\tA9B315871B3940750001CB9C /* RACEvent.m in Sources */,\n\t\t\t\tA9B315881B3940750001CB9C /* RACGroupedSignal.m in Sources */,\n\t\t\t\tA9B315891B3940750001CB9C /* RACImmediateScheduler.m in Sources */,\n\t\t\t\tA9B3158A1B3940750001CB9C /* RACIndexSetSequence.m in Sources */,\n\t\t\t\tA9B3158B1B3940750001CB9C /* RACKVOChannel.m in Sources */,\n\t\t\t\tA9B3158C1B3940750001CB9C /* RACKVOProxy.m in Sources */,\n\t\t\t\tA9B3158D1B3940750001CB9C /* RACKVOTrampoline.m in Sources */,\n\t\t\t\tA9B3158E1B3940750001CB9C /* RACMulticastConnection.m in Sources */,\n\t\t\t\tC7142DBE1CDEA194009F402D /* CocoaAction.swift in Sources */,\n\t\t\t\tA9B315901B3940750001CB9C /* RACPassthroughSubscriber.m in Sources */,\n\t\t\t\tA9B315911B3940750001CB9C /* RACQueueScheduler.m in Sources */,\n\t\t\t\tA9B315921B3940750001CB9C /* RACReplaySubject.m in Sources */,\n\t\t\t\tA9B315931B3940750001CB9C /* RACReturnSignal.m in Sources */,\n\t\t\t\tA9B315941B3940750001CB9C /* RACScheduler.m in Sources */,\n\t\t\t\tA9B315951B3940750001CB9C /* RACScopedDisposable.m in Sources */,\n\t\t\t\tA9B315961B3940750001CB9C /* RACSequence.m in Sources */,\n\t\t\t\tA9B315971B3940750001CB9C /* RACSerialDisposable.m in Sources */,\n\t\t\t\tA9B315981B3940750001CB9C /* RACSignal.m in Sources */,\n\t\t\t\tA9B315991B3940750001CB9C /* RACSignal+Operations.m in Sources */,\n\t\t\t\tA9B3159A1B3940750001CB9C /* RACSignalSequence.m in Sources */,\n\t\t\t\tA9B3159B1B3940750001CB9C /* RACStream.m in Sources */,\n\t\t\t\tA9B3159C1B3940750001CB9C /* RACStringSequence.m in Sources */,\n\t\t\t\tCD0C45E01CC9A288009F5BF0 /* DynamicProperty.swift in Sources */,\n\t\t\t\tA9B3159D1B3940750001CB9C /* RACSubject.m in Sources */,\n\t\t\t\tA9B3159E1B3940750001CB9C /* RACSubscriber.m in Sources */,\n\t\t\t\tA9B3159F1B3940750001CB9C /* RACSubscriptingAssignmentTrampoline.m in Sources */,\n\t\t\t\tA9B315A01B3940750001CB9C /* RACSubscriptionScheduler.m in Sources */,\n\t\t\t\tA9B315A11B3940750001CB9C /* RACTargetQueueScheduler.m in Sources */,\n\t\t\t\tA9B315A21B3940750001CB9C /* RACTestScheduler.m in Sources */,\n\t\t\t\tA9B315A31B3940750001CB9C /* RACTuple.m in Sources */,\n\t\t\t\tA9B315A41B3940750001CB9C /* RACTupleSequence.m in Sources */,\n\t\t\t\tA9B315A51B3940750001CB9C /* RACUnarySequence.m in Sources */,\n\t\t\t\tA9B315A61B3940750001CB9C /* RACUnit.m in Sources */,\n\t\t\t\tA9B315A71B3940750001CB9C /* RACValueTransformer.m in Sources */,\n\t\t\t\tA9B315BB1B3940750001CB9C /* RACDynamicPropertySuperclass.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725E519E49ED7006002AA /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD037654219EDA41200A782A9 /* NSText+RACSignalSupport.m in Sources */,\n\t\t\t\tD037659C19EDA41200A782A9 /* RACKVOChannel.m in Sources */,\n\t\t\t\tD03765C819EDA41200A782A9 /* RACScopedDisposable.m in Sources */,\n\t\t\t\tD03764FE19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD03764EA19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD00004091A46864E000E7D41 /* TupleExtensions.swift in Sources */,\n\t\t\t\tD03765C019EDA41200A782A9 /* RACScheduler.m in Sources */,\n\t\t\t\tD43F27A21A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m in Sources */,\n\t\t\t\tD037659819EDA41200A782A9 /* RACIndexSetSequence.m in Sources */,\n\t\t\t\tD03765D819EDA41200A782A9 /* RACSignal+Operations.m in Sources */,\n\t\t\t\tD871D69F1B3B29A40070F16C /* Optional.swift in Sources */,\n\t\t\t\tD08C54B61A69A3DB00AD8286 /* Event.swift in Sources */,\n\t\t\t\tD03764F219EDA41200A782A9 /* NSControl+RACTextSignalSupport.m in Sources */,\n\t\t\t\tD037650219EDA41200A782A9 /* NSFileHandle+RACSupport.m in Sources */,\n\t\t\t\tD03765E219EDA41200A782A9 /* RACStream.m in Sources */,\n\t\t\t\tD037655619EDA41200A782A9 /* RACBehaviorSubject.m in Sources */,\n\t\t\t\tD037660219EDA41200A782A9 /* RACTestScheduler.m in Sources */,\n\t\t\t\tD03765B819EDA41200A782A9 /* RACReplaySubject.m in Sources */,\n\t\t\t\tD03765EC19EDA41200A782A9 /* RACSubject.m in Sources */,\n\t\t\t\tD03765D019EDA41200A782A9 /* RACSerialDisposable.m in Sources */,\n\t\t\t\tD0C312D319EF2A5800984962 /* Disposable.swift in Sources */,\n\t\t\t\tD037666F19EDA57100A782A9 /* EXTRuntimeExtensions.m in Sources */,\n\t\t\t\tD037653E19EDA41200A782A9 /* NSString+RACSupport.m in Sources */,\n\t\t\t\tD037653619EDA41200A782A9 /* NSString+RACKeyPathUtilities.m in Sources */,\n\t\t\t\tD03764FA19EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m in Sources */,\n\t\t\t\tEBCC7DBC1BBF010C00A2AE92 /* Observer.swift in Sources */,\n\t\t\t\tCD0C45DE1CC9A288009F5BF0 /* DynamicProperty.swift in Sources */,\n\t\t\t\tD037656819EDA41200A782A9 /* RACCompoundDisposableProvider.d in Sources */,\n\t\t\t\tD03B4A3D19F4C39A009E02AC /* FoundationExtensions.swift in Sources */,\n\t\t\t\tD037653A19EDA41200A782A9 /* NSString+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD03765E819EDA41200A782A9 /* RACStringSequence.m in Sources */,\n\t\t\t\tD03764EE19EDA41200A782A9 /* NSControl+RACCommandSupport.m in Sources */,\n\t\t\t\tD08C54B31A69A2AE00AD8286 /* Signal.swift in Sources */,\n\t\t\t\tD037660A19EDA41200A782A9 /* RACTupleSequence.m in Sources */,\n\t\t\t\tD03765D419EDA41200A782A9 /* RACSignal.m in Sources */,\n\t\t\t\tD037651A19EDA41200A782A9 /* NSObject+RACDescription.m in Sources */,\n\t\t\t\tD03765A419EDA41200A782A9 /* RACMulticastConnection.m in Sources */,\n\t\t\t\tD037654E19EDA41200A782A9 /* RACArraySequence.m in Sources */,\n\t\t\t\tD037652219EDA41200A782A9 /* NSObject+RACLifting.m in Sources */,\n\t\t\t\tD037650619EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037650E19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m in Sources */,\n\t\t\t\tD03765FA19EDA41200A782A9 /* RACSubscriptionScheduler.m in Sources */,\n\t\t\t\tD85C652A1C0D84C7005A77AD /* Flatten.swift in Sources */,\n\t\t\t\tD0C312CF19EF2A5800984962 /* Bag.swift in Sources */,\n\t\t\t\tD037658019EDA41200A782A9 /* RACEmptySequence.m in Sources */,\n\t\t\t\tD037654A19EDA41200A782A9 /* NSUserDefaults+RACSupport.m in Sources */,\n\t\t\t\tD037660E19EDA41200A782A9 /* RACUnarySequence.m in Sources */,\n\t\t\t\tD03765FE19EDA41200A782A9 /* RACTargetQueueScheduler.m in Sources */,\n\t\t\t\tC7142DBC1CDEA167009F402D /* CocoaAction.swift in Sources */,\n\t\t\t\tD03765DE19EDA41200A782A9 /* RACSignalSequence.m in Sources */,\n\t\t\t\tD037656C19EDA41200A782A9 /* RACDelegateProxy.m in Sources */,\n\t\t\t\tD037657419EDA41200A782A9 /* RACDynamicSequence.m in Sources */,\n\t\t\t\tD037657019EDA41200A782A9 /* RACDisposable.m in Sources */,\n\t\t\t\tD03765DA19EDA41200A782A9 /* RACSignalProvider.d in Sources */,\n\t\t\t\tD037653219EDA41200A782A9 /* NSSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037651219EDA41200A782A9 /* NSObject+RACAppKitBindings.m in Sources */,\n\t\t\t\tD037656619EDA41200A782A9 /* RACCompoundDisposable.m in Sources */,\n\t\t\t\tD037655A19EDA41200A782A9 /* RACBlockTrampoline.m in Sources */,\n\t\t\t\tD0C312DF19EF2A5800984962 /* ObjectiveCBridging.swift in Sources */,\n\t\t\t\tD037659019EDA41200A782A9 /* RACGroupedSignal.m in Sources */,\n\t\t\t\tD037655E19EDA41200A782A9 /* RACChannel.m in Sources */,\n\t\t\t\tD037657C19EDA41200A782A9 /* RACEagerSequence.m in Sources */,\n\t\t\t\tD037657819EDA41200A782A9 /* RACDynamicSignal.m in Sources */,\n\t\t\t\tD037659419EDA41200A782A9 /* RACImmediateScheduler.m in Sources */,\n\t\t\t\t7A7065811A3F88B8001E8354 /* RACKVOProxy.m in Sources */,\n\t\t\t\tD037651619EDA41200A782A9 /* NSObject+RACDeallocating.m in Sources */,\n\t\t\t\tD0C312E719EF2A5800984962 /* Scheduler.swift in Sources */,\n\t\t\t\tD0C312CD19EF2A5800984962 /* Atomic.swift in Sources */,\n\t\t\t\tD037658419EDA41200A782A9 /* RACEmptySignal.m in Sources */,\n\t\t\t\tD037654619EDA41200A782A9 /* NSURLConnection+RACSupport.m in Sources */,\n\t\t\t\tD03765F019EDA41200A782A9 /* RACSubscriber.m in Sources */,\n\t\t\t\tD03764F619EDA41200A782A9 /* NSData+RACSupport.m in Sources */,\n\t\t\t\tD037656219EDA41200A782A9 /* RACCommand.m in Sources */,\n\t\t\t\tD037658819EDA41200A782A9 /* RACErrorSignal.m in Sources */,\n\t\t\t\tD03765F619EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m in Sources */,\n\t\t\t\tD08C54BA1A69C54300AD8286 /* Property.swift in Sources */,\n\t\t\t\tD0D11AB91A6AE87700C1F8B1 /* Action.swift in Sources */,\n\t\t\t\tD037661219EDA41200A782A9 /* RACUnit.m in Sources */,\n\t\t\t\tD03765A019EDA41200A782A9 /* RACKVOTrampoline.m in Sources */,\n\t\t\t\tD037650A19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m in Sources */,\n\t\t\t\tD037660619EDA41200A782A9 /* RACTuple.m in Sources */,\n\t\t\t\tD037651E19EDA41200A782A9 /* NSObject+RACKVOWrapper.m in Sources */,\n\t\t\t\tD037661619EDA41200A782A9 /* RACValueTransformer.m in Sources */,\n\t\t\t\tC79B647C1CD52E23003F2376 /* EventLogger.swift in Sources */,\n\t\t\t\tD03765CC19EDA41200A782A9 /* RACSequence.m in Sources */,\n\t\t\t\tD037652E19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037652619EDA41200A782A9 /* NSObject+RACPropertySubscribing.m in Sources */,\n\t\t\t\tD037658C19EDA41200A782A9 /* RACEvent.m in Sources */,\n\t\t\t\tD08C54B81A69A9D000AD8286 /* SignalProducer.swift in Sources */,\n\t\t\t\tD03765B219EDA41200A782A9 /* RACQueueScheduler.m in Sources */,\n\t\t\t\tD037652A19EDA41200A782A9 /* NSObject+RACSelectorSignal.m in Sources */,\n\t\t\t\tD03765AE19EDA41200A782A9 /* RACPassthroughSubscriber.m in Sources */,\n\t\t\t\tD03765BC19EDA41200A782A9 /* RACReturnSignal.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD04725F119E49ED7006002AA /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD0A2260E1A72F16D00D33B74 /* PropertySpec.swift in Sources */,\n\t\t\t\tD03766C719EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m in Sources */,\n\t\t\t\tD03766E319EDA60000A782A9 /* RACDelegateProxySpec.m in Sources */,\n\t\t\t\tB696FB811A7640C00075236D /* TestError.swift in Sources */,\n\t\t\t\tD021671D1A6CD50500987861 /* ActionSpec.swift in Sources */,\n\t\t\t\tD03766F919EDA60000A782A9 /* RACSerialDisposableSpec.m in Sources */,\n\t\t\t\tD0C3131E19EF2D9700984962 /* RACTestExampleScheduler.m in Sources */,\n\t\t\t\tD037670B19EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m in Sources */,\n\t\t\t\tD03766DD19EDA60000A782A9 /* RACCommandSpec.m in Sources */,\n\t\t\t\tD0C3130E19EF2B1F00984962 /* SchedulerSpec.swift in Sources */,\n\t\t\t\tD037670919EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */,\n\t\t\t\tBFA6B94D1A7604D400C846D1 /* SignalProducerNimbleMatchers.swift in Sources */,\n\t\t\t\tD03766EB19EDA60000A782A9 /* RACKVOWrapperSpec.m in Sources */,\n\t\t\t\tD03766E719EDA60000A782A9 /* RACEventSpec.m in Sources */,\n\t\t\t\tD03766F719EDA60000A782A9 /* RACSequenceSpec.m in Sources */,\n\t\t\t\tD8170FC11B100EBC004192AD /* FoundationExtensionsSpec.swift in Sources */,\n\t\t\t\tD03766C919EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m in Sources */,\n\t\t\t\tD03766C319EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m in Sources */,\n\t\t\t\tC79B64741CD38B2B003F2376 /* TestLogger.swift in Sources */,\n\t\t\t\tD03766BD19EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\tCA6F28501C52626B001879D2 /* FlattenSpec.swift in Sources */,\n\t\t\t\tD037670119EDA60000A782A9 /* RACSubclassObject.m in Sources */,\n\t\t\t\tD03766CD19EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m in Sources */,\n\t\t\t\tD037671519EDA60000A782A9 /* RACTupleSpec.m in Sources */,\n\t\t\t\tD03766C519EDA60000A782A9 /* NSObjectRACLiftingSpec.m in Sources */,\n\t\t\t\tD03766D119EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m in Sources */,\n\t\t\t\tD03766F319EDA60000A782A9 /* RACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\tD03766ED19EDA60000A782A9 /* RACMulticastConnectionSpec.m in Sources */,\n\t\t\t\tCDCD247A1C277EEC00710AEE /* AtomicSpec.swift in Sources */,\n\t\t\t\tD03766E919EDA60000A782A9 /* RACKVOChannelSpec.m in Sources */,\n\t\t\t\tD03766FB19EDA60000A782A9 /* RACSignalSpec.m in Sources */,\n\t\t\t\t7A7065841A3F8967001E8354 /* RACKVOProxySpec.m in Sources */,\n\t\t\t\t579504331BB8A34200A5E482 /* BagSpec.swift in Sources */,\n\t\t\t\tD037670719EDA60000A782A9 /* RACSubscriberSpec.m in Sources */,\n\t\t\t\tCD8401831CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */,\n\t\t\t\tD03766EF19EDA60000A782A9 /* RACPropertySignalExamples.m in Sources */,\n\t\t\t\tD037670519EDA60000A782A9 /* RACSubscriberExamples.m in Sources */,\n\t\t\t\tD0A226081A72E0E900D33B74 /* SignalSpec.swift in Sources */,\n\t\t\t\tD0C3132219EF2D9700984962 /* RACTestSchedulerSpec.m in Sources */,\n\t\t\t\t02D2602B1C1D6DB8003ACC61 /* SignalLifetimeSpec.swift in Sources */,\n\t\t\t\tD0C3130C19EF2B1F00984962 /* DisposableSpec.swift in Sources */,\n\t\t\t\tD03766D719EDA60000A782A9 /* RACBlockTrampolineSpec.m in Sources */,\n\t\t\t\tD0A2260B1A72E6C500D33B74 /* SignalProducerSpec.swift in Sources */,\n\t\t\t\tD03766FF19EDA60000A782A9 /* RACStreamExamples.m in Sources */,\n\t\t\t\tD03766CB19EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m in Sources */,\n\t\t\t\tD03766E119EDA60000A782A9 /* RACControlCommandExamples.m in Sources */,\n\t\t\t\tD03766BF19EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m in Sources */,\n\t\t\t\tD037670319EDA60000A782A9 /* RACSubjectSpec.m in Sources */,\n\t\t\t\tD03766F119EDA60000A782A9 /* RACSchedulerSpec.m in Sources */,\n\t\t\t\tD03766DF19EDA60000A782A9 /* RACCompoundDisposableSpec.m in Sources */,\n\t\t\t\tD03766E519EDA60000A782A9 /* RACDisposableSpec.m in Sources */,\n\t\t\t\tD0C3132019EF2D9700984962 /* RACTestObject.m in Sources */,\n\t\t\t\tD03766D319EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m in Sources */,\n\t\t\t\tD03766C119EDA60000A782A9 /* NSObjectRACAppKitBindingsSpec.m in Sources */,\n\t\t\t\tD03766DB19EDA60000A782A9 /* RACChannelSpec.m in Sources */,\n\t\t\t\tD0A226111A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift in Sources */,\n\t\t\t\tD03766D919EDA60000A782A9 /* RACChannelExamples.m in Sources */,\n\t\t\t\tD03766F519EDA60000A782A9 /* RACSequenceExamples.m in Sources */,\n\t\t\t\tD8024DB21B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift in Sources */,\n\t\t\t\tD03766B919EDA60000A782A9 /* NSControllerRACSupportSpec.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047260719E49F82006002AA /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD037659D19EDA41200A782A9 /* RACKVOChannel.m in Sources */,\n\t\t\t\tD08C54B41A69A2AF00AD8286 /* Signal.swift in Sources */,\n\t\t\t\tD037666319EDA41200A782A9 /* UITextView+RACSignalSupport.m in Sources */,\n\t\t\t\tD037662F19EDA41200A782A9 /* UIControl+RACSignalSupport.m in Sources */,\n\t\t\t\tD03765C919EDA41200A782A9 /* RACScopedDisposable.m in Sources */,\n\t\t\t\tD03764FF19EDA41200A782A9 /* NSEnumerator+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037664719EDA41200A782A9 /* UISegmentedControl+RACSignalSupport.m in Sources */,\n\t\t\t\tD43F27A31A9F7E8A00C1AD76 /* RACDynamicPropertySuperclass.m in Sources */,\n\t\t\t\tD8E84A671B3B32FB00C3E831 /* Optional.swift in Sources */,\n\t\t\t\tD03764EB19EDA41200A782A9 /* NSArray+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD0C312D419EF2A5800984962 /* Disposable.swift in Sources */,\n\t\t\t\tD03765C119EDA41200A782A9 /* RACScheduler.m in Sources */,\n\t\t\t\tD037662B19EDA41200A782A9 /* UICollectionReusableView+RACSignalSupport.m in Sources */,\n\t\t\t\tD037659919EDA41200A782A9 /* RACIndexSetSequence.m in Sources */,\n\t\t\t\tD03765D919EDA41200A782A9 /* RACSignal+Operations.m in Sources */,\n\t\t\t\tD037661B19EDA41200A782A9 /* UIActionSheet+RACSignalSupport.m in Sources */,\n\t\t\t\tD037650319EDA41200A782A9 /* NSFileHandle+RACSupport.m in Sources */,\n\t\t\t\tD08C54B91A69A9D100AD8286 /* SignalProducer.swift in Sources */,\n\t\t\t\tD03765E319EDA41200A782A9 /* RACStream.m in Sources */,\n\t\t\t\tD037655719EDA41200A782A9 /* RACBehaviorSubject.m in Sources */,\n\t\t\t\tD037663B19EDA41200A782A9 /* UIGestureRecognizer+RACSignalSupport.m in Sources */,\n\t\t\t\tD037660319EDA41200A782A9 /* RACTestScheduler.m in Sources */,\n\t\t\t\tD03765B919EDA41200A782A9 /* RACReplaySubject.m in Sources */,\n\t\t\t\tD03765ED19EDA41200A782A9 /* RACSubject.m in Sources */,\n\t\t\t\tD037664F19EDA41200A782A9 /* UIStepper+RACSignalSupport.m in Sources */,\n\t\t\t\tD03765D119EDA41200A782A9 /* RACSerialDisposable.m in Sources */,\n\t\t\t\tEBCC7DBD1BBF01E100A2AE92 /* Observer.swift in Sources */,\n\t\t\t\tD037663F19EDA41200A782A9 /* UIImagePickerController+RACSignalSupport.m in Sources */,\n\t\t\t\tD037653F19EDA41200A782A9 /* NSString+RACSupport.m in Sources */,\n\t\t\t\tD037653719EDA41200A782A9 /* NSString+RACKeyPathUtilities.m in Sources */,\n\t\t\t\tD03764FB19EDA41200A782A9 /* NSDictionary+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037656919EDA41200A782A9 /* RACCompoundDisposableProvider.d in Sources */,\n\t\t\t\tD037653B19EDA41200A782A9 /* NSString+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037661F19EDA41200A782A9 /* UIAlertView+RACSignalSupport.m in Sources */,\n\t\t\t\tD03765E919EDA41200A782A9 /* RACStringSequence.m in Sources */,\n\t\t\t\tD037660B19EDA41200A782A9 /* RACTupleSequence.m in Sources */,\n\t\t\t\tD03765D519EDA41200A782A9 /* RACSignal.m in Sources */,\n\t\t\t\tD037663319EDA41200A782A9 /* UIControl+RACSignalSupportPrivate.m in Sources */,\n\t\t\t\tCD0C45DF1CC9A288009F5BF0 /* DynamicProperty.swift in Sources */,\n\t\t\t\tD037664319EDA41200A782A9 /* UIRefreshControl+RACCommandSupport.m in Sources */,\n\t\t\t\tD037651B19EDA41200A782A9 /* NSObject+RACDescription.m in Sources */,\n\t\t\t\tD03765A519EDA41200A782A9 /* RACMulticastConnection.m in Sources */,\n\t\t\t\tD85C652B1C0E70E3005A77AD /* Flatten.swift in Sources */,\n\t\t\t\tD037654F19EDA41200A782A9 /* RACArraySequence.m in Sources */,\n\t\t\t\tD037652319EDA41200A782A9 /* NSObject+RACLifting.m in Sources */,\n\t\t\t\tC7142DBD1CDEA194009F402D /* CocoaAction.swift in Sources */,\n\t\t\t\tD037650719EDA41200A782A9 /* NSIndexSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037665F19EDA41200A782A9 /* UITextField+RACSignalSupport.m in Sources */,\n\t\t\t\tD037650F19EDA41200A782A9 /* NSNotificationCenter+RACSupport.m in Sources */,\n\t\t\t\tD03765FB19EDA41200A782A9 /* RACSubscriptionScheduler.m in Sources */,\n\t\t\t\tD037658119EDA41200A782A9 /* RACEmptySequence.m in Sources */,\n\t\t\t\tD0C312E019EF2A5800984962 /* ObjectiveCBridging.swift in Sources */,\n\t\t\t\tD037654B19EDA41200A782A9 /* NSUserDefaults+RACSupport.m in Sources */,\n\t\t\t\tD037660F19EDA41200A782A9 /* RACUnarySequence.m in Sources */,\n\t\t\t\tD08C54BB1A69C54400AD8286 /* Property.swift in Sources */,\n\t\t\t\tD03765FF19EDA41200A782A9 /* RACTargetQueueScheduler.m in Sources */,\n\t\t\t\tD03765DF19EDA41200A782A9 /* RACSignalSequence.m in Sources */,\n\t\t\t\tD037656D19EDA41200A782A9 /* RACDelegateProxy.m in Sources */,\n\t\t\t\tD03B4A3E19F4C39A009E02AC /* FoundationExtensions.swift in Sources */,\n\t\t\t\tD037657519EDA41200A782A9 /* RACDynamicSequence.m in Sources */,\n\t\t\t\tD037657119EDA41200A782A9 /* RACDisposable.m in Sources */,\n\t\t\t\tD000040A1A46864E000E7D41 /* TupleExtensions.swift in Sources */,\n\t\t\t\tD03765DB19EDA41200A782A9 /* RACSignalProvider.d in Sources */,\n\t\t\t\tD037653319EDA41200A782A9 /* NSSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037665319EDA41200A782A9 /* UISwitch+RACSignalSupport.m in Sources */,\n\t\t\t\tD037664B19EDA41200A782A9 /* UISlider+RACSignalSupport.m in Sources */,\n\t\t\t\tD037656719EDA41200A782A9 /* RACCompoundDisposable.m in Sources */,\n\t\t\t\tD037655B19EDA41200A782A9 /* RACBlockTrampoline.m in Sources */,\n\t\t\t\tD037659119EDA41200A782A9 /* RACGroupedSignal.m in Sources */,\n\t\t\t\tD037655F19EDA41200A782A9 /* RACChannel.m in Sources */,\n\t\t\t\tD037657D19EDA41200A782A9 /* RACEagerSequence.m in Sources */,\n\t\t\t\tD037657919EDA41200A782A9 /* RACDynamicSignal.m in Sources */,\n\t\t\t\tD037659519EDA41200A782A9 /* RACImmediateScheduler.m in Sources */,\n\t\t\t\tD037651719EDA41200A782A9 /* NSObject+RACDeallocating.m in Sources */,\n\t\t\t\tD037658519EDA41200A782A9 /* RACEmptySignal.m in Sources */,\n\t\t\t\tD037663719EDA41200A782A9 /* UIDatePicker+RACSignalSupport.m in Sources */,\n\t\t\t\tD08C54B71A69A3DB00AD8286 /* Event.swift in Sources */,\n\t\t\t\tD037654719EDA41200A782A9 /* NSURLConnection+RACSupport.m in Sources */,\n\t\t\t\tD03765F119EDA41200A782A9 /* RACSubscriber.m in Sources */,\n\t\t\t\tD03764F719EDA41200A782A9 /* NSData+RACSupport.m in Sources */,\n\t\t\t\tC79B647D1CD52E4A003F2376 /* EventLogger.swift in Sources */,\n\t\t\t\tD0C312CE19EF2A5800984962 /* Atomic.swift in Sources */,\n\t\t\t\tD0C312E819EF2A5800984962 /* Scheduler.swift in Sources */,\n\t\t\t\tD037656319EDA41200A782A9 /* RACCommand.m in Sources */,\n\t\t\t\tD037658919EDA41200A782A9 /* RACErrorSignal.m in Sources */,\n\t\t\t\tD03765F719EDA41200A782A9 /* RACSubscriptingAssignmentTrampoline.m in Sources */,\n\t\t\t\tD037661319EDA41200A782A9 /* RACUnit.m in Sources */,\n\t\t\t\tD037662319EDA41200A782A9 /* UIBarButtonItem+RACCommandSupport.m in Sources */,\n\t\t\t\tD03765A119EDA41200A782A9 /* RACKVOTrampoline.m in Sources */,\n\t\t\t\tD037665B19EDA41200A782A9 /* UITableViewHeaderFooterView+RACSignalSupport.m in Sources */,\n\t\t\t\tD0C312D019EF2A5800984962 /* Bag.swift in Sources */,\n\t\t\t\tD0D11ABA1A6AE87700C1F8B1 /* Action.swift in Sources */,\n\t\t\t\tD037650B19EDA41200A782A9 /* NSInvocation+RACTypeParsing.m in Sources */,\n\t\t\t\tD037660719EDA41200A782A9 /* RACTuple.m in Sources */,\n\t\t\t\tD037667019EDA57100A782A9 /* EXTRuntimeExtensions.m in Sources */,\n\t\t\t\tD037651F19EDA41200A782A9 /* NSObject+RACKVOWrapper.m in Sources */,\n\t\t\t\tD037661719EDA41200A782A9 /* RACValueTransformer.m in Sources */,\n\t\t\t\tD03765CD19EDA41200A782A9 /* RACSequence.m in Sources */,\n\t\t\t\t314304181ACA8B1E00595017 /* MKAnnotationView+RACSignalSupport.m in Sources */,\n\t\t\t\tD037652F19EDA41200A782A9 /* NSOrderedSet+RACSequenceAdditions.m in Sources */,\n\t\t\t\tD037662719EDA41200A782A9 /* UIButton+RACCommandSupport.m in Sources */,\n\t\t\t\tD037652719EDA41200A782A9 /* NSObject+RACPropertySubscribing.m in Sources */,\n\t\t\t\t7A7065821A3F88B8001E8354 /* RACKVOProxy.m in Sources */,\n\t\t\t\tD037658D19EDA41200A782A9 /* RACEvent.m in Sources */,\n\t\t\t\tD03765B319EDA41200A782A9 /* RACQueueScheduler.m in Sources */,\n\t\t\t\tD037665719EDA41200A782A9 /* UITableViewCell+RACSignalSupport.m in Sources */,\n\t\t\t\tD037652B19EDA41200A782A9 /* NSObject+RACSelectorSignal.m in Sources */,\n\t\t\t\tD03765AF19EDA41200A782A9 /* RACPassthroughSubscriber.m in Sources */,\n\t\t\t\tD03765BD19EDA41200A782A9 /* RACReturnSignal.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD047261219E49F82006002AA /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD0A2260C1A72E6C500D33B74 /* SignalProducerSpec.swift in Sources */,\n\t\t\t\tD03766C819EDA60000A782A9 /* NSObjectRACPropertySubscribingExamples.m in Sources */,\n\t\t\t\tD037672419EDA60000A782A9 /* UIImagePickerControllerRACSupportSpec.m in Sources */,\n\t\t\t\tD03766E419EDA60000A782A9 /* RACDelegateProxySpec.m in Sources */,\n\t\t\t\tD0A2260F1A72F16D00D33B74 /* PropertySpec.swift in Sources */,\n\t\t\t\tD03766FA19EDA60000A782A9 /* RACSerialDisposableSpec.m in Sources */,\n\t\t\t\tD0A226091A72E0E900D33B74 /* SignalSpec.swift in Sources */,\n\t\t\t\tCDCD247B1C277EED00710AEE /* AtomicSpec.swift in Sources */,\n\t\t\t\tD037670C19EDA60000A782A9 /* RACTargetQueueSchedulerSpec.m in Sources */,\n\t\t\t\tD03766DE19EDA60000A782A9 /* RACCommandSpec.m in Sources */,\n\t\t\t\tD037670A19EDA60000A782A9 /* RACSubscriptingAssignmentTrampolineSpec.m in Sources */,\n\t\t\t\tD03766EC19EDA60000A782A9 /* RACKVOWrapperSpec.m in Sources */,\n\t\t\t\tD021671E1A6CD50500987861 /* ActionSpec.swift in Sources */,\n\t\t\t\tD03766E819EDA60000A782A9 /* RACEventSpec.m in Sources */,\n\t\t\t\tD03766F819EDA60000A782A9 /* RACSequenceSpec.m in Sources */,\n\t\t\t\tD0A226121A72F30B00D33B74 /* ObjectiveCBridgingSpec.swift in Sources */,\n\t\t\t\tD037671E19EDA60000A782A9 /* UIBarButtonItemRACSupportSpec.m in Sources */,\n\t\t\t\tD8024DB31B2E1BB0005E6B9A /* SignalProducerLiftingSpec.swift in Sources */,\n\t\t\t\tBFA6B94E1A7604D500C846D1 /* SignalProducerNimbleMatchers.swift in Sources */,\n\t\t\t\tD03766CA19EDA60000A782A9 /* NSObjectRACPropertySubscribingSpec.m in Sources */,\n\t\t\t\tD0C3132319EF2D9700984962 /* RACTestSchedulerSpec.m in Sources */,\n\t\t\t\tD03766C419EDA60000A782A9 /* NSObjectRACDeallocatingSpec.m in Sources */,\n\t\t\t\tD03766BE19EDA60000A782A9 /* NSEnumeratorRACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\tD037672019EDA60000A782A9 /* UIButtonRACSupportSpec.m in Sources */,\n\t\t\t\tD0C3132519EF2D9700984962 /* RACTestUIButton.m in Sources */,\n\t\t\t\tD037670219EDA60000A782A9 /* RACSubclassObject.m in Sources */,\n\t\t\t\tD03766CE19EDA60000A782A9 /* NSStringRACKeyPathUtilitiesSpec.m in Sources */,\n\t\t\t\tD037671619EDA60000A782A9 /* RACTupleSpec.m in Sources */,\n\t\t\t\t7A7065851A3F8967001E8354 /* RACKVOProxySpec.m in Sources */,\n\t\t\t\tD03766C619EDA60000A782A9 /* NSObjectRACLiftingSpec.m in Sources */,\n\t\t\t\tB696FB821A7640C00075236D /* TestError.swift in Sources */,\n\t\t\t\tD0C3131F19EF2D9700984962 /* RACTestExampleScheduler.m in Sources */,\n\t\t\t\tD8170FC21B100EBC004192AD /* FoundationExtensionsSpec.swift in Sources */,\n\t\t\t\tD03766D219EDA60000A782A9 /* NSURLConnectionRACSupportSpec.m in Sources */,\n\t\t\t\tD03766F419EDA60000A782A9 /* RACSequenceAdditionsSpec.m in Sources */,\n\t\t\t\tD0C3131419EF2B2000984962 /* SchedulerSpec.swift in Sources */,\n\t\t\t\tC79B64751CD38B2B003F2376 /* TestLogger.swift in Sources */,\n\t\t\t\tD0C3131219EF2B2000984962 /* DisposableSpec.swift in Sources */,\n\t\t\t\tD03766EE19EDA60000A782A9 /* RACMulticastConnectionSpec.m in Sources */,\n\t\t\t\tD03766EA19EDA60000A782A9 /* RACKVOChannelSpec.m in Sources */,\n\t\t\t\tCA6F28511C52626B001879D2 /* FlattenSpec.swift in Sources */,\n\t\t\t\tD0C3132119EF2D9700984962 /* RACTestObject.m in Sources */,\n\t\t\t\tD03766FC19EDA60000A782A9 /* RACSignalSpec.m in Sources */,\n\t\t\t\tD037670819EDA60000A782A9 /* RACSubscriberSpec.m in Sources */,\n\t\t\t\tD037671C19EDA60000A782A9 /* UIAlertViewRACSupportSpec.m in Sources */,\n\t\t\t\tD03766F019EDA60000A782A9 /* RACPropertySignalExamples.m in Sources */,\n\t\t\t\tD037670619EDA60000A782A9 /* RACSubscriberExamples.m in Sources */,\n\t\t\t\tD03766D819EDA60000A782A9 /* RACBlockTrampolineSpec.m in Sources */,\n\t\t\t\tD037670019EDA60000A782A9 /* RACStreamExamples.m in Sources */,\n\t\t\t\tD03766CC19EDA60000A782A9 /* NSObjectRACSelectorSignalSpec.m in Sources */,\n\t\t\t\tD03766E219EDA60000A782A9 /* RACControlCommandExamples.m in Sources */,\n\t\t\t\tD03766C019EDA60000A782A9 /* NSNotificationCenterRACSupportSpec.m in Sources */,\n\t\t\t\tD037670419EDA60000A782A9 /* RACSubjectSpec.m in Sources */,\n\t\t\t\tD03766F219EDA60000A782A9 /* RACSchedulerSpec.m in Sources */,\n\t\t\t\tD03766E019EDA60000A782A9 /* RACCompoundDisposableSpec.m in Sources */,\n\t\t\t\tD03766E619EDA60000A782A9 /* RACDisposableSpec.m in Sources */,\n\t\t\t\tD03766D419EDA60000A782A9 /* NSUserDefaultsRACSupportSpec.m in Sources */,\n\t\t\t\tD03766DC19EDA60000A782A9 /* RACChannelSpec.m in Sources */,\n\t\t\t\t579504341BB8A34300A5E482 /* BagSpec.swift in Sources */,\n\t\t\t\tD037671A19EDA60000A782A9 /* UIActionSheetRACSupportSpec.m in Sources */,\n\t\t\t\tD03766DA19EDA60000A782A9 /* RACChannelExamples.m in Sources */,\n\t\t\t\tD03766F619EDA60000A782A9 /* RACSequenceExamples.m in Sources */,\n\t\t\t\tCD8401841CEE8ED7009F0ABF /* CocoaActionSpec.swift in Sources */,\n\t\t\t\t02D2602A1C1D6DAF003ACC61 /* SignalLifetimeSpec.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t7DFBED0A1CDB8C9500EE435B /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 57A4D1AF1BA13D7A00F7D4B1 /* ReactiveCocoa-tvOS */;\n\t\t\ttargetProxy = 7DFBED091CDB8C9500EE435B /* PBXContainerItemProxy */;\n\t\t};\n\t\tD04725F819E49ED7006002AA /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D04725E919E49ED7006002AA /* ReactiveCocoa-Mac */;\n\t\t\ttargetProxy = D04725F719E49ED7006002AA /* PBXContainerItemProxy */;\n\t\t};\n\t\tD047261919E49F82006002AA /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D047260B19E49F82006002AA /* ReactiveCocoa-iOS */;\n\t\t\ttargetProxy = D047261819E49F82006002AA /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t57A4D23D1BA13D7A00F7D4B1 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t57A4D23E1BA13D7A00F7D4B1 /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\t57A4D23F1BA13D7A00F7D4B1 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t57A4D2401BA13D7A00F7D4B1 /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2461BA13F9700F7D4B1 /* tvOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\t7DFBED0B1CDB8C9500EE435B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t7DFBED0C1CDB8C9500EE435B /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\t7DFBED0D1CDB8C9500EE435B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t7DFBED0E1CDB8C9500EE435B /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 57A4D2441BA13F9700F7D4B1 /* tvOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tA9B315591B3940610001CB9C /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = A97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tA9B3155A1B3940610001CB9C /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = A97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\tA9B3155B1B3940610001CB9C /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = A97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tA9B3155C1B3940610001CB9C /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = A97451351B3A935E00F48E55 /* watchOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"DTRACE_PROBES_DISABLED=1\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD04725FE19E49ED7006002AA /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047262919E49FE8006002AA /* Debug.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"org.reactivecocoa.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD04725FF19E49ED7006002AA /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047262B19E49FE8006002AA /* Release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"org.reactivecocoa.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD047260119E49ED7006002AA /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263A19E49FE8006002AA /* Mac-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD047260219E49ED7006002AA /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263A19E49FE8006002AA /* Mac-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD047260419E49ED7006002AA /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263719E49FE8006002AA /* Mac-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD047260519E49ED7006002AA /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263719E49FE8006002AA /* Mac-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD047262019E49F82006002AA /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263419E49FE8006002AA /* iOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD047262119E49F82006002AA /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263419E49FE8006002AA /* iOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD047262319E49F82006002AA /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263219E49FE8006002AA /* iOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD047262419E49F82006002AA /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263219E49FE8006002AA /* iOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD047263D19E4A008006002AA /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047262A19E49FE8006002AA /* Profile.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"org.reactivecocoa.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD047263E19E4A008006002AA /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263A19E49FE8006002AA /* Mac-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD047263F19E4A008006002AA /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263719E49FE8006002AA /* Mac-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD047264019E4A008006002AA /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263419E49FE8006002AA /* iOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD047264119E4A008006002AA /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263219E49FE8006002AA /* iOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\tD047264219E4A00B006002AA /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047262C19E49FE8006002AA /* Test.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"org.reactivecocoa.$(PRODUCT_NAME:rfc1034identifier)-Tests\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\tD047264319E4A00B006002AA /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263A19E49FE8006002AA /* Mac-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\tD047264419E4A00B006002AA /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263719E49FE8006002AA /* Mac-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\tD047264519E4A00B006002AA /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263419E49FE8006002AA /* iOS-Framework.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoa/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = ReactiveCocoa/extobjc;\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n\t\tD047264619E4A00B006002AA /* Test */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = D047263219E49FE8006002AA /* iOS-Application.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ReactiveCocoaTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(PROJECT_NAME)Tests\";\n\t\t\t};\n\t\t\tname = Test;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t57A4D23C1BA13D7A00F7D4B1 /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t57A4D23D1BA13D7A00F7D4B1 /* Debug */,\n\t\t\t\t57A4D23E1BA13D7A00F7D4B1 /* Test */,\n\t\t\t\t57A4D23F1BA13D7A00F7D4B1 /* Release */,\n\t\t\t\t57A4D2401BA13D7A00F7D4B1 /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t7DFBED0F1CDB8C9500EE435B /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t7DFBED0B1CDB8C9500EE435B /* Debug */,\n\t\t\t\t7DFBED0C1CDB8C9500EE435B /* Test */,\n\t\t\t\t7DFBED0D1CDB8C9500EE435B /* Release */,\n\t\t\t\t7DFBED0E1CDB8C9500EE435B /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tA9B3155D1B3940610001CB9C /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tA9B315591B3940610001CB9C /* Debug */,\n\t\t\t\tA9B3155A1B3940610001CB9C /* Test */,\n\t\t\t\tA9B3155B1B3940610001CB9C /* Release */,\n\t\t\t\tA9B3155C1B3940610001CB9C /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD04725E419E49ED7006002AA /* Build configuration list for PBXProject \"ReactiveCocoa\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD04725FE19E49ED7006002AA /* Debug */,\n\t\t\t\tD047264219E4A00B006002AA /* Test */,\n\t\t\t\tD04725FF19E49ED7006002AA /* Release */,\n\t\t\t\tD047263D19E4A008006002AA /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD047260019E49ED7006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD047260119E49ED7006002AA /* Debug */,\n\t\t\t\tD047264319E4A00B006002AA /* Test */,\n\t\t\t\tD047260219E49ED7006002AA /* Release */,\n\t\t\t\tD047263E19E4A008006002AA /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD047260319E49ED7006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-MacTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD047260419E49ED7006002AA /* Debug */,\n\t\t\t\tD047264419E4A00B006002AA /* Test */,\n\t\t\t\tD047260519E49ED7006002AA /* Release */,\n\t\t\t\tD047263F19E4A008006002AA /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD047261F19E49F82006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD047262019E49F82006002AA /* Debug */,\n\t\t\t\tD047264519E4A00B006002AA /* Test */,\n\t\t\t\tD047262119E49F82006002AA /* Release */,\n\t\t\t\tD047264019E4A008006002AA /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD047262219E49F82006002AA /* Build configuration list for PBXNativeTarget \"ReactiveCocoa-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD047262319E49F82006002AA /* Debug */,\n\t\t\t\tD047264619E4A00B006002AA /* Test */,\n\t\t\t\tD047262419E49F82006002AA /* Release */,\n\t\t\t\tD047264119E4A008006002AA /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = D04725E119E49ED7006002AA /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.xcodeproj/xcshareddata/xcschemes/ReactiveCocoa-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"NO\"\n      buildImplicitDependencies = \"NO\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-Mac\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Result/Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D04725E919E49ED7006002AA\"\n               BuildableName = \"ReactiveCocoa.framework\"\n               BlueprintName = \"ReactiveCocoa-Mac\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F925EAC195C0D6300ED456B\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-OSX\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Nimble/Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"DAEB6B8D1943873100289F44\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-OSX\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Quick/Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D04725F419E49ED7006002AA\"\n               BuildableName = \"ReactiveCocoaTests.xctest\"\n               BlueprintName = \"ReactiveCocoa-MacTests\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      codeCoverageEnabled = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D04725F419E49ED7006002AA\"\n               BuildableName = \"ReactiveCocoaTests.xctest\"\n               BlueprintName = \"ReactiveCocoa-MacTests\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D04725E919E49ED7006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-Mac\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D04725E919E49ED7006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-Mac\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Profile\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D04725E919E49ED7006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-Mac\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.xcodeproj/xcshareddata/xcschemes/ReactiveCocoa-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"NO\"\n      buildImplicitDependencies = \"NO\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D454807C1A957361009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-iOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Result/Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D047260B19E49F82006002AA\"\n               BuildableName = \"ReactiveCocoa.framework\"\n               BlueprintName = \"ReactiveCocoa-iOS\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F1A74281940169200FFFC47\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-iOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Nimble/Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"5A5D117B19473F2100F6D13D\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-iOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Quick/Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D047261519E49F82006002AA\"\n               BuildableName = \"ReactiveCocoaTests.xctest\"\n               BlueprintName = \"ReactiveCocoa-iOSTests\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      codeCoverageEnabled = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D047261519E49F82006002AA\"\n               BuildableName = \"ReactiveCocoaTests.xctest\"\n               BlueprintName = \"ReactiveCocoa-iOSTests\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D047260B19E49F82006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-iOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D047260B19E49F82006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-iOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Profile\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D047260B19E49F82006002AA\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-iOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.xcodeproj/xcshareddata/xcschemes/ReactiveCocoa-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"NO\"\n      buildImplicitDependencies = \"NO\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-tvOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Result/Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57A4D1AF1BA13D7A00F7D4B1\"\n               BuildableName = \"ReactiveCocoa.framework\"\n               BlueprintName = \"ReactiveCocoa-tvOS\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F5DF1541BDCA0CE00C3A531\"\n               BuildableName = \"Nimble.framework\"\n               BlueprintName = \"Nimble-tvOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Nimble/Nimble.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"1F118CD41BDCA4AB005013A2\"\n               BuildableName = \"Quick.framework\"\n               BlueprintName = \"Quick-tvOS\"\n               ReferencedContainer = \"container:Carthage/Checkouts/Quick/Quick.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      codeCoverageEnabled = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"7DFBED021CDB8C9500EE435B\"\n               BuildableName = \"ReactiveCocoaTests.xctest\"\n               BlueprintName = \"ReactiveCocoa-tvOSTests\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57A4D1AF1BA13D7A00F7D4B1\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-tvOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57A4D1AF1BA13D7A00F7D4B1\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-tvOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57A4D1AF1BA13D7A00F7D4B1\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-tvOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoa.xcodeproj/xcshareddata/xcschemes/ReactiveCocoa-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0710\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"A9B315531B3940610001CB9C\"\n               BuildableName = \"ReactiveCocoa.framework\"\n               BlueprintName = \"ReactiveCocoa-watchOS\"\n               ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"A9B315531B3940610001CB9C\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-watchOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Profile\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"A9B315531B3940610001CB9C\"\n            BuildableName = \"ReactiveCocoa.framework\"\n            BlueprintName = \"ReactiveCocoa-watchOS\"\n            ReferencedContainer = \"container:ReactiveCocoa.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSControllerRACSupportSpec.m",
    "content": "//\n//  NSControllerRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 26/10/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import <AppKit/AppKit.h>\n#import \"RACKVOChannel.h\"\n\n@interface RACTestController : NSController\n\n@property (nonatomic, strong) id object;\n\n@end\n\n@implementation RACTestController\n\n@end\n\nQuickSpecBegin(NSControllerRACSupportSpec)\n\nqck_it(@\"RACKVOChannel should support NSController\", ^{\n\tRACTestController *a = [[RACTestController alloc] init];\n\tRACTestController *b = [[RACTestController alloc] init];\n\tRACChannelTo(a, object) = RACChannelTo(b, object);\n\texpect(a.object).to(beNil());\n\texpect(b.object).to(beNil());\n\n\ta.object = a;\n\texpect(a.object).to(equal(a));\n\texpect(b.object).to(equal(a));\n\n\tb.object = b;\n\texpect(a.object).to(equal(b));\n\texpect(b.object).to(equal(b));\n\n\ta.object = nil;\n\texpect(a.object).to(beNil());\n\texpect(b.object).to(beNil());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSEnumeratorRACSequenceAdditionsSpec.m",
    "content": "//\n//  NSEnumeratorRACSequenceAdditionsSpec.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 07/01/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSequenceExamples.h\"\n\n#import \"NSEnumerator+RACSequenceAdditions.h\"\n\nQuickSpecBegin(NSEnumeratorRACSequenceAdditionsSpec)\n\nqck_describe(@\"-rac_sequence\", ^{\n\tNSArray *values = @[ @0, @1, @2, @3, @4 ];\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: values.objectEnumerator.rac_sequence,\n\t\t\tRACSequenceExampleExpectedValues: values\n\t\t};\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSNotificationCenterRACSupportSpec.m",
    "content": "//\n//  NSNotificationCenterRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-12-07.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSNotificationCenter+RACSupport.h\"\n#import \"RACSignal.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"NSObject+RACDeallocating.h\"\n\nstatic NSString * const TestNotification = @\"TestNotification\";\n\nQuickSpecBegin(NSNotificationCenterRACSupportSpec)\n\n__block NSNotificationCenter *notificationCenter;\n\nqck_beforeEach(^{\n\t// The compiler gets confused and thinks you might be messaging\n\t// NSDistributedNotificationCenter otherwise. Wtf?\n\tnotificationCenter = NSNotificationCenter.defaultCenter;\n});\n\nqck_it(@\"should send the notification when posted by any object\", ^{\n\tRACSignal *signal = [notificationCenter rac_addObserverForName:TestNotification object:nil];\n\n\t__block NSUInteger count = 0;\n\t[signal subscribeNext:^(NSNotification *notification) {\n\t\t++count;\n\n\t\texpect(notification).to(beAKindOf(NSNotification.class));\n\t\texpect(notification.name).to(equal(TestNotification));\n\t}];\n\n\texpect(@(count)).to(equal(@0));\n\n\t[notificationCenter postNotificationName:TestNotification object:nil];\n\texpect(@(count)).to(equal(@1));\n\n\t[notificationCenter postNotificationName:TestNotification object:self];\n\texpect(@(count)).to(equal(@2));\n});\n\nqck_it(@\"should send the notification when posted by a specific object\", ^{\n\tRACSignal *signal = [notificationCenter rac_addObserverForName:TestNotification object:self];\n\n\t__block NSUInteger count = 0;\n\t[signal subscribeNext:^(NSNotification *notification) {\n\t\t++count;\n\n\t\texpect(notification).to(beAKindOf(NSNotification.class));\n\t\texpect(notification.name).to(equal(TestNotification));\n\t\texpect(notification.object).to(beIdenticalTo(self));\n\t}];\n\n\texpect(@(count)).to(equal(@0));\n\n\t[notificationCenter postNotificationName:TestNotification object:nil];\n\texpect(@(count)).to(equal(@0));\n\n\t[notificationCenter postNotificationName:TestNotification object:self];\n\texpect(@(count)).to(equal(@1));\n});\n\nqck_it(@\"shouldn't strongly capture the notification object\", ^{\n\tRACSignal *signal __attribute__((objc_precise_lifetime, unused));\n\n\t__block BOOL dealloced = NO;\n\t@autoreleasepool {\n\t\tNSObject *notificationObject = [[NSObject alloc] init];\n\t\t[notificationObject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\tdealloced = YES;\n\t\t}]];\n\n\t\tsignal = [notificationCenter rac_addObserverForName:TestNotification object:notificationObject];\n\t}\n\n\texpect(@(dealloced)).to(beTruthy());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACAppKitBindingsSpec.m",
    "content": "//\n//  NSObjectRACAppKitBindingsSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACChannelExamples.h\"\n\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"NSObject+RACAppKitBindings.h\"\n\nQuickSpecBegin(NSObjectRACAppKitBindingsSpec)\n\nqck_itBehavesLike(RACViewChannelExamples, ^{\n\treturn @{\n\t\tRACViewChannelExampleCreateViewBlock: ^{\n\t\t\treturn [[NSSlider alloc] initWithFrame:NSZeroRect];\n\t\t},\n\t\tRACViewChannelExampleCreateTerminalBlock: ^(NSSlider *view) {\n\t\t\treturn [view rac_channelToBinding:NSValueBinding];\n\t\t},\n\t\tRACViewChannelExampleKeyPath: @keypath(NSSlider.new, objectValue),\n\t\tRACViewChannelExampleSetViewValueBlock: ^(NSSlider *view, NSNumber *value) {\n\t\t\tview.objectValue = value;\n\n\t\t\t// Bindings don't actually trigger from programmatic modification. Do it\n\t\t\t// manually.\n\t\t\tNSDictionary *bindingInfo = [view infoForBinding:NSValueBinding];\n\t\t\t[bindingInfo[NSObservedObjectKey] setValue:value forKeyPath:bindingInfo[NSObservedKeyPathKey]];\n\t\t}\n\t};\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACDeallocatingSpec.m",
    "content": "//\n//  NSObject+RACDeallocating.m\n//  ReactiveCocoa\n//\n//  Created by Kazuo Koga on 2013/03/15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import <objc/runtime.h>\n\n@interface RACDeallocSwizzlingTestClass : NSObject\n@end\n\n@implementation RACDeallocSwizzlingTestClass\n\n- (void)dealloc {\n\t// Provide an empty implementation just so we can swizzle it.\n}\n\n@end\n\n@interface RACDeallocSwizzlingTestSubclass : RACDeallocSwizzlingTestClass\n@end\n\n@implementation RACDeallocSwizzlingTestSubclass\n@end\n\nQuickSpecBegin(NSObjectRACDeallocatingSpec)\n\nqck_describe(@\"-dealloc swizzling\", ^{\n\tSEL selector = NSSelectorFromString(@\"dealloc\");\n\n\tqck_it(@\"should not invoke superclass -dealloc method twice\", ^{\n\t\t__block NSUInteger superclassDeallocatedCount = 0;\n\t\t__block BOOL subclassDeallocated = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACDeallocSwizzlingTestSubclass *object __attribute__((objc_precise_lifetime)) = [[RACDeallocSwizzlingTestSubclass alloc] init];\n\n\t\t\tMethod oldDeallocMethod = class_getInstanceMethod(RACDeallocSwizzlingTestClass.class, selector);\n\t\t\tvoid (*oldDealloc)(id, SEL) = (__typeof__(oldDealloc))method_getImplementation(oldDeallocMethod);\n\n\t\t\tid newDealloc = ^(__unsafe_unretained id self) {\n\t\t\t\tsuperclassDeallocatedCount++;\n\t\t\t\toldDealloc(self, selector);\n\t\t\t};\n\n\t\t\tclass_replaceMethod(RACDeallocSwizzlingTestClass.class, selector, imp_implementationWithBlock(newDealloc), method_getTypeEncoding(oldDeallocMethod));\n\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsubclassDeallocated = YES;\n\t\t\t}]];\n\n\t\t\texpect(@(subclassDeallocated)).to(beFalsy());\n\t\t\texpect(@(superclassDeallocatedCount)).to(equal(@0));\n\t\t}\n\n\t\texpect(@(subclassDeallocated)).to(beTruthy());\n\t\texpect(@(superclassDeallocatedCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should invoke superclass -dealloc method swizzled in after the subclass\", ^{\n\t\t__block BOOL superclassDeallocated = NO;\n\t\t__block BOOL subclassDeallocated = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACDeallocSwizzlingTestSubclass *object __attribute__((objc_precise_lifetime)) = [[RACDeallocSwizzlingTestSubclass alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsubclassDeallocated = YES;\n\t\t\t}]];\n\n\t\t\tMethod oldDeallocMethod = class_getInstanceMethod(RACDeallocSwizzlingTestClass.class, selector);\n\t\t\tvoid (*oldDealloc)(id, SEL) = (__typeof__(oldDealloc))method_getImplementation(oldDeallocMethod);\n\n\t\t\tid newDealloc = ^(__unsafe_unretained id self) {\n\t\t\t\tsuperclassDeallocated = YES;\n\t\t\t\toldDealloc(self, selector);\n\t\t\t};\n\n\t\t\tclass_replaceMethod(RACDeallocSwizzlingTestClass.class, selector, imp_implementationWithBlock(newDealloc), method_getTypeEncoding(oldDeallocMethod));\n\n\t\t\texpect(@(subclassDeallocated)).to(beFalsy());\n\t\t\texpect(@(superclassDeallocated)).to(beFalsy());\n\t\t}\n\n\t\texpect(@(subclassDeallocated)).to(beTruthy());\n\t\texpect(@(superclassDeallocated)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-rac_deallocDisposable\", ^{\n\tqck_it(@\"should dispose of the disposable when it is dealloc'd\", ^{\n\t\t__block BOOL wasDisposed = NO;\n\t\t@autoreleasepool {\n\t\t\tNSObject *object __attribute__((objc_precise_lifetime)) = [[NSObject alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\twasDisposed = YES;\n\t\t\t}]];\n\n\t\t\texpect(@(wasDisposed)).to(beFalsy());\n\t\t}\n\n\t\texpect(@(wasDisposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should be able to use the object during disposal\", ^{\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\n\t\t\t@autoreleasepool {\n\t\t\t\tobject.objectValue = [@\"foo\" mutableCopy];\n\t\t\t}\n\n\t\t\t__unsafe_unretained RACTestObject *weakObject = object;\n\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\texpect(weakObject.objectValue).to(equal(@\"foo\"));\n\t\t\t}]];\n\t\t}\n\t});\n});\n\nqck_describe(@\"-rac_willDeallocSignal\", ^{\n\tqck_it(@\"should complete on dealloc\", ^{\n\t\t__block BOOL completed = NO;\n\t\t@autoreleasepool {\n\t\t\t[[[[RACTestObject alloc] init] rac_willDeallocSignal] subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should not send anything\", ^{\n\t\t__block BOOL valueReceived = NO;\n\t\t__block BOOL completed = NO;\n\t\t@autoreleasepool {\n\t\t\t[[[[RACTestObject alloc] init] rac_willDeallocSignal] subscribeNext:^(id x) {\n\t\t\t\tvalueReceived = YES;\n\t\t\t} completed:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(valueReceived)).to(beFalsy());\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should complete upon subscription if already deallocated\", ^{\n\t\t__block BOOL deallocated = NO;\n\n\t\tRACSignal *signal;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t\tsignal = [object rac_willDeallocSignal];\n\t\t\t[signal subscribeCompleted:^{\n\t\t\t\tdeallocated = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(deallocated)).to(beTruthy());\n\t\texpect(@([signal waitUntilCompleted:NULL])).to(beTruthy());\n\t});\n\n\tqck_it(@\"should complete before the object is invalid\", ^{\n\t\t__block NSString *objectValue;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\n\t\t\t@autoreleasepool {\n\t\t\t\tobject.objectValue = [@\"foo\" mutableCopy];\n\t\t\t}\n\n\t\t\t__unsafe_unretained RACTestObject *weakObject = object;\n\n\t\t\t[[object rac_willDeallocSignal] subscribeCompleted:^{\n\t\t\t\tobjectValue = [weakObject.objectValue copy];\n\t\t\t}];\n\t\t}\n\n\t\texpect(objectValue).to(equal(@\"foo\"));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACLiftingSpec.m",
    "content": "//\n//  NSObjectRACLifting.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n\n#import \"NSObject+RACLifting.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSubject.h\"\n#import \"RACTuple.h\"\n#import \"RACUnit.h\"\n\nQuickSpecBegin(NSObjectRACLiftingSpec)\n\nqck_describe(@\"-rac_liftSelector:withSignals:\", ^{\n\t__block RACTestObject *object;\n\n\tqck_beforeEach(^{\n\t\tobject = [[RACTestObject alloc] init];\n\t});\n\n\tqck_it(@\"should call the selector with the value of the signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:) withSignals:subject, nil];\n\n\t\texpect(object.objectValue).to(beNil());\n\n\t\t[subject sendNext:@1];\n\t\texpect(object.objectValue).to(equal(@1));\n\n\t\t[subject sendNext:@42];\n\t\texpect(object.objectValue).to(equal(@42));\n\t});\n});\n\nqck_describe(@\"-rac_liftSelector:withSignalsFromArray:\", ^{\n\t__block RACTestObject *object;\n\n\tqck_beforeEach(^{\n\t\tobject = [[RACTestObject alloc] init];\n\t});\n\n\tqck_it(@\"should call the selector with the value of the signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(object.objectValue).to(beNil());\n\n\t\t[subject sendNext:@1];\n\t\texpect(object.objectValue).to(equal(@1));\n\n\t\t[subject sendNext:@42];\n\t\texpect(object.objectValue).to(equal(@42));\n\t});\n\n\tqck_it(@\"should call the selector with the value of the signal unboxed\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setIntegerValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(object.integerValue)).to(equal(@0));\n\n\t\t[subject sendNext:@1];\n\t\texpect(@(object.integerValue)).to(equal(@1));\n\n\t\t[subject sendNext:@42];\n\t\texpect(@(object.integerValue)).to(equal(@42));\n\t});\n\n\tqck_it(@\"should work with multiple arguments\", ^{\n\t\tRACSubject *objectValueSubject = [RACSubject subject];\n\t\tRACSubject *integerValueSubject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:andIntegerValue:) withSignalsFromArray:@[ objectValueSubject, integerValueSubject ]];\n\n\t\texpect(@(object.hasInvokedSetObjectValueAndIntegerValue)).to(beFalsy());\n\t\texpect(object.objectValue).to(beNil());\n\t\texpect(@(object.integerValue)).to(equal(@0));\n\n\t\t[objectValueSubject sendNext:@1];\n\t\texpect(@(object.hasInvokedSetObjectValueAndIntegerValue)).to(beFalsy());\n\t\texpect(object.objectValue).to(beNil());\n\t\texpect(@(object.integerValue)).to(equal(@0));\n\n\t\t[integerValueSubject sendNext:@42];\n\t\texpect(@(object.hasInvokedSetObjectValueAndIntegerValue)).to(beTruthy());\n\t\texpect(object.objectValue).to(equal(@1));\n\t\texpect(@(object.integerValue)).to(equal(@42));\n\t});\n\n\tqck_it(@\"should work with signals that immediately start with a value\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ [subject startWith:@42] ]];\n\n\t\texpect(object.objectValue).to(equal(@42));\n\n\t\t[subject sendNext:@1];\n\t\texpect(object.objectValue).to(equal(@1));\n\t});\n\n\tqck_it(@\"should work with signals that send nil\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ subject ]];\n\n\t\t[subject sendNext:nil];\n\t\texpect(object.objectValue).to(beNil());\n\n\t\t[subject sendNext:RACTupleNil.tupleNil];\n\t\texpect(object.objectValue).to(beNil());\n\t});\n\n\tqck_it(@\"should work with integers\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setIntegerValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(object.integerValue)).to(equal(@0));\n\n\t\t[subject sendNext:@1];\n\t\texpect(@(object.integerValue)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should convert between numeric types\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setIntegerValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(object.integerValue)).to(equal(@0));\n\n\t\t[subject sendNext:@1.0];\n\t\texpect(@(object.integerValue)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should work with class objects\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(object.objectValue).to(beNil());\n\n\t\t[subject sendNext:self.class];\n\t\texpect(object.objectValue).to(equal(self.class));\n\t});\n\n\tqck_it(@\"should work for char pointer\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setCharPointerValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@((size_t)object.charPointerValue)).to(equal(@0));\n\n\t\tNSString *string = @\"blah blah blah\";\n\t\t[subject sendNext:string];\n\t\texpect(@(object.charPointerValue)).to(equal(string));\n\t});\n\n\tqck_it(@\"should work for const char pointer\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setConstCharPointerValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@((size_t)object.constCharPointerValue)).to(equal(@0));\n\n\t\tNSString *string = @\"blah blah blah\";\n\t\t[subject sendNext:string];\n\t\texpect(@(object.constCharPointerValue)).to(equal(string));\n\t});\n\n\tqck_it(@\"should work for CGRect\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setRectValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(CGRectEqualToRect(object.rectValue, CGRectZero))).to(beTruthy());\n\n\t\tCGRect value = CGRectMake(10, 20, 30, 40);\n\t\t[subject sendNext:[NSValue valueWithBytes:&value objCType:@encode(CGRect)]];\n\t\texpect(@(CGRectEqualToRect(object.rectValue, value))).to(beTruthy());\n\t});\n\n\tqck_it(@\"should work for CGSize\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setSizeValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(CGSizeEqualToSize(object.sizeValue, CGSizeZero))).to(beTruthy());\n\n\t\tCGSize value = CGSizeMake(10, 20);\n\t\t[subject sendNext:[NSValue valueWithBytes:&value objCType:@encode(CGSize)]];\n\t\texpect(@(CGSizeEqualToSize(object.sizeValue, value))).to(beTruthy());\n\t});\n\n\tqck_it(@\"should work for CGPoint\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setPointValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(CGPointEqualToPoint(object.pointValue, CGPointZero))).to(beTruthy());\n\n\t\tCGPoint value = CGPointMake(10, 20);\n\t\t[subject sendNext:[NSValue valueWithBytes:&value objCType:@encode(CGPoint)]];\n\t\texpect(@(CGPointEqualToPoint(object.pointValue, value))).to(beTruthy());\n\t});\n\n\tqck_it(@\"should work for NSRange\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setRangeValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(NSEqualRanges(object.rangeValue, NSMakeRange(0, 0)))).to(beTruthy());\n\n\t\tNSRange value = NSMakeRange(10, 20);\n\t\t[subject sendNext:[NSValue valueWithRange:value]];\n\t\texpect(@(NSEqualRanges(object.rangeValue, value))).to(beTruthy());\n\t});\n\n\tqck_it(@\"should work for _Bool\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setC99BoolValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(object.c99BoolValue)).to(beFalsy());\n\n\t\t_Bool value = true;\n\t\t[subject sendNext:@(value)];\n\t\texpect(@(object.c99BoolValue)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should work for primitive pointers\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(write5ToIntPointer:) withSignalsFromArray:@[ subject ]];\n\n\t\tint value = 0;\n\t\tint *valuePointer = &value;\n\t\texpect(@(value)).to(equal(@0));\n\n\t\t[subject sendNext:[NSValue valueWithPointer:valuePointer]];\n\t\texpect(@(value)).to(equal(@5));\n\t});\n\n\tqck_it(@\"should work for custom structs\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setStructValue:) withSignalsFromArray:@[ subject ]];\n\n\t\texpect(@(object.structValue.integerField)).to(equal(@0));\n\t\texpect(@(object.structValue.doubleField)).to(equal(@0.0));\n\n\t\tRACTestStruct value = (RACTestStruct){7, 1.23};\n\t\t[subject sendNext:[NSValue valueWithBytes:&value objCType:@encode(typeof(value))]];\n\t\texpect(@(object.structValue.integerField)).to(equal(@(value.integerField)));\n\t\texpect(@(object.structValue.doubleField)).to(equal(@(value.doubleField)));\n\t});\n\n\tqck_it(@\"should send the latest value of the signal as the right argument\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t[object rac_liftSelector:@selector(setObjectValue:andIntegerValue:) withSignalsFromArray:@[ [RACSignal return:@\"object\"], subject ]];\n\t\t[subject sendNext:@1];\n\n\t\texpect(object.objectValue).to(equal(@\"object\"));\n\t\texpect(@(object.integerValue)).to(equal(@1));\n\t});\n\n\tqck_describe(@\"the returned signal\", ^{\n\t\tqck_it(@\"should send the return value of the method invocation\", ^{\n\t\t\tRACSubject *objectSubject = [RACSubject subject];\n\t\t\tRACSubject *integerSubject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(combineObjectValue:andIntegerValue:) withSignalsFromArray:@[ objectSubject, integerSubject ]];\n\n\t\t\t__block NSString *result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[objectSubject sendNext:@\"Magic number\"];\n\t\t\texpect(result).to(beNil());\n\n\t\t\t[integerSubject sendNext:@42];\n\t\t\texpect(result).to(equal(@\"Magic number: 42\"));\n\t\t});\n\n\t\tqck_it(@\"should send RACUnit.defaultUnit for void-returning methods\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block id result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@1];\n\n\t\t\texpect(result).to(equal(RACUnit.defaultUnit));\n\t\t});\n\n\t\tqck_it(@\"should support integer returning methods\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(doubleInteger:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block id result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@1];\n\n\t\t\texpect(result).to(equal(@2));\n\t\t});\n\n\t\tqck_it(@\"should support char * returning methods\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(doubleString:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block id result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@\"test\"];\n\n\t\t\texpect(result).to(equal(@\"testtest\"));\n\t\t});\n\n\t\tqck_it(@\"should support const char * returning methods\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(doubleConstString:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block id result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@\"test\"];\n\n\t\t\texpect(result).to(equal(@\"testtest\"));\n\t\t});\n\n\t\tqck_it(@\"should support struct returning methods\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(doubleStruct:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block NSValue *boxedResult;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tboxedResult = x;\n\t\t\t}];\n\n\t\t\tRACTestStruct value = {4, 12.3};\n\t\t\tNSValue *boxedValue = [NSValue valueWithBytes:&value objCType:@encode(typeof(value))];\n\t\t\t[subject sendNext:boxedValue];\n\n\t\t\tRACTestStruct result = {0, 0.0};\n\t\t\t[boxedResult getValue:&result];\n\t\t\texpect(@(result.integerField)).to(equal(@8));\n\t\t\texpect(@(result.doubleField)).to(equal(@24.6));\n\t\t});\n\n\t\tqck_it(@\"should support block arguments and returns\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(wrapBlock:) withSignalsFromArray:@[ subject ]];\n\n\t\t\t__block BOOL blockInvoked = NO;\n\t\t\tdispatch_block_t testBlock = ^{\n\t\t\t\tblockInvoked = YES;\n\t\t\t};\n\n\t\t\t__block dispatch_block_t result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:testBlock];\n\t\t\texpect(result).notTo(beNil());\n\n\t\t\tresult();\n\t\t\texpect(@(blockInvoked)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should replay the last value\", ^{\n\t\t\tRACSubject *objectSubject = [RACSubject subject];\n\t\t\tRACSubject *integerSubject = [RACSubject subject];\n\t\t\tRACSignal *signal = [object rac_liftSelector:@selector(combineObjectValue:andIntegerValue:) withSignalsFromArray:@[ objectSubject, integerSubject ]];\n\n\t\t\t[objectSubject sendNext:@\"Magic number\"];\n\t\t\t[integerSubject sendNext:@42];\n\t\t\t[integerSubject sendNext:@43];\n\n\t\t\t__block NSString *result;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\tresult = x;\n\t\t\t}];\n\n\t\t\texpect(result).to(equal(@\"Magic number: 43\"));\n\t\t});\n\t});\n\n\tqck_it(@\"shouldn't strongly capture the receiver\", ^{\n\t\t__block BOOL dealloced = NO;\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *testObject __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t[testObject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdealloced = YES;\n\t\t\t}]];\n\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\t[testObject rac_liftSelector:@selector(setObjectValue:) withSignalsFromArray:@[ subject ]];\n\t\t\t[subject sendNext:@1];\n\t\t}\n\n\t\texpect(@(dealloced)).to(beTruthy());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACPropertySubscribingExamples.h",
    "content": "//\n//  NSObjectRACPropertySubscribingExamples.h\n//  ReactiveCocoa\n//\n//  Created by Josh Vera on 4/10/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for a signal-driven observation.\nextern NSString * const RACPropertySubscribingExamples;\n\n// The block should have the signature:\n//   RACSignal * (^)(RACTestObject *testObject, NSString *keyPath, id observer)\n// and should observe the value of the key path on testObject with observer. The value\n// for this key should not be nil.\nextern NSString * const RACPropertySubscribingExamplesSetupBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACPropertySubscribingExamples.m",
    "content": "//\n//  NSObjectRACPropertySubscribingExamples.m\n//  ReactiveCocoa\n//\n//  Created by Josh Vera on 4/10/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n#import \"NSObjectRACPropertySubscribingExamples.h\"\n\n#import <ReactiveCocoa/EXTScope.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n\nNSString * const RACPropertySubscribingExamples = @\"RACPropertySubscribingExamples\";\nNSString * const RACPropertySubscribingExamplesSetupBlock = @\"RACPropertySubscribingExamplesSetupBlock\";\n\nQuickConfigurationBegin(NSObjectRACPropertySubscribingExamples)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACPropertySubscribingExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block RACSignal *(^signalBlock)(RACTestObject *object, NSString *keyPath, id observer);\n\n\t\tqck_beforeEach(^{\n\t\t\tsignalBlock = exampleContext()[RACPropertySubscribingExamplesSetupBlock];\n\t\t});\n\n\t\tqck_it(@\"should send the current value once on subscription\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), self);\n\t\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t\tobject.objectValue = @0;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t\texpect(values).to(equal((@[ @0 ])));\n\t\t});\n\n\t\tqck_it(@\"should send the new value when it changes\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), self);\n\t\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t\tobject.objectValue = @0;\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t\texpect(values).to(equal((@[ @0 ])));\n\n\t\t\tobject.objectValue = @1;\n\t\t\texpect(values).to(equal((@[ @0, @1 ])));\n\n\t\t});\n\n\t\tqck_it(@\"should stop observing when disposed\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), self);\n\t\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t\tobject.objectValue = @0;\n\t\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t\tobject.objectValue = @1;\n\t\t\tNSArray *expected = @[ @0, @1 ];\n\t\t\texpect(values).to(equal(expected));\n\n\t\t\t[disposable dispose];\n\t\t\tobject.objectValue = @2;\n\t\t\texpect(values).to(equal(expected));\n\t\t});\n\n\t\tqck_it(@\"shouldn't send any more values after the observer is gone\", ^{\n\t\t\t__block BOOL observerDealloced = NO;\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t\t@autoreleasepool {\n\t\t\t\tRACTestObject *observer __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t\t[observer.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tobserverDealloced = YES;\n\t\t\t\t}]];\n\n\t\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), observer);\n\t\t\t\tobject.objectValue = @1;\n\t\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\t\t[values addObject:x];\n\t\t\t\t}];\n\t\t\t}\n\n\t\t\texpect(@(observerDealloced)).to(beTruthy());\n\n\t\t\tNSArray *expected = @[ @1 ];\n\t\t\texpect(values).to(equal(expected));\n\n\t\t\tobject.objectValue = @2;\n\t\t\texpect(values).to(equal(expected));\n\t\t});\n\n\t\tqck_it(@\"shouldn't keep either object alive unnaturally long\", ^{\n\t\t\t__block BOOL objectDealloced = NO;\n\t\t\t__block BOOL scopeObjectDealloced = NO;\n\t\t\t@autoreleasepool {\n\t\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tobjectDealloced = YES;\n\t\t\t\t}]];\n\t\t\t\tRACTestObject *scopeObject __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t\t[scopeObject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tscopeObjectDealloced = YES;\n\t\t\t\t}]];\n\n\t\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), scopeObject);\n\n\t\t\t\t[signal subscribeNext:^(id _) {\n\n\t\t\t\t}];\n\t\t\t}\n\n\t\t\texpect(@(objectDealloced)).to(beTruthy());\n\t\t\texpect(@(scopeObjectDealloced)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"shouldn't keep the signal alive past the lifetime of the object\", ^{\n\t\t\t__block BOOL objectDealloced = NO;\n\t\t\t__block BOOL signalDealloced = NO;\n\t\t\t@autoreleasepool {\n\t\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tobjectDealloced = YES;\n\t\t\t\t}]];\n\n\t\t\t\tRACSignal *signal = [signalBlock(object, @keypath(object, objectValue), self) map:^(id value) {\n\t\t\t\t\treturn value;\n\t\t\t\t}];\n\n\t\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tsignalDealloced = YES;\n\t\t\t\t}]];\n\n\t\t\t\t[signal subscribeNext:^(id _) {\n\n\t\t\t\t}];\n\t\t\t}\n\n\t\t\texpect(@(signalDealloced)).toEventually(beTruthy());\n\t\t\texpect(@(objectDealloced)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"shouldn't crash when the value is changed on a different queue\", ^{\n\t\t\t__block id value;\n\t\t\t@autoreleasepool {\n\t\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\n\t\t\t\tRACSignal *signal = signalBlock(object, @keypath(object, objectValue), self);\n\n\t\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\t\tvalue = x;\n\t\t\t\t}];\n\n\t\t\t\tNSOperationQueue *queue = [[NSOperationQueue alloc] init];\n\t\t\t\t[queue addOperationWithBlock:^{\n\t\t\t\t\tobject.objectValue = @1;\n\t\t\t\t}];\n\n\t\t\t\t[queue waitUntilAllOperationsAreFinished];\n\t\t\t}\n\n\t\t\texpect(value).toEventually(equal(@1));\n\t\t});\n\n\t\tqck_describe(@\"mutating collections\", ^{\n\t\t\t__block RACTestObject *object;\n\t\t\t__block NSMutableOrderedSet *lastValue;\n\t\t\t__block NSMutableOrderedSet *proxySet;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tobject = [[RACTestObject alloc] init];\n\t\t\t\tobject.objectValue = [NSMutableOrderedSet orderedSetWithObject:@1];\n\n\t\t\t\tNSString *keyPath = @keypath(object, objectValue);\n\n\t\t\t\t[signalBlock(object, keyPath, self) subscribeNext:^(NSMutableOrderedSet *x) {\n\t\t\t\t\tlastValue = x;\n\t\t\t\t}];\n\n\t\t\t\tproxySet = [object mutableOrderedSetValueForKey:keyPath];\n\t\t\t});\n\n\t\t\tqck_it(@\"sends the newest object when inserting values into an observed object\", ^{\n\t\t\t\tNSMutableOrderedSet *expected = [NSMutableOrderedSet orderedSetWithObjects: @1, @2, nil];\n\n\t\t\t\t[proxySet addObject:@2];\n\t\t\t\texpect(lastValue).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"sends the newest object when removing values in an observed object\", ^{\n\t\t\t\tNSMutableOrderedSet *expected = [NSMutableOrderedSet orderedSet];\n\n\t\t\t\t[proxySet removeAllObjects];\n\t\t\t\texpect(lastValue).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"sends the newest object when replacing values in an observed object\", ^{\n\t\t\t\tNSMutableOrderedSet *expected = [NSMutableOrderedSet orderedSetWithObjects: @2, nil];\n\n\t\t\t\t[proxySet replaceObjectAtIndex:0 withObject:@2];\n\t\t\t\texpect(lastValue).to(equal(expected));\n\t\t\t});\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACPropertySubscribingSpec.m",
    "content": "//\n//  NSObjectRACPropertySubscribingSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSObjectRACPropertySubscribingExamples.h\"\n#import \"RACTestObject.h\"\n\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n\nQuickSpecBegin(NSObjectRACPropertySubscribingSpec)\n\nqck_describe(@\"-rac_valuesForKeyPath:observer:\", ^{\n\tid (^setupBlock)(id, id, id) = ^(RACTestObject *object, NSString *keyPath, id observer) {\n\t\treturn [object rac_valuesForKeyPath:keyPath observer:observer];\n\t};\n\n\tqck_itBehavesLike(RACPropertySubscribingExamples, ^{\n\t\treturn @{ RACPropertySubscribingExamplesSetupBlock: setupBlock };\n\t});\n\n});\n\nqck_describe(@\"+rac_signalWithChangesFor:keyPath:options:observer:\", ^{\n\tqck_describe(@\"KVO options argument\", ^{\n\t\t__block RACTestObject *object;\n\t\t__block id actual;\n\t\t__block RACSignal *(^objectValueSignal)(NSKeyValueObservingOptions);\n\n\t\tqck_beforeEach(^{\n\t\t\tobject = [[RACTestObject alloc] init];\n\n\t\t\tobjectValueSignal = ^(NSKeyValueObservingOptions options) {\n\t\t\t\treturn [[object rac_valuesAndChangesForKeyPath:@keypath(object, objectValue) options:options observer:self] reduceEach:^(id value, NSDictionary *change) {\n\t\t\t\t\treturn change;\n\t\t\t\t}];\n\t\t\t};\n\t\t});\n\n\t\tqck_it(@\"sends a KVO dictionary\", ^{\n\t\t\t[objectValueSignal(0) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tactual = x;\n\t\t\t}];\n\n\t\t\tobject.objectValue = @1;\n\n\t\t\texpect(actual).to(beAKindOf(NSDictionary.class));\n\t\t});\n\n\t\tqck_it(@\"sends a kind key by default\", ^{\n\t\t\t[objectValueSignal(0) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tactual = x[NSKeyValueChangeKindKey];\n\t\t\t}];\n\n\t\t\tobject.objectValue = @1;\n\n\t\t\texpect(actual).notTo(beNil());\n\t\t});\n\n\t\tqck_it(@\"sends the newest changes with NSKeyValueObservingOptionNew\", ^{\n\t\t\t[objectValueSignal(NSKeyValueObservingOptionNew) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tactual = x[NSKeyValueChangeNewKey];\n\t\t\t}];\n\n\t\t\tobject.objectValue = @1;\n\t\t\texpect(actual).to(equal(@1));\n\n\t\t\tobject.objectValue = @2;\n\t\t\texpect(actual).to(equal(@2));\n\t\t});\n\n\t\tqck_it(@\"sends an additional change value with NSKeyValueObservingOptionPrior\", ^{\n\t\t\tNSMutableArray *values = [NSMutableArray new];\n\t\t\tNSArray *expected = @[ @(YES), @(NO) ];\n\n\t\t\t[objectValueSignal(NSKeyValueObservingOptionPrior) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tBOOL isPrior = [x[NSKeyValueChangeNotificationIsPriorKey] boolValue];\n\t\t\t\t[values addObject:@(isPrior)];\n\t\t\t}];\n\n\t\t\tobject.objectValue = @[ @1 ];\n\n\t\t\texpect(values).to(equal(expected));\n\t\t});\n\n\t\tqck_it(@\"sends index changes when adding, inserting or removing a value from an observed object\", ^{\n\t\t\t__block NSUInteger hasIndexesCount = 0;\n\n\t\t\t[objectValueSignal(0) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tif (x[NSKeyValueChangeIndexesKey] != nil) {\n\t\t\t\t\thasIndexesCount += 1;\n\t\t\t\t}\n\t\t\t}];\n\n\t\t\tobject.objectValue = [NSMutableOrderedSet orderedSet];\n\t\t\texpect(@(hasIndexesCount)).to(equal(@0));\n\n\t\t\tNSMutableOrderedSet *objectValue = [object mutableOrderedSetValueForKey:@\"objectValue\"];\n\n\t\t\t[objectValue addObject:@1];\n\t\t\texpect(@(hasIndexesCount)).to(equal(@1));\n\n\t\t\t[objectValue replaceObjectAtIndex:0 withObject:@2];\n\t\t\texpect(@(hasIndexesCount)).to(equal(@2));\n\n\t\t\t[objectValue removeObject:@2];\n\t\t\texpect(@(hasIndexesCount)).to(equal(@3));\n\t\t});\n\n\t\tqck_it(@\"sends the previous value with NSKeyValueObservingOptionOld\", ^{\n\t\t\t[objectValueSignal(NSKeyValueObservingOptionOld) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tactual = x[NSKeyValueChangeOldKey];\n\t\t\t}];\n\n\t\t\tobject.objectValue = @1;\n\t\t\texpect(actual).to(equal(NSNull.null));\n\n\t\t\tobject.objectValue = @2;\n\t\t\texpect(actual).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"sends the initial value with NSKeyValueObservingOptionInitial\", ^{\n\t\t\t[objectValueSignal(NSKeyValueObservingOptionInitial | NSKeyValueObservingOptionNew) subscribeNext:^(NSDictionary *x) {\n\t\t\t\tactual = x[NSKeyValueChangeNewKey];\n\t\t\t}];\n\t\t\t\n\t\t\texpect(actual).to(equal(NSNull.null));\n\t\t});\n\t});\n});\n\nqck_describe(@\"-rac_valuesAndChangesForKeyPath:options:observer:\", ^{\n\tqck_it(@\"should complete immediately if the receiver or observer have deallocated\", ^{\n\t\tRACSignal *signal;\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\tRACTestObject *observer __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\tsignal = [object rac_valuesAndChangesForKeyPath:@keypath(object, stringValue) options:0 observer:observer];\n\t\t}\n\n\t\t__block BOOL completed = NO;\n\t\t[signal subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSObjectRACSelectorSignalSpec.m",
    "content": "//\n//  NSObjectRACSelectorSignalSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n#import \"RACSubclassObject.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACMulticastConnection.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSignal.h\"\n#import \"RACTuple.h\"\n\n@protocol TestProtocol\n\n@required\n- (BOOL)requiredMethod:(NSUInteger)number;\n- (void)lifeIsGood:(id)sender;\n\n@optional\n- (NSUInteger)optionalMethodWithObject:(id)object flag:(BOOL)flag;\n- (id)objectValue;\n\n@end\n\nQuickSpecBegin(NSObjectRACSelectorSignalSpec)\n\nqck_describe(@\"RACTestObject\", ^{\n\tqck_it(@\"should send the argument for each invocation\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(lifeIsGood:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\t[object lifeIsGood:@42];\n\n\t\texpect(value).to(equal(@42));\n\t});\n\n\tqck_it(@\"should send completed on deallocation\", ^{\n\t\t__block BOOL completed = NO;\n\t\t__block BOOL deallocated = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocated = YES;\n\t\t\t}]];\n\n\t\t\t[[object rac_signalForSelector:@selector(lifeIsGood:)] subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\t\texpect(@(deallocated)).to(beFalsy());\n\t\t\texpect(@(completed)).to(beFalsy());\n\t\t}\n\n\t\texpect(@(deallocated)).to(beTruthy());\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should send for a zero-argument method\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t__block RACTuple *value;\n\t\t[[object rac_signalForSelector:@selector(objectValue)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\t(void)[object objectValue];\n\t\texpect(value).to(equal([RACTuple tupleWithObjectsFromArray:@[]]));\n\t});\n\n\tqck_it(@\"should send the argument for each invocation to the instance's own signal\", ^{\n\t\tRACTestObject *object1 = [[RACTestObject alloc] init];\n\t\t__block id value1;\n\t\t[[object1 rac_signalForSelector:@selector(lifeIsGood:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue1 = x.first;\n\t\t}];\n\n\t\tRACTestObject *object2 = [[RACTestObject alloc] init];\n\t\t__block id value2;\n\t\t[[object2 rac_signalForSelector:@selector(lifeIsGood:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue2 = x.first;\n\t\t}];\n\n\t\t[object1 lifeIsGood:@42];\n\t\t[object2 lifeIsGood:@\"Carpe diem\"];\n\n\t\texpect(value1).to(equal(@42));\n\t\texpect(value2).to(equal(@\"Carpe diem\"));\n\t});\n\n\tqck_it(@\"should send multiple arguments for each invocation\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t__block id value1;\n\t\t__block id value2;\n\t\t[[object rac_signalForSelector:@selector(combineObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue1 = x.first;\n\t\t\tvalue2 = x.second;\n\t\t}];\n\n\t\texpect([object combineObjectValue:@42 andSecondObjectValue:@\"foo\"]).to(equal(@\"42: foo\"));\n\t\texpect(value1).to(equal(@42));\n\t\texpect(value2).to(equal(@\"foo\"));\n\t});\n\n\tqck_it(@\"should send arguments for invocation of non-existant methods\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t__block id key;\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(setObject:forKey:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t\tkey = x.second;\n\t\t}];\n\n\t\t[object performSelector:@selector(setObject:forKey:) withObject:@YES withObject:@\"Winner\"];\n\n\t\texpect(value).to(equal(@YES));\n\t\texpect(key).to(equal(@\"Winner\"));\n\t});\n\n\tqck_it(@\"should send arguments for invocation and invoke the original method on previously KVO'd receiver\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\t__block id key;\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(setObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t\tkey = x.second;\n\t\t}];\n\n\t\t[object setObjectValue:@YES andSecondObjectValue:@\"Winner\"];\n\n\t\texpect(@(object.hasInvokedSetObjectValueAndSecondObjectValue)).to(beTruthy());\n\t\texpect(object.objectValue).to(equal(@YES));\n\t\texpect(object.secondObjectValue).to(equal(@\"Winner\"));\n\n\t\texpect(value).to(equal(@YES));\n\t\texpect(key).to(equal(@\"Winner\"));\n\t});\n\n\tqck_it(@\"should send arguments for invocation and invoke the original method when receiver is subsequently KVO'd\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t__block id key;\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(setObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t\tkey = x.second;\n\t\t}];\n\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\t[object setObjectValue:@YES andSecondObjectValue:@\"Winner\"];\n\n\t\texpect(@(object.hasInvokedSetObjectValueAndSecondObjectValue)).to(beTruthy());\n\t\texpect(object.objectValue).to(equal(@YES));\n\t\texpect(object.secondObjectValue).to(equal(@\"Winner\"));\n\n\t\texpect(value).to(equal(@YES));\n\t\texpect(key).to(equal(@\"Winner\"));\n\t});\n\n\tqck_it(@\"should properly implement -respondsToSelector: when called on KVO'd receiver\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t// First, setup KVO on `object`, which gives us the desired side-effect\n\t\t// of `object` taking on a KVO-custom subclass.\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\tSEL selector = NSSelectorFromString(@\"anyOldSelector:\");\n\n\t\t// With the KVO subclass in place, call -rac_signalForSelector: to\n\t\t// implement -anyOldSelector: directly on the KVO subclass.\n\t\t[object rac_signalForSelector:selector];\n\n\t\texpect(@([object respondsToSelector:selector])).to(beTruthy());\n\t});\n\n\tqck_it(@\"should properly implement -respondsToSelector: when called on signalForSelector'd receiver that has subsequently been KVO'd\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\tSEL selector = NSSelectorFromString(@\"anyOldSelector:\");\n\n\t\t// Implement -anyOldSelector: on the object first\n\t\t[object rac_signalForSelector:selector];\n\n\t\texpect(@([object respondsToSelector:selector])).to(beTruthy());\n\n\t\t// Then KVO the object\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\texpect(@([object respondsToSelector:selector])).to(beTruthy());\n\t});\n\n\tqck_it(@\"should properly implement -respondsToSelector: when called on signalForSelector'd receiver that has subsequently been KVO'd, then signalForSelector'd again\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\tSEL selector = NSSelectorFromString(@\"anyOldSelector:\");\n\n\t\t// Implement -anyOldSelector: on the object first\n\t\t[object rac_signalForSelector:selector];\n\n\t\texpect(@([object respondsToSelector:selector])).to(beTruthy());\n\n\t\t// Then KVO the object\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\texpect(@([object respondsToSelector:selector])).to(beTruthy());\n\t\t\n\t\tSEL selector2 = NSSelectorFromString(@\"anotherSelector:\");\n\n\t\t// Then implement -anotherSelector: on the object\n\t\t[object rac_signalForSelector:selector2];\n\n\t\texpect(@([object respondsToSelector:selector2])).to(beTruthy());\n\t});\n\t\n\tqck_it(@\"should call the right signal for two instances of the same class, adding signals for the same selector\", ^{\n\t\tRACTestObject *object1 = [[RACTestObject alloc] init];\n\t\tRACTestObject *object2 = [[RACTestObject alloc] init];\n\n\t\tSEL selector = NSSelectorFromString(@\"lifeIsGood:\");\n\n\t\t__block id value1 = nil;\n\t\t[[object1 rac_signalForSelector:selector] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue1 = x.first;\n\t\t}];\n\n\t\t__block id value2 = nil;\n\t\t[[object2 rac_signalForSelector:selector] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue2 = x.first;\n\t\t}];\n\n\t\t[object1 lifeIsGood:@42];\n\t\texpect(value1).to(equal(@42));\n\t\texpect(value2).to(beNil());\n\n\t\t[object2 lifeIsGood:@420];\n\t\texpect(value1).to(equal(@42));\n\t\texpect(value2).to(equal(@420));\n\t});\n\n\tqck_it(@\"should properly implement -respondsToSelector: for optional method from a protocol\", ^{\n\t\t// Selector for the targeted optional method from a protocol.\n\t\tSEL selector = @selector(optionalProtocolMethodWithObjectValue:);\n\n\t\tRACTestObject *object1 = [[RACTestObject alloc] init];\n\n\t\t// Method implementation of the selector is added to its swizzled class.\n\t\t[object1 rac_signalForSelector:selector fromProtocol:@protocol(RACTestProtocol)];\n\n\t\texpect(@([object1 respondsToSelector:selector])).to(beTruthy());\n\n\t\tRACTestObject *object2 = [[RACTestObject alloc] init];\n\n\t\t// Call -rac_signalForSelector: to swizzle this instance's class,\n\t\t// method implementations of -respondsToSelector: and\n\t\t// -forwardInvocation:.\n\t\t[object2 rac_signalForSelector:@selector(lifeIsGood:)];\n\n\t\t// This instance should not respond to the selector because of not\n\t\t// calling -rac_signalForSelector: with the selector.\n\t\texpect(@([object2 respondsToSelector:selector])).to(beFalsy());\n\t});\n\n\tqck_it(@\"should send non-object arguments\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(setIntegerValue:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\tobject.integerValue = 42;\n\t\texpect(value).to(equal(@42));\n\t});\n\n\tqck_it(@\"should send on signal after the original method is invoked\", ^{\n\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t__block BOOL invokedMethodBefore = NO;\n\t\t[[object rac_signalForSelector:@selector(setObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *x) {\n\t\t\tinvokedMethodBefore = object.hasInvokedSetObjectValueAndSecondObjectValue;\n\t\t}];\n\t\t\n\t\t[object setObjectValue:@YES andSecondObjectValue:@\"Winner\"];\n\t\texpect(@(invokedMethodBefore)).to(beTruthy());\n\t});\n});\n\nqck_it(@\"should swizzle an NSObject method\", ^{\n\tNSObject *object = [[NSObject alloc] init];\n\n\t__block RACTuple *value;\n\t[[object rac_signalForSelector:@selector(description)] subscribeNext:^(RACTuple *x) {\n\t\tvalue = x;\n\t}];\n\n\texpect([object description]).notTo(beNil());\n\texpect(value).to(equal([RACTuple tupleWithObjectsFromArray:@[]]));\n});\n\nqck_describe(@\"a class that already overrides -forwardInvocation:\", ^{\n\tqck_it(@\"should invoke the superclass' implementation\", ^{\n\t\tRACSubclassObject *object = [[RACSubclassObject alloc] init];\n\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(lifeIsGood:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\t[object lifeIsGood:@42];\n\t\texpect(value).to(equal(@42));\n\n\t\texpect(@((size_t)(void*)object.forwardedSelector)).to(equal(@0));\n\n\t\t[object performSelector:@selector(allObjects)];\n\n\t\texpect(value).to(equal(@42));\n\t\texpect(NSStringFromSelector(object.forwardedSelector)).to(equal(@\"allObjects\"));\n\t});\n\n\tqck_it(@\"should not infinite recurse when KVO'd after RAC swizzled\", ^{\n\t\tRACSubclassObject *object = [[RACSubclassObject alloc] init];\n\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(lifeIsGood:)] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\n\t\t[object lifeIsGood:@42];\n\t\texpect(value).to(equal(@42));\n\n\t\texpect(@((size_t)(void*)object.forwardedSelector)).to(equal(@0));\n\t\t[object performSelector:@selector(allObjects)];\n\t\texpect(NSStringFromSelector(object.forwardedSelector)).to(equal(@\"allObjects\"));\n\t});\n});\n\nqck_describe(@\"two classes in the same hierarchy\", ^{\n\t__block RACTestObject *superclassObj;\n\t__block RACTuple *superclassTuple;\n\n\t__block RACSubclassObject *subclassObj;\n\t__block RACTuple *subclassTuple;\n\n\tqck_beforeEach(^{\n\t\tsuperclassObj = [[RACTestObject alloc] init];\n\t\texpect(superclassObj).notTo(beNil());\n\n\t\tsubclassObj = [[RACSubclassObject alloc] init];\n\t\texpect(subclassObj).notTo(beNil());\n\t});\n\n\tqck_it(@\"should not collide\", ^{\n\t\t[[superclassObj rac_signalForSelector:@selector(combineObjectValue:andIntegerValue:)] subscribeNext:^(RACTuple *t) {\n\t\t\tsuperclassTuple = t;\n\t\t}];\n\n\t\t[[subclassObj rac_signalForSelector:@selector(combineObjectValue:andIntegerValue:)] subscribeNext:^(RACTuple *t) {\n\t\t\tsubclassTuple = t;\n\t\t}];\n\n\t\texpect([superclassObj combineObjectValue:@\"foo\" andIntegerValue:42]).to(equal(@\"foo: 42\"));\n\n\t\tNSArray *expectedValues = @[ @\"foo\", @42 ];\n\t\texpect(superclassTuple.allObjects).to(equal(expectedValues));\n\n\t\texpect([subclassObj combineObjectValue:@\"foo\" andIntegerValue:42]).to(equal(@\"fooSUBCLASS: 42\"));\n\n\t\texpectedValues = @[ @\"foo\", @42 ];\n\t\texpect(subclassTuple.allObjects).to(equal(expectedValues));\n\t});\n\n\tqck_it(@\"should not collide when the superclass is invoked asynchronously\", ^{\n\t\t[[superclassObj rac_signalForSelector:@selector(setObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *t) {\n\t\t\tsuperclassTuple = t;\n\t\t}];\n\n\t\t[[subclassObj rac_signalForSelector:@selector(setObjectValue:andSecondObjectValue:)] subscribeNext:^(RACTuple *t) {\n\t\t\tsubclassTuple = t;\n\t\t}];\n\n\t\t[superclassObj setObjectValue:@\"foo\" andSecondObjectValue:@\"42\"];\n\t\texpect(@(superclassObj.hasInvokedSetObjectValueAndSecondObjectValue)).to(beTruthy());\n\n\t\tNSArray *expectedValues = @[ @\"foo\", @\"42\" ];\n\t\texpect(superclassTuple.allObjects).to(equal(expectedValues));\n\n\t\t[subclassObj setObjectValue:@\"foo\" andSecondObjectValue:@\"42\"];\n\t\texpect(@(subclassObj.hasInvokedSetObjectValueAndSecondObjectValue)).to(beFalsy());\n\t\texpect(@(subclassObj.hasInvokedSetObjectValueAndSecondObjectValue)).toEventually(beTruthy());\n\n\t\texpectedValues = @[ @\"foo\", @\"42\" ];\n\t\texpect(subclassTuple.allObjects).to(equal(expectedValues));\n\t});\n});\n\nqck_describe(@\"-rac_signalForSelector:fromProtocol\", ^{\n\t__block RACTestObject<TestProtocol> *object;\n\t__block Protocol *protocol;\n\t\n\tqck_beforeEach(^{\n\t\tobject = (id)[[RACTestObject alloc] init];\n\t\texpect(object).notTo(beNil());\n\n\t\tprotocol = @protocol(TestProtocol);\n\t\texpect(protocol).notTo(beNil());\n\t});\n\n\tqck_it(@\"should not clobber a required method already implemented\", ^{\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(lifeIsGood:) fromProtocol:protocol] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\t[object lifeIsGood:@42];\n\t\texpect(value).to(equal(@42));\n\t});\n\n\tqck_it(@\"should not clobber an optional method already implemented\", ^{\n\t\tobject.objectValue = @\"foo\";\n\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(objectValue) fromProtocol:protocol] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\texpect([object objectValue]).to(equal(@\"foo\"));\n\t\texpect(value).to(equal([RACTuple tupleWithObjectsFromArray:@[]]));\n\t});\n\n\tqck_it(@\"should inject a required method\", ^{\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(requiredMethod:) fromProtocol:protocol] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x.first;\n\t\t}];\n\n\t\texpect(@([object requiredMethod:42])).to(beFalsy());\n\t\texpect(value).to(equal(@42));\n\t});\n\n\tqck_it(@\"should inject an optional method\", ^{\n\t\t__block id value;\n\t\t[[object rac_signalForSelector:@selector(optionalMethodWithObject:flag:) fromProtocol:protocol] subscribeNext:^(RACTuple *x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\texpect(@([object optionalMethodWithObject:@\"foo\" flag:YES])).to(equal(@0));\n\t\texpect(value).to(equal(RACTuplePack(@\"foo\", @YES)));\n\t});\n});\n\nqck_describe(@\"class reporting\", ^{\n\t__block RACTestObject *object;\n\t__block Class originalClass;\n\n\tqck_beforeEach(^{\n\t\tobject = [[RACTestObject alloc] init];\n\t\toriginalClass = object.class;\n\t});\n\n\tqck_it(@\"should report the original class\", ^{\n\t\t[object rac_signalForSelector:@selector(lifeIsGood:)];\n\t\texpect(object.class).to(beIdenticalTo(originalClass));\n\t});\n\n\tqck_it(@\"should report the original class when it's KVO'd after dynamically subclassing\", ^{\n\t\t[object rac_signalForSelector:@selector(lifeIsGood:)];\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\t\texpect(object.class).to(beIdenticalTo(originalClass));\n\t});\n\n\tqck_it(@\"should report the original class when it's KVO'd before dynamically subclassing\", ^{\n\t\t[[RACObserve(object, objectValue) publish] connect];\n\t\t[object rac_signalForSelector:@selector(lifeIsGood:)];\n\t\texpect(object.class).to(beIdenticalTo(originalClass));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSStringRACKeyPathUtilitiesSpec.m",
    "content": "//\n//  NSStringRACKeyPathUtilitiesSpec.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 05/05/2013.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSString+RACKeyPathUtilities.h\"\n\nQuickSpecBegin(NSStringRACKeyPathUtilitiesSpec)\n\nqck_describe(@\"-keyPathComponents\", ^{\n\tqck_it(@\"should return components in the key path\", ^{\n\t\texpect(@\"self.test.key.path\".rac_keyPathComponents).to(equal((@[@\"self\", @\"test\", @\"key\", @\"path\"])));\n\t});\n\t\n\tqck_it(@\"should return nil if given an empty string\", ^{\n\t\texpect(@\"\".rac_keyPathComponents).to(beNil());\n\t});\n});\n\nqck_describe(@\"-keyPathByDeletingLastKeyPathComponent\", ^{\n\tqck_it(@\"should return the parent key path\", ^{\n\t\texpect(@\"grandparent.parent.child\".rac_keyPathByDeletingLastKeyPathComponent).to(equal(@\"grandparent.parent\"));\n\t});\n\t\n\tqck_it(@\"should return nil if given an empty string\", ^{\n\t\texpect(@\"\".rac_keyPathByDeletingLastKeyPathComponent).to(beNil());\n\t});\n\t\n\tqck_it(@\"should return nil if given a key path with only one component\", ^{\n\t\texpect(@\"self\".rac_keyPathByDeletingLastKeyPathComponent).to(beNil());\n\t});\n});\n\nqck_describe(@\"-keyPathByDeletingFirstKeyPathComponent\", ^{\n\tqck_it(@\"should return the remaining key path\", ^{\n\t\texpect(@\"first.second.third\".rac_keyPathByDeletingFirstKeyPathComponent).to(equal(@\"second.third\"));\n\t});\n\t\n\tqck_it(@\"should return nil if given an empty string\", ^{\n\t\texpect(@\"\".rac_keyPathByDeletingFirstKeyPathComponent).to(beNil());\n\t});\n\t\n\tqck_it(@\"should return nil if given a key path with only one component\", ^{\n\t\texpect(@\"self\".rac_keyPathByDeletingFirstKeyPathComponent).to(beNil());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSURLConnectionRACSupportSpec.m",
    "content": "//\n//  NSURLConnectionRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-10-01.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSURLConnection+RACSupport.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACTuple.h\"\n\nQuickSpecBegin(NSURLConnectionRACSupportSpec)\n\nqck_it(@\"should fetch a JSON file\", ^{\n\tNSURL *fileURL = [[NSBundle bundleForClass:self.class] URLForResource:@\"test-data\" withExtension:@\"json\"];\n\texpect(fileURL).notTo(beNil());\n\n\tNSURLRequest *request = [NSURLRequest requestWithURL:fileURL];\n\n\tBOOL success = NO;\n\tNSError *error = nil;\n\tRACTuple *result = [[NSURLConnection rac_sendAsynchronousRequest:request] firstOrDefault:nil success:&success error:&error];\n\texpect(@(success)).to(beTruthy());\n\texpect(error).to(beNil());\n\texpect(result).to(beAKindOf(RACTuple.class));\n\n\tNSURLResponse *response = result.first;\n\texpect(response).to(beAKindOf(NSURLResponse.class));\n\n\tNSData *data = result.second;\n\texpect(data).to(beAKindOf(NSData.class));\n\texpect(data).to(equal([NSData dataWithContentsOfURL:fileURL]));\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/NSUserDefaultsRACSupportSpec.m",
    "content": "//\n//  NSUserDefaultsRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Matt Diephouse on 12/19/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSUserDefaults+RACSupport.h\"\n\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOChannel.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACSignal+Operations.h\"\n\nstatic NSString * const NSUserDefaultsRACSupportSpecStringDefault = @\"NSUserDefaultsRACSupportSpecStringDefault\";\nstatic NSString * const NSUserDefaultsRACSupportSpecBoolDefault = @\"NSUserDefaultsRACSupportSpecBoolDefault\";\n\n@interface TestObserver : NSObject\n\n@property (copy, atomic) NSString *string1;\n@property (copy, atomic) NSString *string2;\n\n@property (assign, atomic) BOOL bool1;\n\n@end\n\n@implementation TestObserver\n\n@end\n\nQuickSpecBegin(NSUserDefaultsRACSupportSpec)\n\n__block NSUserDefaults *defaults = nil;\n__block TestObserver *observer = nil;\n\nqck_beforeEach(^{\n\tdefaults = NSUserDefaults.standardUserDefaults;\n\n\tobserver = [TestObserver new];\n});\n\nqck_afterEach(^{\n\t[defaults removeObjectForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t[defaults removeObjectForKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\n\tobserver = nil;\n});\n\nqck_it(@\"should set defaults\", ^{\n\tRACChannelTo(observer, string1) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\tRACChannelTo(observer, bool1, @NO) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\t\n\tobserver.string1 = @\"A string\";\n\tobserver.bool1 = YES;\n\t\n\texpect([defaults objectForKey:NSUserDefaultsRACSupportSpecStringDefault]).toEventually(equal(@\"A string\"));\n\texpect([defaults objectForKey:NSUserDefaultsRACSupportSpecBoolDefault]).toEventually(equal(@YES));\n});\n\nqck_it(@\"should read defaults\", ^{\n\tRACChannelTo(observer, string1) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\tRACChannelTo(observer, bool1, @NO) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\t\n\texpect(observer.string1).to(beNil());\n\texpect(@(observer.bool1)).to(equal(@NO));\n\t\n\t[defaults setObject:@\"Another string\" forKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t[defaults setBool:YES forKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\t\n\texpect(observer.string1).to(equal(@\"Another string\"));\n\texpect(@(observer.bool1)).to(equal(@YES));\n});\n\nqck_it(@\"should be okay to create 2 terminals\", ^{\n\tRACChannelTo(observer, string1) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\tRACChannelTo(observer, string2) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t\n\t[defaults setObject:@\"String 3\" forKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t\n\texpect(observer.string1).to(equal(@\"String 3\"));\n\texpect(observer.string2).to(equal(@\"String 3\"));\n});\n\nqck_it(@\"should handle removed defaults\", ^{\n\tobserver.string1 = @\"Some string\";\n\tobserver.bool1 = YES;\n\t\n\tRACChannelTo(observer, string1) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\tRACChannelTo(observer, bool1, @NO) = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\t\n\t[defaults removeObjectForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t[defaults removeObjectForKey:NSUserDefaultsRACSupportSpecBoolDefault];\n\t\n\texpect(observer.string1).to(beNil());\n\texpect(@(observer.bool1)).to(equal(@NO));\n});\n\nqck_it(@\"shouldn't resend values\", ^{\n\tRACChannelTerminal *terminal = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t\n\tRACChannelTo(observer, string1) = terminal;\n\t\n\tRACSignal *sentValue = [terminal replayLast];\n\tobserver.string1 = @\"Test value\";\n\tid value = [sentValue asynchronousFirstOrDefault:nil success:NULL error:NULL];\n\texpect(value).to(beNil());\n});\n\nqck_it(@\"should complete when the NSUserDefaults deallocates\", ^{\n\t__block RACChannelTerminal *terminal;\n\t__block BOOL deallocated = NO;\n\t\n\t@autoreleasepool {\n\t\tNSUserDefaults *customDefaults __attribute__((objc_precise_lifetime)) = [NSUserDefaults new];\n\t\t[customDefaults.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\tdeallocated = YES;\n\t\t}]];\n\t\t\n\t\tterminal = [customDefaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\t}\n\t\n\texpect(@(deallocated)).to(beTruthy());\n\texpect(@([terminal asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n});\n\nqck_it(@\"should send an initial value\", ^{\n\t[defaults setObject:@\"Initial\" forKey:NSUserDefaultsRACSupportSpecStringDefault];\n\tRACChannelTerminal *terminal = [defaults rac_channelTerminalForKey:NSUserDefaultsRACSupportSpecStringDefault];\n\texpect([terminal asynchronousFirstOrDefault:nil success:NULL error:NULL]).to(equal(@\"Initial\"));\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACBlockTrampolineSpec.m",
    "content": "//\n//  RACBlockTrampolineSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACBlockTrampoline.h\"\n#import \"RACTuple.h\"\n\nQuickSpecBegin(RACBlockTrampolineSpec)\n\nqck_it(@\"should invoke the block with the given arguments\", ^{\n\t__block NSString *stringArg;\n\t__block NSNumber *numberArg;\n\tid (^block)(NSString *, NSNumber *) = ^ id (NSString *string, NSNumber *number) {\n\t\tstringArg = string;\n\t\tnumberArg = number;\n\t\treturn nil;\n\t};\n\n\t[RACBlockTrampoline invokeBlock:block withArguments:RACTuplePack(@\"hi\", @1)];\n\texpect(stringArg).to(equal(@\"hi\"));\n\texpect(numberArg).to(equal(@1));\n});\n\nqck_it(@\"should return the result of the block invocation\", ^{\n\tNSString * (^block)(NSString *) = ^(NSString *string) {\n\t\treturn string.uppercaseString;\n\t};\n\n\tNSString *result = [RACBlockTrampoline invokeBlock:block withArguments:RACTuplePack(@\"hi\")];\n\texpect(result).to(equal(@\"HI\"));\n});\n\nqck_it(@\"should pass RACTupleNils as nil\", ^{\n\t__block id arg;\n\tid (^block)(id) = ^ id (id obj) {\n\t\targ = obj;\n\t\treturn nil;\n\t};\n\n\t[RACBlockTrampoline invokeBlock:block withArguments:RACTuplePack(nil)];\n\texpect(arg).to(beNil());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACChannelExamples.h",
    "content": "//\n//  RACChannelExamples.h\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 30/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for RACChannel and its subclasses.\nextern NSString * const RACChannelExamples;\n\n// A block of type `RACChannel * (^)(void)`, which should return a new\n// RACChannel.\nextern NSString * const RACChannelExampleCreateBlock;\n\n// The name of the shared examples for any RACChannel class that gets and sets\n// a property.\nextern NSString * const RACViewChannelExamples;\n\n// A block of type `NSObject * (^)(void)`, which should create a new test view\n// and return it.\nextern NSString * const RACViewChannelExampleCreateViewBlock;\n\n// A block of type `RACChannelTerminal * (^)(NSObject *view)`, which should\n// create a new RACChannel to the given test view and return an terminal.\nextern NSString * const RACViewChannelExampleCreateTerminalBlock;\n\n// The key path that will be read/written in RACViewChannelExamples. This\n// must lead to an NSNumber or numeric primitive property.\nextern NSString * const RACViewChannelExampleKeyPath;\n\n// A block of type `void (^)(NSObject *view, NSNumber *value)`, which should\n// change the given test view's value to the given one.\nextern NSString * const RACViewChannelExampleSetViewValueBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACChannelExamples.m",
    "content": "//\n//  RACChannelExamples.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 30/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACChannelExamples.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACChannel.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n\nNSString * const RACChannelExamples = @\"RACChannelExamples\";\nNSString * const RACChannelExampleCreateBlock = @\"RACChannelExampleCreateBlock\";\n\nNSString * const RACViewChannelExamples = @\"RACViewChannelExamples\";\nNSString * const RACViewChannelExampleCreateViewBlock = @\"RACViewChannelExampleCreateViewBlock\";\nNSString * const RACViewChannelExampleCreateTerminalBlock = @\"RACViewChannelExampleCreateTerminalBlock\";\nNSString * const RACViewChannelExampleKeyPath = @\"RACViewChannelExampleKeyPath\";\nNSString * const RACViewChannelExampleSetViewValueBlock = @\"RACViewChannelExampleSetViewValueBlock\";\n\nQuickConfigurationBegin(RACChannelExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACChannelExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block RACChannel * (^getChannel)(void);\n\t\t__block RACChannel *channel;\n\n\t\tid value1 = @\"test value 1\";\n\t\tid value2 = @\"test value 2\";\n\t\tid value3 = @\"test value 3\";\n\t\tNSArray *values = @[ value1, value2, value3 ];\n\n\t\tqck_beforeEach(^{\n\t\t\tgetChannel = exampleContext()[RACChannelExampleCreateBlock];\n\t\t\tchannel = getChannel();\n\t\t});\n\n\t\tqck_it(@\"should not send any leadingTerminal value on subscription\", ^{\n\t\t\t__block id receivedValue = nil;\n\n\t\t\t[channel.followingTerminal sendNext:value1];\n\t\t\t[channel.leadingTerminal subscribeNext:^(id x) {\n\t\t\t\treceivedValue = x;\n\t\t\t}];\n\n\t\t\texpect(receivedValue).to(beNil());\n\n\t\t\t[channel.followingTerminal sendNext:value2];\n\t\t\texpect(receivedValue).to(equal(value2));\n\t\t});\n\n\t\tqck_it(@\"should send the latest followingTerminal value on subscription\", ^{\n\t\t\t__block id receivedValue = nil;\n\n\t\t\t[channel.leadingTerminal sendNext:value1];\n\t\t\t[[channel.followingTerminal take:1] subscribeNext:^(id x) {\n\t\t\t\treceivedValue = x;\n\t\t\t}];\n\n\t\t\texpect(receivedValue).to(equal(value1));\n\n\t\t\t[channel.leadingTerminal sendNext:value2];\n\t\t\t[[channel.followingTerminal take:1] subscribeNext:^(id x) {\n\t\t\t\treceivedValue = x;\n\t\t\t}];\n\n\t\t\texpect(receivedValue).to(equal(value2));\n\t\t});\n\n\t\tqck_it(@\"should send leadingTerminal values as they change\", ^{\n\t\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\t\t[channel.leadingTerminal subscribeNext:^(id x) {\n\t\t\t\t[receivedValues addObject:x];\n\t\t\t}];\n\n\t\t\t[channel.followingTerminal sendNext:value1];\n\t\t\t[channel.followingTerminal sendNext:value2];\n\t\t\t[channel.followingTerminal sendNext:value3];\n\t\t\texpect(receivedValues).to(equal(values));\n\t\t});\n\n\t\tqck_it(@\"should send followingTerminal values as they change\", ^{\n\t\t\t[channel.leadingTerminal sendNext:value1];\n\n\t\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\t\t[channel.followingTerminal subscribeNext:^(id x) {\n\t\t\t\t[receivedValues addObject:x];\n\t\t\t}];\n\n\t\t\t[channel.leadingTerminal sendNext:value2];\n\t\t\t[channel.leadingTerminal sendNext:value3];\n\t\t\texpect(receivedValues).to(equal(values));\n\t\t});\n\n\t\tqck_it(@\"should complete both signals when the leadingTerminal is completed\", ^{\n\t\t\t__block BOOL completedLeft = NO;\n\t\t\t[channel.leadingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedLeft = YES;\n\t\t\t}];\n\n\t\t\t__block BOOL completedRight = NO;\n\t\t\t[channel.followingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedRight = YES;\n\t\t\t}];\n\n\t\t\t[channel.leadingTerminal sendCompleted];\n\t\t\texpect(@(completedLeft)).to(beTruthy());\n\t\t\texpect(@(completedRight)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should complete both signals when the followingTerminal is completed\", ^{\n\t\t\t__block BOOL completedLeft = NO;\n\t\t\t[channel.leadingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedLeft = YES;\n\t\t\t}];\n\n\t\t\t__block BOOL completedRight = NO;\n\t\t\t[channel.followingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedRight = YES;\n\t\t\t}];\n\n\t\t\t[channel.followingTerminal sendCompleted];\n\t\t\texpect(@(completedLeft)).to(beTruthy());\n\t\t\texpect(@(completedRight)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should replay completion to new subscribers\", ^{\n\t\t\t[channel.leadingTerminal sendCompleted];\n\n\t\t\t__block BOOL completedLeft = NO;\n\t\t\t[channel.leadingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedLeft = YES;\n\t\t\t}];\n\n\t\t\t__block BOOL completedRight = NO;\n\t\t\t[channel.followingTerminal subscribeCompleted:^{\n\t\t\t\tcompletedRight = YES;\n\t\t\t}];\n\n\t\t\texpect(@(completedLeft)).to(beTruthy());\n\t\t\texpect(@(completedRight)).to(beTruthy());\n\t\t});\n\t});\n\n\tsharedExamples(RACViewChannelExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block NSString *keyPath;\n\t\t__block NSObject * (^getView)(void);\n\t\t__block RACChannelTerminal * (^getTerminal)(NSObject *);\n\t\t__block void (^setViewValue)(NSObject *view, NSNumber *value);\n\n\t\t__block NSObject *testView;\n\t\t__block RACChannelTerminal *endpoint;\n\n\t\tqck_beforeEach(^{\n\t\t\tkeyPath = exampleContext()[RACViewChannelExampleKeyPath];\n\t\t\tgetTerminal = exampleContext()[RACViewChannelExampleCreateTerminalBlock];\n\t\t\tgetView = exampleContext()[RACViewChannelExampleCreateViewBlock];\n\t\t\tsetViewValue = exampleContext()[RACViewChannelExampleSetViewValueBlock];\n\n\t\t\ttestView = getView();\n\t\t\tendpoint = getTerminal(testView);\n\t\t});\n\n\t\tqck_it(@\"should not send changes made by the channel itself\", ^{\n\t\t\t__block BOOL receivedNext = NO;\n\t\t\t[endpoint subscribeNext:^(id x) {\n\t\t\t\treceivedNext = YES;\n\t\t\t}];\n\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\n\t\t\t[endpoint sendNext:@0.1];\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\n\t\t\t[endpoint sendNext:@0.2];\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\n\t\t\t[endpoint sendCompleted];\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should not send progammatic changes made to the view\", ^{\n\t\t\t__block BOOL receivedNext = NO;\n\t\t\t[endpoint subscribeNext:^(id x) {\n\t\t\t\treceivedNext = YES;\n\t\t\t}];\n\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\n\t\t\t[testView setValue:@0.1 forKeyPath:keyPath];\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\n\t\t\t[testView setValue:@0.2 forKeyPath:keyPath];\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should not have a starting value\", ^{\n\t\t\t__block BOOL receivedNext = NO;\n\t\t\t[endpoint subscribeNext:^(id x) {\n\t\t\t\treceivedNext = YES;\n\t\t\t}];\n\n\t\t\texpect(@(receivedNext)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should send view changes\", ^{\n\t\t\t__block NSString *received;\n\t\t\t[endpoint subscribeNext:^(id x) {\n\t\t\t\treceived = x;\n\t\t\t}];\n\n\t\t\tsetViewValue(testView, @0.1);\n\t\t\texpect(received).to(equal(@0.1));\n\n\t\t\tsetViewValue(testView, @0.2);\n\t\t\texpect(received).to(equal(@0.2));\n\t\t});\n\n\t\tqck_it(@\"should set values on the view\", ^{\n\t\t\t[endpoint sendNext:@0.1];\n\t\t\texpect([testView valueForKeyPath:keyPath]).to(equal(@0.1));\n\n\t\t\t[endpoint sendNext:@0.2];\n\t\t\texpect([testView valueForKeyPath:keyPath]).to(equal(@0.2));\n\t\t});\n\n\t\tqck_it(@\"should not echo changes back to the channel\", ^{\n\t\t\t__block NSUInteger receivedCount = 0;\n\t\t\t[endpoint subscribeNext:^(id _) {\n\t\t\t\treceivedCount++;\n\t\t\t}];\n\n\t\t\texpect(@(receivedCount)).to(equal(@0));\n\n\t\t\t[endpoint sendNext:@0.1];\n\t\t\texpect(@(receivedCount)).to(equal(@0));\n\n\t\t\tsetViewValue(testView, @0.2);\n\t\t\texpect(@(receivedCount)).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should complete when the view deallocates\", ^{\n\t\t\t__block BOOL deallocated = NO;\n\t\t\t__block BOOL completed = NO;\n\n\t\t\t@autoreleasepool {\n\t\t\t\tNSObject *view __attribute__((objc_precise_lifetime)) = getView();\n\t\t\t\t[view.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdeallocated = YES;\n\t\t\t\t}]];\n\n\t\t\t\tRACChannelTerminal *terminal = getTerminal(view);\n\t\t\t\t[terminal subscribeCompleted:^{\n\t\t\t\t\tcompleted = YES;\n\t\t\t\t}];\n\n\t\t\t\texpect(@(deallocated)).to(beFalsy());\n\t\t\t\texpect(@(completed)).to(beFalsy());\n\t\t\t}\n\n\t\t\texpect(@(deallocated)).to(beTruthy());\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should deallocate after the view deallocates\", ^{\n\t\t\t__block BOOL viewDeallocated = NO;\n\t\t\t__block BOOL terminalDeallocated = NO;\n\n\t\t\t@autoreleasepool {\n\t\t\t\tNSObject *view __attribute__((objc_precise_lifetime)) = getView();\n\t\t\t\t[view.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tviewDeallocated = YES;\n\t\t\t\t}]];\n\n\t\t\t\tRACChannelTerminal *terminal = getTerminal(view);\n\t\t\t\t[terminal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tterminalDeallocated = YES;\n\t\t\t\t}]];\n\n\t\t\t\texpect(@(viewDeallocated)).to(beFalsy());\n\t\t\t\texpect(@(terminalDeallocated)).to(beFalsy());\n\t\t\t}\n\n\t\t\texpect(@(viewDeallocated)).to(beTruthy());\n\t\t\texpect(@(terminalDeallocated)).toEventually(beTruthy());\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACChannelSpec.m",
    "content": "//\n//  RACChannelSpec.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 30/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACChannelExamples.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACChannel.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal.h\"\n\nQuickSpecBegin(RACChannelSpec)\n\nqck_describe(@\"RACChannel\", ^{\n\tqck_itBehavesLike(RACChannelExamples, ^{\n\t\treturn @{\n\t\t\tRACChannelExampleCreateBlock: [^{\n\t\t\t\treturn [[RACChannel alloc] init];\n\t\t\t} copy]\n\t\t};\n\t});\n\t\n\tqck_describe(@\"memory management\", ^{\n\t\tqck_it(@\"should dealloc when its subscribers are disposed\", ^{\n\t\t\tRACDisposable *leadingDisposable = nil;\n\t\t\tRACDisposable *followingDisposable = nil;\n\n\t\t\t__block BOOL deallocated = NO;\n\n\t\t\t@autoreleasepool {\n\t\t\t\tRACChannel *channel __attribute__((objc_precise_lifetime)) = [[RACChannel alloc] init];\n\t\t\t\t[channel.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdeallocated = YES;\n\t\t\t\t}]];\n\n\t\t\t\tleadingDisposable = [channel.leadingTerminal subscribeCompleted:^{}];\n\t\t\t\tfollowingDisposable = [channel.followingTerminal subscribeCompleted:^{}];\n\t\t\t}\n\n\t\t\t[leadingDisposable dispose];\n\t\t\t[followingDisposable dispose];\n\t\t\texpect(@(deallocated)).toEventually(beTruthy());\n\t\t});\n\t\t\n\t\tqck_it(@\"should dealloc when its subscriptions are disposed\", ^{\n\t\t\tRACDisposable *leadingDisposable = nil;\n\t\t\tRACDisposable *followingDisposable = nil;\n\n\t\t\t__block BOOL deallocated = NO;\n\n\t\t\t@autoreleasepool {\n\t\t\t\tRACChannel *channel __attribute__((objc_precise_lifetime)) = [[RACChannel alloc] init];\n\t\t\t\t[channel.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdeallocated = YES;\n\t\t\t\t}]];\n\n\t\t\t\tleadingDisposable = [[RACSignal never] subscribe:channel.leadingTerminal];\n\t\t\t\tfollowingDisposable = [[RACSignal never] subscribe:channel.followingTerminal];\n\t\t\t}\n\n\t\t\t[leadingDisposable dispose];\n\t\t\t[followingDisposable dispose];\n\t\t\texpect(@(deallocated)).toEventually(beTruthy());\n\t\t});\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACCommandSpec.m",
    "content": "//\n//  RACCommandSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 8/31/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACCommand.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACEvent.h\"\n#import \"RACScheduler.h\"\n#import \"RACSequence.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSubject.h\"\n#import \"RACUnit.h\"\n\nQuickSpecBegin(RACCommandSpec)\n\nRACSignal * (^emptySignalBlock)(id) = ^(id _) {\n\treturn [RACSignal empty];\n};\n\nqck_describe(@\"with a simple signal block\", ^{\n\t__block RACCommand *command;\n\n\tqck_beforeEach(^{\n\t\tcommand = [[RACCommand alloc] initWithSignalBlock:^(id value) {\n\t\t\treturn [RACSignal return:value];\n\t\t}];\n\n\t\texpect(command).notTo(beNil());\n\t\texpect(@(command.allowsConcurrentExecution)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should be enabled by default\", ^{\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t});\n\n\tqck_it(@\"should not be executing by default\", ^{\n\t\texpect([command.executing first]).to(equal(@NO));\n\t});\n\n\tqck_it(@\"should create an execution signal\", ^{\n\t\t__block NSUInteger signalsReceived = 0;\n\t\t__block BOOL completed = NO;\n\n\t\tid value = NSNull.null;\n\t\t[command.executionSignals subscribeNext:^(RACSignal *signal) {\n\t\t\tsignalsReceived++;\n\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\texpect(x).to(equal(value));\n\t\t\t} completed:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}];\n\n\t\texpect(@(signalsReceived)).to(equal(@0));\n\t\t\n\t\t[command execute:value];\n\t\texpect(@(signalsReceived)).toEventually(equal(@1));\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should return the execution signal from -execute:\", ^{\n\t\t__block BOOL completed = NO;\n\n\t\tid value = NSNull.null;\n\t\t[[command\n\t\t\texecute:value]\n\t\t\tsubscribeNext:^(id x) {\n\t\t\t\texpect(x).to(equal(value));\n\t\t\t} completed:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\texpect(@(completed)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should always send executionSignals on the main thread\", ^{\n\t\t__block RACScheduler *receivedScheduler = nil;\n\t\t[command.executionSignals subscribeNext:^(id _) {\n\t\t\treceivedScheduler = RACScheduler.currentScheduler;\n\t\t}];\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\texpect(@([[command execute:nil] waitUntilCompleted:NULL])).to(beTruthy());\n\t\t}];\n\n\t\texpect(receivedScheduler).to(beNil());\n\t\texpect(receivedScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t});\n\n\tqck_it(@\"should not send anything on 'errors' by default\", ^{\n\t\t__block BOOL receivedError = NO;\n\t\t[command.errors subscribeNext:^(id _) {\n\t\t\treceivedError = YES;\n\t\t}];\n\t\t\n\t\texpect(@([[command execute:nil] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\t\texpect(@(receivedError)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should be executing while an execution signal is running\", ^{\n\t\t[command.executionSignals subscribeNext:^(RACSignal *signal) {\n\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\texpect([command.executing first]).to(equal(@YES));\n\t\t\t}];\n\t\t}];\n\n\t\texpect(@([[command execute:nil] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\t\texpect([command.executing first]).to(equal(@NO));\n\t});\n\n\tqck_it(@\"should always update executing on the main thread\", ^{\n\t\t__block RACScheduler *updatedScheduler = nil;\n\t\t[[command.executing skip:1] subscribeNext:^(NSNumber *executing) {\n\t\t\tif (!executing.boolValue) return;\n\n\t\t\tupdatedScheduler = RACScheduler.currentScheduler;\n\t\t}];\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\texpect(@([[command execute:nil] waitUntilCompleted:NULL])).to(beTruthy());\n\t\t}];\n\n\t\texpect([command.executing first]).to(equal(@NO));\n\t\texpect(updatedScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t});\n\n\tqck_it(@\"should dealloc without subscribers\", ^{\n\t\t__block BOOL disposed = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACCommand *command __attribute__((objc_precise_lifetime)) = [[RACCommand alloc] initWithSignalBlock:emptySignalBlock];\n\t\t\t[command.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}]];\n\t\t}\n\n\t\texpect(@(disposed)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should complete signals on the main thread when deallocated\", ^{\n\t\t__block RACScheduler *executionSignalsScheduler = nil;\n\t\t__block RACScheduler *executingScheduler = nil;\n\t\t__block RACScheduler *enabledScheduler = nil;\n\t\t__block RACScheduler *errorsScheduler = nil;\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t@autoreleasepool {\n\t\t\t\tRACCommand *command __attribute__((objc_precise_lifetime)) = [[RACCommand alloc] initWithSignalBlock:emptySignalBlock];\n\n\t\t\t\t[command.executionSignals subscribeCompleted:^{\n\t\t\t\t\texecutionSignalsScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\n\t\t\t\t[command.executing subscribeCompleted:^{\n\t\t\t\t\texecutingScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\n\t\t\t\t[command.enabled subscribeCompleted:^{\n\t\t\t\t\tenabledScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\n\t\t\t\t[command.errors subscribeCompleted:^{\n\t\t\t\t\terrorsScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\t\t\t}\n\t\t}];\n\n\t\texpect(executionSignalsScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t\texpect(executingScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t\texpect(enabledScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t\texpect(errorsScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t});\n});\n\nqck_it(@\"should invoke the signalBlock once per execution\", ^{\n\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\tRACCommand *command = [[RACCommand alloc] initWithSignalBlock:^(id x) {\n\t\t[valuesReceived addObject:x];\n\t\treturn [RACSignal empty];\n\t}];\n\n\texpect(@([[command execute:@\"foo\"] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\texpect(valuesReceived).to(equal((@[ @\"foo\" ])));\n\n\texpect(@([[command execute:@\"bar\"] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\texpect(valuesReceived).to(equal((@[ @\"foo\", @\"bar\" ])));\n});\n\nqck_it(@\"should send on executionSignals in order of execution\", ^{\n\tRACCommand<RACSequence *> *command = [[RACCommand alloc] initWithSignalBlock:^(RACSequence *seq) {\n\t\treturn [seq signalWithScheduler:RACScheduler.immediateScheduler];\n\t}];\n\n\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\t[[command.executionSignals\n\t\tconcat]\n\t\tsubscribeNext:^(id x) {\n\t\t\t[valuesReceived addObject:x];\n\t\t}];\n\n\tRACSequence *first = @[ @\"foo\", @\"bar\" ].rac_sequence;\n\texpect(@([[command execute:first] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\n\tRACSequence *second = @[ @\"buzz\", @\"baz\" ].rac_sequence;\n\texpect(@([[command execute:second] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\n\tNSArray *expectedValues = @[ @\"foo\", @\"bar\", @\"buzz\", @\"baz\" ];\n\texpect(valuesReceived).to(equal(expectedValues));\n});\n\nqck_it(@\"should wait for all signals to complete or error before executing sends NO\", ^{\n\tRACCommand<RACSignal *> *command = [[RACCommand alloc] initWithSignalBlock:^(RACSignal *signal) {\n\t\treturn signal;\n\t}];\n\n\tcommand.allowsConcurrentExecution = YES;\n\t\n\tRACSubject *firstSubject = [RACSubject subject];\n\texpect([command execute:firstSubject]).notTo(beNil());\n\n\tRACSubject *secondSubject = [RACSubject subject];\n\texpect([command execute:secondSubject]).notTo(beNil());\n\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\t[firstSubject sendError:nil];\n\texpect([command.executing first]).to(equal(@YES));\n\n\t[secondSubject sendNext:nil];\n\texpect([command.executing first]).to(equal(@YES));\n\n\t[secondSubject sendCompleted];\n\texpect([command.executing first]).toEventually(equal(@NO));\n});\n\nqck_it(@\"should have allowsConcurrentExecution be observable\", ^{\n\tRACCommand *command = [[RACCommand alloc] initWithSignalBlock:^(RACSignal *signal) {\n\t\treturn signal;\n\t}];\n\t\n\tRACSubject *completion = [RACSubject subject];\n\tRACSignal *allowsConcurrentExecution = [[RACObserve(command, allowsConcurrentExecution)\n\t\ttakeUntil:completion]\n\t\treplayLast];\n\t\n\tcommand.allowsConcurrentExecution = YES;\n\t\n\texpect([allowsConcurrentExecution first]).to(beTrue());\n\t[completion sendCompleted];\n});\n\nqck_it(@\"should not deliver errors from executionSignals\", ^{\n\tRACSubject *subject = [RACSubject subject];\n\tNSMutableArray *receivedEvents = [NSMutableArray array];\n\n\tRACCommand *command = [[RACCommand alloc] initWithSignalBlock:^(id _) {\n\t\treturn subject;\n\t}];\n\n\t[[[command.executionSignals\n\t\tflatten]\n\t\tmaterialize]\n\t\tsubscribeNext:^(RACEvent *event) {\n\t\t\t[receivedEvents addObject:event];\n\t\t}];\n\n\texpect([command execute:nil]).notTo(beNil());\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\t[subject sendNext:RACUnit.defaultUnit];\n\n\tNSArray *expectedEvents = @[ [RACEvent eventWithValue:RACUnit.defaultUnit] ];\n\texpect(receivedEvents).toEventually(equal(expectedEvents));\n\texpect([command.executing first]).to(equal(@YES));\n\n\t[subject sendNext:@\"foo\"];\n\n\texpectedEvents = @[ [RACEvent eventWithValue:RACUnit.defaultUnit], [RACEvent eventWithValue:@\"foo\"] ];\n\texpect(receivedEvents).toEventually(equal(expectedEvents));\n\texpect([command.executing first]).to(equal(@YES));\n\n\tNSError *error = [NSError errorWithDomain:@\"\" code:1 userInfo:nil];\n\t[subject sendError:error];\n\n\texpect([command.executing first]).toEventually(equal(@NO));\n\texpect(receivedEvents).to(equal(expectedEvents));\n});\n\nqck_it(@\"should deliver errors from -execute:\", ^{\n\tRACSubject *subject = [RACSubject subject];\n\tNSMutableArray *receivedEvents = [NSMutableArray array];\n\n\tRACCommand *command = [[RACCommand alloc] initWithSignalBlock:^(id _) {\n\t\treturn subject;\n\t}];\n\n\t[[[command\n\t\texecute:nil]\n\t\tmaterialize]\n\t\tsubscribeNext:^(RACEvent *event) {\n\t\t\t[receivedEvents addObject:event];\n\t\t}];\n\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\t[subject sendNext:RACUnit.defaultUnit];\n\n\tNSArray *expectedEvents = @[ [RACEvent eventWithValue:RACUnit.defaultUnit] ];\n\texpect(receivedEvents).toEventually(equal(expectedEvents));\n\texpect([command.executing first]).to(equal(@YES));\n\n\t[subject sendNext:@\"foo\"];\n\n\texpectedEvents = @[ [RACEvent eventWithValue:RACUnit.defaultUnit], [RACEvent eventWithValue:@\"foo\"] ];\n\texpect(receivedEvents).toEventually(equal(expectedEvents));\n\texpect([command.executing first]).to(equal(@YES));\n\n\tNSError *error = [NSError errorWithDomain:@\"\" code:1 userInfo:nil];\n\t[subject sendError:error];\n\n\texpectedEvents = @[ [RACEvent eventWithValue:RACUnit.defaultUnit], [RACEvent eventWithValue:@\"foo\"], [RACEvent eventWithError:error] ];\n\texpect(receivedEvents).toEventually(equal(expectedEvents));\n\texpect([command.executing first]).toEventually(equal(@NO));\n});\n\nqck_it(@\"should deliver errors onto 'errors'\", ^{\n\tRACCommand<RACSignal *> *command = [[RACCommand alloc] initWithSignalBlock:^(RACSignal *signal) {\n\t\treturn signal;\n\t}];\n\n\tcommand.allowsConcurrentExecution = YES;\n\t\n\tRACSubject *firstSubject = [RACSubject subject];\n\texpect([command execute:firstSubject]).notTo(beNil());\n\n\tRACSubject *secondSubject = [RACSubject subject];\n\texpect([command execute:secondSubject]).notTo(beNil());\n\n\tNSError *firstError = [NSError errorWithDomain:@\"\" code:1 userInfo:nil];\n\tNSError *secondError = [NSError errorWithDomain:@\"\" code:2 userInfo:nil];\n\t\n\t// We should receive errors from our previously-started executions.\n\tNSMutableArray *receivedErrors = [NSMutableArray array];\n\t[command.errors subscribeNext:^(NSError *error) {\n\t\t[receivedErrors addObject:error];\n\t}];\n\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\t[firstSubject sendError:firstError];\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\tNSArray *expected = @[ firstError ];\n\texpect(receivedErrors).toEventually(equal(expected));\n\n\t[secondSubject sendError:secondError];\n\texpect([command.executing first]).toEventually(equal(@NO));\n\n\texpected = @[ firstError, secondError ];\n\texpect(receivedErrors).toEventually(equal(expected));\n});\n\nqck_it(@\"should not deliver non-error events onto 'errors'\", ^{\n\tRACSubject *subject = [RACSubject subject];\n\tRACCommand *command = [[RACCommand alloc] initWithSignalBlock:^(id _) {\n\t\treturn subject;\n\t}];\n\n\t__block BOOL receivedEvent = NO;\n\t[command.errors subscribeNext:^(id _) {\n\t\treceivedEvent = YES;\n\t}];\n\n\texpect([command execute:nil]).notTo(beNil());\n\texpect([command.executing first]).toEventually(equal(@YES));\n\n\t[subject sendNext:RACUnit.defaultUnit];\n\t[subject sendCompleted];\n\n\texpect([command.executing first]).toEventually(equal(@NO));\n\texpect(@(receivedEvent)).to(beFalsy());\n});\n\nqck_it(@\"should send errors on the main thread\", ^{\n\tRACCommand<RACSignal *> *command = [[RACCommand alloc] initWithSignalBlock:^(RACSignal *signal) {\n\t\treturn signal;\n\t}];\n\n\tNSError *error = [NSError errorWithDomain:@\"\" code:1 userInfo:nil];\n\n\t__block RACScheduler *receivedScheduler = nil;\n\t[command.errors subscribeNext:^(NSError *e) {\n\t\texpect(e).to(equal(error));\n\t\treceivedScheduler = RACScheduler.currentScheduler;\n\t}];\n\n\tRACSignal *errorSignal = [RACSignal error:error];\n\n\t[[RACScheduler scheduler] schedule:^{\n\t\t[command execute:errorSignal];\n\t}];\n\n\texpect(receivedScheduler).to(beNil());\n\texpect(receivedScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n});\n\nqck_describe(@\"enabled signal\", ^{\n\t__block RACSubject *enabledSubject;\n\t__block RACCommand *command;\n\n\tqck_beforeEach(^{\n\t\tenabledSubject = [RACSubject subject];\n\t\tcommand = [[RACCommand alloc] initWithEnabled:enabledSubject signalBlock:^(id _) {\n\t\t\treturn [RACSignal return:RACUnit.defaultUnit];\n\t\t}];\n\t});\n\n\tqck_it(@\"should send YES by default\", ^{\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t});\n\n\tqck_it(@\"should send whatever the enabledSignal has sent most recently\", ^{\n\t\t[enabledSubject sendNext:@NO];\n\t\texpect([command.enabled first]).toEventually(equal(@NO));\n\n\t\t[enabledSubject sendNext:@YES];\n\t\texpect([command.enabled first]).toEventually(equal(@YES));\n\n\t\t[enabledSubject sendNext:@NO];\n\t\texpect([command.enabled first]).toEventually(equal(@NO));\n\t});\n\t\n\tqck_it(@\"should sample enabledSignal synchronously at initialization time\", ^{\n\t\tRACCommand *command = [[RACCommand alloc] initWithEnabled:[RACSignal return:@NO] signalBlock:^(id _) {\n\t\t\treturn [RACSignal empty];\n\t\t}];\n\t\texpect([command.enabled first]).to(equal(@NO));\n\t});\n\n\tqck_it(@\"should send NO while executing is YES and allowsConcurrentExecution is NO\", ^{\n\t\t[[command.executionSignals flatten] subscribeNext:^(id _) {\n\t\t\texpect([command.executing first]).to(equal(@YES));\n\t\t\texpect([command.enabled first]).to(equal(@NO));\n\t\t}];\n\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t\texpect(@([[command execute:nil] asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t});\n\n\tqck_it(@\"should send YES while executing is YES and allowsConcurrentExecution is YES\", ^{\n\t\tcommand.allowsConcurrentExecution = YES;\n\n\t\t__block BOOL outerExecuted = NO;\n\t\t__block BOOL innerExecuted = NO;\n\n\t\t// Prevent infinite recursion by only responding to the first value.\n\t\t[[[command.executionSignals\n\t\t\ttake:1]\n\t\t\tflatten]\n\t\t\tsubscribeNext:^(id _) {\n\t\t\t\touterExecuted = YES;\n\n\t\t\t\texpect([command.executing first]).to(equal(@YES));\n\t\t\t\texpect([command.enabled first]).to(equal(@YES));\n\n\t\t\t\t[[command execute:nil] subscribeCompleted:^{\n\t\t\t\t\tinnerExecuted = YES;\n\t\t\t\t}];\n\t\t\t}];\n\n\t\texpect([command.enabled first]).to(equal(@YES));\n\n\t\texpect([command execute:nil]).notTo(beNil());\n\t\texpect(@(outerExecuted)).toEventually(beTruthy());\n\t\texpect(@(innerExecuted)).toEventually(beTruthy());\n\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t});\n\n\tqck_it(@\"should send an error from -execute: when NO\", ^{\n\t\t[enabledSubject sendNext:@NO];\n\n\t\tRACSignal *signal = [command execute:nil];\n\t\texpect(signal).notTo(beNil());\n\t\t\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\texpect([signal firstOrDefault:nil success:&success error:&error]).to(beNil());\n\t\texpect(@(success)).to(beFalsy());\n\n\t\texpect(error).notTo(beNil());\n\t\texpect(error.domain).to(equal(RACCommandErrorDomain));\n\t\texpect(@(error.code)).to(equal(@(RACCommandErrorNotEnabled)));\n\t\texpect(error.userInfo[RACUnderlyingCommandErrorKey]).to(beIdenticalTo(command));\n\t});\n\n\tqck_it(@\"should always update on the main thread\", ^{\n\t\t__block RACScheduler *updatedScheduler = nil;\n\t\t[[command.enabled skip:1] subscribeNext:^(id _) {\n\t\t\tupdatedScheduler = RACScheduler.currentScheduler;\n\t\t}];\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t[enabledSubject sendNext:@NO];\n\t\t}];\n\n\t\texpect([command.enabled first]).to(equal(@YES));\n\t\texpect([command.enabled first]).toEventually(equal(@NO));\n\t\texpect(updatedScheduler).to(equal(RACScheduler.mainThreadScheduler));\n\t});\n\n\tqck_it(@\"should complete when the command is deallocated even if the input signal hasn't\", ^{\n\t\t__block BOOL deallocated = NO;\n\t\t__block BOOL completed = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACCommand *command __attribute__((objc_precise_lifetime)) = [[RACCommand alloc] initWithEnabled:enabledSubject signalBlock:emptySignalBlock];\n\t\t\t[command.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocated = YES;\n\t\t\t}]];\n\n\t\t\t[command.enabled subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(deallocated)).toEventually(beTruthy());\n\t\texpect(@(completed)).toEventually(beTruthy());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACCompoundDisposableSpec.m",
    "content": "//\n//  RACCompoundDisposableSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/30/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACCompoundDisposable.h\"\n\nQuickSpecBegin(RACCompoundDisposableSpec)\n\nqck_it(@\"should dispose of all its contained disposables\", ^{\n\t__block BOOL d1Disposed = NO;\n\tRACDisposable *d1 = [RACDisposable disposableWithBlock:^{\n\t\td1Disposed = YES;\n\t}];\n\n\t__block BOOL d2Disposed = NO;\n\tRACDisposable *d2 = [RACDisposable disposableWithBlock:^{\n\t\td2Disposed = YES;\n\t}];\n\n\t__block BOOL d3Disposed = NO;\n\tRACDisposable *d3 = [RACDisposable disposableWithBlock:^{\n\t\td3Disposed = YES;\n\t}];\n\n\t__block BOOL d4Disposed = NO;\n\tRACDisposable *d4 = [RACDisposable disposableWithBlock:^{\n\t\td4Disposed = YES;\n\t}];\n\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposableWithDisposables:@[ d1, d2, d3 ]];\n\t[disposable addDisposable:d4];\n\n\texpect(@(d1Disposed)).to(beFalsy());\n\texpect(@(d2Disposed)).to(beFalsy());\n\texpect(@(d3Disposed)).to(beFalsy());\n\texpect(@(d4Disposed)).to(beFalsy());\n\texpect(@(disposable.disposed)).to(beFalsy());\n\n\t[disposable dispose];\n\n\texpect(@(d1Disposed)).to(beTruthy());\n\texpect(@(d2Disposed)).to(beTruthy());\n\texpect(@(d3Disposed)).to(beTruthy());\n\texpect(@(d4Disposed)).to(beTruthy());\n\texpect(@(disposable.disposed)).to(beTruthy());\n});\n\nqck_it(@\"should dispose of any added disposables immediately if it's already been disposed\", ^{\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable compoundDisposable];\n\t[disposable dispose];\n\n\tRACDisposable *d = [[RACDisposable alloc] init];\n\n\texpect(@(d.disposed)).to(beFalsy());\n\t[disposable addDisposable:d];\n\texpect(@(d.disposed)).to(beTruthy());\n});\n\nqck_it(@\"should work when initialized with -init\", ^{\n\tRACCompoundDisposable *disposable = [[RACCompoundDisposable alloc] init];\n\n\t__block BOOL disposed = NO;\n\tRACDisposable *d = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\t[disposable addDisposable:d];\n\texpect(@(disposed)).to(beFalsy());\n\n\t[disposable dispose];\n\texpect(@(disposed)).to(beTruthy());\n});\n\nqck_it(@\"should work when initialized with +disposableWithBlock:\", ^{\n\t__block BOOL compoundDisposed = NO;\n\tRACCompoundDisposable *disposable = [RACCompoundDisposable disposableWithBlock:^{\n\t\tcompoundDisposed = YES;\n\t}];\n\n\t__block BOOL disposed = NO;\n\tRACDisposable *d = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\t[disposable addDisposable:d];\n\texpect(@(disposed)).to(beFalsy());\n\texpect(@(compoundDisposed)).to(beFalsy());\n\n\t[disposable dispose];\n\texpect(@(disposed)).to(beTruthy());\n\texpect(@(compoundDisposed)).to(beTruthy());\n});\n\nqck_it(@\"should allow disposables to be removed\", ^{\n\tRACCompoundDisposable *disposable = [[RACCompoundDisposable alloc] init];\n\tRACDisposable *d = [[RACDisposable alloc] init];\n\n\t[disposable addDisposable:d];\n\t[disposable removeDisposable:d];\n\n\t[disposable dispose];\n\texpect(@(d.disposed)).to(beFalsy());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACControlCommandExamples.h",
    "content": "//\n//  RACControlCommandExamples.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-08-15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for any control class that has\n// `rac_command` and `isEnabled` properties.\nextern NSString * const RACControlCommandExamples;\n\n// The control to test.\nextern NSString * const RACControlCommandExampleControl;\n\n// A block of type `void (^)(id control)` which should activate the\n// `rac_command` of the `control` by manipulating the control itself.\nextern NSString * const RACControlCommandExampleActivateBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACControlCommandExamples.m",
    "content": "//\n//  RACControlCommandExamples.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-08-15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACControlCommandExamples.h\"\n\n#import \"RACCommand.h\"\n#import \"RACSubject.h\"\n#import \"RACUnit.h\"\n\nNSString * const RACControlCommandExamples = @\"RACControlCommandExamples\";\nNSString * const RACControlCommandExampleControl = @\"RACControlCommandExampleControl\";\nNSString * const RACControlCommandExampleActivateBlock = @\"RACControlCommandExampleActivateBlock\";\n\n// Methods used by the unit test that would otherwise require platform-specific\n// imports.\n@interface NSObject (RACControlCommandExamples)\n\n@property (nonatomic, strong) RACCommand *rac_command;\n\n- (BOOL)isEnabled;\n\n@end\n\nQuickConfigurationBegin(RACControlCommandExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACControlCommandExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block id control;\n\t\t__block void (^activate)(id);\n\n\t\t__block RACSubject *enabledSubject;\n\t\t__block RACCommand *command;\n\n\t\tqck_beforeEach(^{\n\t\t\tcontrol = exampleContext()[RACControlCommandExampleControl];\n\t\t\tactivate = [exampleContext()[RACControlCommandExampleActivateBlock] copy];\n\n\t\t\tenabledSubject = [RACSubject subject];\n\t\t\tcommand = [[RACCommand alloc] initWithEnabled:enabledSubject signalBlock:^(id sender) {\n\t\t\t\treturn [RACSignal return:sender];\n\t\t\t}];\n\n\t\t\t[control setRac_command:command];\n\t\t});\n\n\t\tqck_it(@\"should bind the control's enabledness to the command\", ^{\n\t\t\texpect(@([control isEnabled])).toEventually(beTruthy());\n\n\t\t\t[enabledSubject sendNext:@NO];\n\t\t\texpect(@([control isEnabled])).toEventually(beFalsy());\n\n\t\t\t[enabledSubject sendNext:@YES];\n\t\t\texpect(@([control isEnabled])).toEventually(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should execute the control's command when activated\", ^{\n\t\t\t__block BOOL executed = NO;\n\t\t\t[[command.executionSignals flatten] subscribeNext:^(id sender) {\n\t\t\t\texpect(sender).to(equal(control));\n\t\t\t\texecuted = YES;\n\t\t\t}];\n\n\t\t\tactivate(control);\n\t\t\texpect(@(executed)).toEventually(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should overwrite an existing command when setting a new one\", ^{\n\t\t\tRACCommand *secondCommand = [[RACCommand alloc] initWithSignalBlock:^(id _) {\n\t\t\t\treturn [RACSignal return:RACUnit.defaultUnit];\n\t\t\t}];\n\n\t\t\t[control setRac_command:secondCommand];\n\t\t\texpect([control rac_command]).to(beIdenticalTo(secondCommand));\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACDelegateProxySpec.m",
    "content": "//\n//  RACDelegateProxySpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACDelegateProxy.h\"\n#import \"RACSignal.h\"\n#import \"RACTuple.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"NSObject+RACDeallocating.h\"\n\n@protocol TestDelegateProtocol\n- (NSUInteger)lengthOfString:(NSString *)str;\n@end\n\n@interface TestDelegate : NSObject <TestDelegateProtocol>\n@property (nonatomic, assign) BOOL lengthOfStringInvoked;\n@end\n\nQuickSpecBegin(RACDelegateProxySpec)\n\n__block id proxy;\n__block TestDelegate *delegate;\n__block Protocol *protocol;\n\nqck_beforeEach(^{\n\tprotocol = @protocol(TestDelegateProtocol);\n\texpect(protocol).notTo(beNil());\n\n\tproxy = [[RACDelegateProxy alloc] initWithProtocol:protocol];\n\texpect(proxy).notTo(beNil());\n\texpect([proxy rac_proxiedDelegate]).to(beNil());\n\n\tdelegate = [[TestDelegate alloc] init];\n\texpect(delegate).notTo(beNil());\n});\n\nqck_it(@\"should not respond to selectors at first\", ^{\n\texpect(@([proxy respondsToSelector:@selector(lengthOfString:)])).to(beFalsy());\n});\n\nqck_it(@\"should send on a signal for a protocol method\", ^{\n\t__block RACTuple *tuple;\n\t[[proxy signalForSelector:@selector(lengthOfString:)] subscribeNext:^(RACTuple *t) {\n\t\ttuple = t;\n\t}];\n\n\texpect(@([proxy respondsToSelector:@selector(lengthOfString:)])).to(beTruthy());\n\texpect(@([proxy lengthOfString:@\"foo\"])).to(equal(@0));\n\texpect(tuple).to(equal(RACTuplePack(@\"foo\")));\n});\n\nqck_it(@\"should forward to the proxied delegate\", ^{\n\t[proxy setRac_proxiedDelegate:delegate];\n\n\texpect(@([proxy respondsToSelector:@selector(lengthOfString:)])).to(beTruthy());\n\texpect(@([proxy lengthOfString:@\"foo\"])).to(equal(@3));\n\texpect(@(delegate.lengthOfStringInvoked)).to(beTruthy());\n});\n\nqck_it(@\"should not send to the delegate when signals are applied\", ^{\n\t[proxy setRac_proxiedDelegate:delegate];\n\n\t__block RACTuple *tuple;\n\t[[proxy signalForSelector:@selector(lengthOfString:)] subscribeNext:^(RACTuple *t) {\n\t\ttuple = t;\n\t}];\n\n\texpect(@([proxy respondsToSelector:@selector(lengthOfString:)])).to(beTruthy());\n\texpect(@([proxy lengthOfString:@\"foo\"])).to(equal(@0));\n\n\texpect(tuple).to(equal(RACTuplePack(@\"foo\")));\n\texpect(@(delegate.lengthOfStringInvoked)).to(beFalsy());\n});\n\nQuickSpecEnd\n\n@implementation TestDelegate\n\n- (NSUInteger)lengthOfString:(NSString *)str {\n\tself.lengthOfStringInvoked = YES;\n\treturn str.length;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACDisposableSpec.m",
    "content": "//\n//  RACDisposableSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACDisposable.h\"\n#import \"RACScopedDisposable.h\"\n\nQuickSpecBegin(RACDisposableSpec)\n\nqck_it(@\"should initialize without a block\", ^{\n\tRACDisposable *disposable = [[RACDisposable alloc] init];\n\texpect(disposable).notTo(beNil());\n\texpect(@(disposable.disposed)).to(beFalsy());\n\n\t[disposable dispose];\n\texpect(@(disposable.disposed)).to(beTruthy());\n});\n\nqck_it(@\"should execute a block upon disposal\", ^{\n\t__block BOOL disposed = NO;\n\tRACDisposable *disposable = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\texpect(disposable).notTo(beNil());\n\texpect(@(disposed)).to(beFalsy());\n\texpect(@(disposable.disposed)).to(beFalsy());\n\n\t[disposable dispose];\n\texpect(@(disposed)).to(beTruthy());\n\texpect(@(disposable.disposed)).to(beTruthy());\n});\n\nqck_it(@\"should not dispose upon deallocation\", ^{\n\t__block BOOL disposed = NO;\n\t__weak RACDisposable *weakDisposable = nil;\n\n\t@autoreleasepool {\n\t\tRACDisposable *disposable = [RACDisposable disposableWithBlock:^{\n\t\t\tdisposed = YES;\n\t\t}];\n\n\t\tweakDisposable = disposable;\n\t\texpect(weakDisposable).notTo(beNil());\n\t}\n\n\texpect(weakDisposable).to(beNil());\n\texpect(@(disposed)).to(beFalsy());\n});\n\nqck_it(@\"should create a scoped disposable\", ^{\n\t__block BOOL disposed = NO;\n\t__weak RACScopedDisposable *weakDisposable = nil;\n\n\t@autoreleasepool {\n\t\tRACScopedDisposable *disposable __attribute__((objc_precise_lifetime)) = [RACScopedDisposable disposableWithBlock:^{\n\t\t\tdisposed = YES;\n\t\t}];\n\n\t\tweakDisposable = disposable;\n\t\texpect(weakDisposable).notTo(beNil());\n\t\texpect(@(disposed)).to(beFalsy());\n\t}\n\n\texpect(weakDisposable).to(beNil());\n\texpect(@(disposed)).to(beTruthy());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACEventSpec.m",
    "content": "//\n//  RACEventSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-01-07.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACEvent.h\"\n\nQuickSpecBegin(RACEventSpec)\n\nqck_it(@\"should return the singleton completed event\", ^{\n\tRACEvent *event = RACEvent.completedEvent;\n\texpect(event).notTo(beNil());\n\n\texpect(event).to(beIdenticalTo(RACEvent.completedEvent));\n\texpect([event copy]).to(beIdenticalTo(event));\n\n\texpect(@(event.eventType)).to(equal(@(RACEventTypeCompleted)));\n\texpect(@(event.finished)).to(beTruthy());\n\texpect(event.error).to(beNil());\n\texpect(event.value).to(beNil());\n});\n\nqck_it(@\"should return an error event\", ^{\n\tNSError *error = [NSError errorWithDomain:@\"foo\" code:1 userInfo:nil];\n\tRACEvent *event = [RACEvent eventWithError:error];\n\texpect(event).notTo(beNil());\n\n\texpect(event).to(equal([RACEvent eventWithError:error]));\n\texpect([event copy]).to(equal(event));\n\n\texpect(@(event.eventType)).to(equal(@(RACEventTypeError)));\n\texpect(@(event.finished)).to(beTruthy());\n\texpect(event.error).to(equal(error));\n\texpect(event.value).to(beNil());\n});\n\nqck_it(@\"should return an error event with a nil error\", ^{\n\tRACEvent *event = [RACEvent eventWithError:nil];\n\texpect(event).notTo(beNil());\n\n\texpect(event).to(equal([RACEvent eventWithError:nil]));\n\texpect([event copy]).to(equal(event));\n\n\texpect(@(event.eventType)).to(equal(@(RACEventTypeError)));\n\texpect(@(event.finished)).to(beTruthy());\n\texpect(event.error).to(beNil());\n\texpect(event.value).to(beNil());\n});\n\nqck_it(@\"should return a next event\", ^{\n\tNSString *value = @\"foo\";\n\tRACEvent *event = [RACEvent eventWithValue:value];\n\texpect(event).notTo(beNil());\n\n\texpect(event).to(equal([RACEvent eventWithValue:value]));\n\texpect([event copy]).to(equal(event));\n\n\texpect(@(event.eventType)).to(equal(@(RACEventTypeNext)));\n\texpect(@(event.finished)).to(beFalsy());\n\texpect(event.error).to(beNil());\n\texpect(event.value).to(equal(value));\n});\n\nqck_it(@\"should return a next event with a nil value\", ^{\n\tRACEvent *event = [RACEvent eventWithValue:nil];\n\texpect(event).notTo(beNil());\n\n\texpect(event).to(equal([RACEvent eventWithValue:nil]));\n\texpect([event copy]).to(equal(event));\n\n\texpect(@(event.eventType)).to(equal(@(RACEventTypeNext)));\n\texpect(@(event.finished)).to(beFalsy());\n\texpect(event.error).to(beNil());\n\texpect(event.value).to(beNil());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACKVOChannelSpec.m",
    "content": "//\n//  RACKVOChannelSpec.m\n//  ReactiveCocoa\n//\n//  Created by Uri Baghin on 16/12/2012.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n#import \"RACChannelExamples.h\"\n#import \"RACPropertySignalExamples.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACKVOWrapper.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOChannel.h\"\n#import \"RACSignal+Operations.h\"\n\nQuickSpecBegin(RACKVOChannelSpec)\n\nqck_describe(@\"RACKVOChannel\", ^{\n\t__block RACTestObject *object;\n\t__block RACKVOChannel *channel;\n\tid value1 = @\"test value 1\";\n\tid value2 = @\"test value 2\";\n\tid value3 = @\"test value 3\";\n\tNSArray *values = @[ value1, value2, value3 ];\n\t\n\tqck_beforeEach(^{\n\t\tobject = [[RACTestObject alloc] init];\n\t\tchannel = [[RACKVOChannel alloc] initWithTarget:object keyPath:@keypath(object.stringValue) nilValue:nil];\n\t});\n\t\n\tid setupBlock = ^(RACTestObject *testObject, NSString *keyPath, id nilValue, RACSignal *signal) {\n\t\tRACKVOChannel *channel = [[RACKVOChannel alloc] initWithTarget:testObject keyPath:keyPath nilValue:nilValue];\n\t\t[signal subscribe:channel.followingTerminal];\n\t};\n\t\n\tqck_itBehavesLike(RACPropertySignalExamples, ^{\n\t\treturn @{ RACPropertySignalExamplesSetupBlock: setupBlock };\n\t});\n\t\n\tqck_itBehavesLike(RACChannelExamples, ^{\n\t\treturn @{\n\t\t\tRACChannelExampleCreateBlock: [^{\n\t\t\t\treturn [[RACKVOChannel alloc] initWithTarget:object keyPath:@keypath(object.stringValue) nilValue:nil];\n\t\t\t} copy]\n\t\t};\n\t});\n\t\n\tqck_it(@\"should send the object's current value when subscribed to followingTerminal\", ^{\n\t\t__block id receivedValue = @\"received value should not be this\";\n\t\t[[channel.followingTerminal take:1] subscribeNext:^(id x) {\n\t\t\treceivedValue = x;\n\t\t}];\n\n\t\texpect(receivedValue).to(beNil());\n\t\t\n\t\tobject.stringValue = value1;\n\t\t[[channel.followingTerminal take:1] subscribeNext:^(id x) {\n\t\t\treceivedValue = x;\n\t\t}];\n\n\t\texpect(receivedValue).to(equal(value1));\n\t});\n\t\n\tqck_it(@\"should send the object's new value on followingTerminal when it's changed\", ^{\n\t\tobject.stringValue = value1;\n\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\t[channel.followingTerminal subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\tobject.stringValue = value2;\n\t\tobject.stringValue = value3;\n\t\texpect(receivedValues).to(equal(values));\n\t});\n\t\n\tqck_it(@\"should set the object's value using values sent to the followingTerminal\", ^{\n\t\texpect(object.stringValue).to(beNil());\n\n\t\t[channel.followingTerminal sendNext:value1];\n\t\texpect(object.stringValue).to(equal(value1));\n\n\t\t[channel.followingTerminal sendNext:value2];\n\t\texpect(object.stringValue).to(equal(value2));\n\t});\n\t\n\tqck_it(@\"should be able to subscribe to signals\", ^{\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\t[object rac_observeKeyPath:@keypath(object.stringValue) options:0 observer:self block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t[receivedValues addObject:value];\n\t\t}];\n\n\t\tRACSignal *signal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:value1];\n\t\t\t[subscriber sendNext:value2];\n\t\t\t[subscriber sendNext:value3];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t[signal subscribe:channel.followingTerminal];\n\t\texpect(receivedValues).to(equal(values));\n\t});\n\n\tqck_it(@\"should complete both terminals when the target deallocates\", ^{\n\t\t__block BOOL leadingCompleted = NO;\n\t\t__block BOOL followingCompleted = NO;\n\t\t__block BOOL deallocated = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocated = YES;\n\t\t\t}]];\n\n\t\t\tRACKVOChannel *channel = [[RACKVOChannel alloc] initWithTarget:object keyPath:@keypath(object.stringValue) nilValue:nil];\n\t\t\t[channel.leadingTerminal subscribeCompleted:^{\n\t\t\t\tleadingCompleted = YES;\n\t\t\t}];\n\n\t\t\t[channel.followingTerminal subscribeCompleted:^{\n\t\t\t\tfollowingCompleted = YES;\n\t\t\t}];\n\n\t\t\texpect(@(deallocated)).to(beFalsy());\n\t\t\texpect(@(leadingCompleted)).to(beFalsy());\n\t\t\texpect(@(followingCompleted)).to(beFalsy());\n\t\t}\n\n\t\texpect(@(deallocated)).to(beTruthy());\n\t\texpect(@(leadingCompleted)).to(beTruthy());\n\t\texpect(@(followingCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should deallocate when the target deallocates\", ^{\n\t\t__block BOOL targetDeallocated = NO;\n\t\t__block BOOL channelDeallocated = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\ttargetDeallocated = YES;\n\t\t\t}]];\n\n\t\t\tRACKVOChannel *channel = [[RACKVOChannel alloc] initWithTarget:object keyPath:@keypath(object.stringValue) nilValue:nil];\n\t\t\t[channel.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tchannelDeallocated = YES;\n\t\t\t}]];\n\n\t\t\texpect(@(targetDeallocated)).to(beFalsy());\n\t\t\texpect(@(channelDeallocated)).to(beFalsy());\n\t\t}\n\n\t\texpect(@(targetDeallocated)).to(beTruthy());\n\t\texpect(@(channelDeallocated)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"RACChannelTo\", ^{\n\t__block RACTestObject *a;\n\t__block RACTestObject *b;\n\t__block RACTestObject *c;\n\t__block NSString *testName1;\n\t__block NSString *testName2;\n\t__block NSString *testName3;\n\t\n\tqck_beforeEach(^{\n\t\ta = [[RACTestObject alloc] init];\n\t\tb = [[RACTestObject alloc] init];\n\t\tc = [[RACTestObject alloc] init];\n\t\ttestName1 = @\"sync it!\";\n\t\ttestName2 = @\"sync it again!\";\n\t\ttestName3 = @\"sync it once more!\";\n\t});\n\t\n\tqck_it(@\"should keep objects' properties in sync\", ^{\n\t\tRACChannelTo(a, stringValue) = RACChannelTo(b, stringValue);\n\t\texpect(a.stringValue).to(beNil());\n\t\texpect(b.stringValue).to(beNil());\n\t\t\n\t\ta.stringValue = testName1;\n\t\texpect(a.stringValue).to(equal(testName1));\n\t\texpect(b.stringValue).to(equal(testName1));\n\t\t\n\t\tb.stringValue = testName2;\n\t\texpect(a.stringValue).to(equal(testName2));\n\t\texpect(b.stringValue).to(equal(testName2));\n\t\t\n\t\ta.stringValue = nil;\n\t\texpect(a.stringValue).to(beNil());\n\t\texpect(b.stringValue).to(beNil());\n\t});\n\t\n\tqck_it(@\"should keep properties identified by keypaths in sync\", ^{\n\t\tRACChannelTo(a, strongTestObjectValue.stringValue) = RACChannelTo(b, strongTestObjectValue.stringValue);\n\t\ta.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\tb.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\t\n\t\ta.strongTestObjectValue.stringValue = testName1;\n\t\texpect(a.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\texpect(b.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\texpect(a.strongTestObjectValue).notTo(equal(b.strongTestObjectValue));\n\t\t\n\t\tb.strongTestObjectValue = nil;\n\t\texpect(a.strongTestObjectValue.stringValue).to(beNil());\n\t\t\n\t\tc.stringValue = testName2;\n\t\tb.strongTestObjectValue = c;\n\t\texpect(a.strongTestObjectValue.stringValue).to(equal(testName2));\n\t\texpect(b.strongTestObjectValue.stringValue).to(equal(testName2));\n\t\texpect(a.strongTestObjectValue).notTo(equal(b.strongTestObjectValue));\n\t});\n\t\n\tqck_it(@\"should update properties identified by keypaths when the intermediate values change\", ^{\n\t\tRACChannelTo(a, strongTestObjectValue.stringValue) = RACChannelTo(b, strongTestObjectValue.stringValue);\n\t\ta.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\tb.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\tc.stringValue = testName1;\n\t\tb.strongTestObjectValue = c;\n\t\t\n\t\texpect(a.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\texpect(a.strongTestObjectValue).notTo(equal(b.strongTestObjectValue));\n\t});\n\t\n\tqck_it(@\"should update properties identified by keypaths when the channel was created when one of the two objects had an intermediate nil value\", ^{\n\t\tRACChannelTo(a, strongTestObjectValue.stringValue) = RACChannelTo(b, strongTestObjectValue.stringValue);\n\t\tb.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\tc.stringValue = testName1;\n\t\ta.strongTestObjectValue = c;\n\t\t\n\t\texpect(a.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\texpect(b.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\texpect(a.strongTestObjectValue).notTo(equal(b.strongTestObjectValue));\n\t});\n\t\n\tqck_it(@\"should take the value of the object being bound to at the start\", ^{\n\t\ta.stringValue = testName1;\n\t\tb.stringValue = testName2;\n\n\t\tRACChannelTo(a, stringValue) = RACChannelTo(b, stringValue);\n\t\texpect(a.stringValue).to(equal(testName2));\n\t\texpect(b.stringValue).to(equal(testName2));\n\t});\n\t\n\tqck_it(@\"should update the value even if it's the same value the object had before it was bound\", ^{\n\t\ta.stringValue = testName1;\n\t\tb.stringValue = testName2;\n\n\t\tRACChannelTo(a, stringValue) = RACChannelTo(b, stringValue);\n\t\texpect(a.stringValue).to(equal(testName2));\n\t\texpect(b.stringValue).to(equal(testName2));\n\t\t\n\t\tb.stringValue = testName1;\n\t\texpect(a.stringValue).to(equal(testName1));\n\t\texpect(b.stringValue).to(equal(testName1));\n\t});\n\t\n\tqck_it(@\"should bind transitively\", ^{\n\t\ta.stringValue = testName1;\n\t\tb.stringValue = testName2;\n\t\tc.stringValue = testName3;\n\n\t\tRACChannelTo(a, stringValue) = RACChannelTo(b, stringValue);\n\t\tRACChannelTo(b, stringValue) = RACChannelTo(c, stringValue);\n\t\texpect(a.stringValue).to(equal(testName3));\n\t\texpect(b.stringValue).to(equal(testName3));\n\t\texpect(c.stringValue).to(equal(testName3));\n\t\t\n\t\tc.stringValue = testName1;\n\t\texpect(a.stringValue).to(equal(testName1));\n\t\texpect(b.stringValue).to(equal(testName1));\n\t\texpect(c.stringValue).to(equal(testName1));\n\t\t\n\t\tb.stringValue = testName2;\n\t\texpect(a.stringValue).to(equal(testName2));\n\t\texpect(b.stringValue).to(equal(testName2));\n\t\texpect(c.stringValue).to(equal(testName2));\n\t\t\n\t\ta.stringValue = testName3;\n\t\texpect(a.stringValue).to(equal(testName3));\n\t\texpect(b.stringValue).to(equal(testName3));\n\t\texpect(c.stringValue).to(equal(testName3));\n\t});\n\t\n\tqck_it(@\"should bind changes made by KVC on arrays\", ^{\n\t\tb.arrayValue = @[];\n\t\tRACChannelTo(a, arrayValue) = RACChannelTo(b, arrayValue);\n\n\t\t[[b mutableArrayValueForKeyPath:@keypath(b.arrayValue)] addObject:@1];\n\t\texpect(a.arrayValue).to(equal(b.arrayValue));\n\t});\n\t\n\tqck_it(@\"should bind changes made by KVC on sets\", ^{\n\t\tb.setValue = [NSSet set];\n\t\tRACChannelTo(a, setValue) = RACChannelTo(b, setValue);\n\n\t\t[[b mutableSetValueForKeyPath:@keypath(b.setValue)] addObject:@1];\n\t\texpect(a.setValue).to(equal(b.setValue));\n\t});\n\t\n\tqck_it(@\"should bind changes made by KVC on ordered sets\", ^{\n\t\tb.orderedSetValue = [NSOrderedSet orderedSet];\n\t\tRACChannelTo(a, orderedSetValue) = RACChannelTo(b, orderedSetValue);\n\n\t\t[[b mutableOrderedSetValueForKeyPath:@keypath(b.orderedSetValue)] addObject:@1];\n\t\texpect(a.orderedSetValue).to(equal(b.orderedSetValue));\n\t});\n\t\n\tqck_it(@\"should handle deallocation of intermediate objects correctly even without support from KVO\", ^{\n\t\t__block BOOL wasDisposed = NO;\n\n\t\tRACChannelTo(a, weakTestObjectValue.stringValue) = RACChannelTo(b, strongTestObjectValue.stringValue);\n\t\tb.strongTestObjectValue = [[RACTestObject alloc] init];\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\twasDisposed = YES;\n\t\t\t}]];\n\t\t\t\n\t\t\ta.weakTestObjectValue = object;\n\t\t\tobject.stringValue = testName1;\n\t\t\t\n\t\t\texpect(@(wasDisposed)).to(beFalsy());\n\t\t\texpect(b.strongTestObjectValue.stringValue).to(equal(testName1));\n\t\t}\n\t\t\n\t\texpect(@(wasDisposed)).toEventually(beTruthy());\n\t\texpect(b.strongTestObjectValue.stringValue).to(beNil());\n\t});\n\t\n\tqck_it(@\"should stop binding when disposed\", ^{\n\t\tRACChannelTerminal *aTerminal = RACChannelTo(a, stringValue);\n\t\tRACChannelTerminal *bTerminal = RACChannelTo(b, stringValue);\n\n\t\ta.stringValue = testName1;\n\t\tRACDisposable *disposable = [aTerminal subscribe:bTerminal];\n\n\t\texpect(a.stringValue).to(equal(testName1));\n\t\texpect(b.stringValue).to(equal(testName1));\n\n\t\ta.stringValue = testName2;\n\t\texpect(a.stringValue).to(equal(testName2));\n\t\texpect(b.stringValue).to(equal(testName2));\n\n\t\t[disposable dispose];\n\n\t\ta.stringValue = testName3;\n\t\texpect(a.stringValue).to(equal(testName3));\n\t\texpect(b.stringValue).to(equal(testName2));\n\t});\n\t\n\tqck_it(@\"should use the nilValue when sent nil\", ^{\n\t\tRACChannelTerminal *terminal = RACChannelTo(a, integerValue, @5);\n\t\texpect(@(a.integerValue)).to(equal(@0));\n\n\t\t[terminal sendNext:@2];\n\t\texpect(@(a.integerValue)).to(equal(@2));\n\n\t\t[terminal sendNext:nil];\n\t\texpect(@(a.integerValue)).to(equal(@5));\n\t});\n\n\tqck_it(@\"should use the nilValue when an intermediate object is nil\", ^{\n\t\t__block BOOL wasDisposed = NO;\n\n\t\tRACChannelTo(a, weakTestObjectValue.integerValue, @5) = RACChannelTo(b, strongTestObjectValue.integerValue, @5);\n\t\tb.strongTestObjectValue = [[RACTestObject alloc] init];\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\twasDisposed = YES;\n\t\t\t}]];\n\t\t\t\n\t\t\ta.weakTestObjectValue = object;\n\t\t\tobject.integerValue = 2;\n\n\t\t\texpect(@(wasDisposed)).to(beFalsy());\n\t\t\texpect(@(b.strongTestObjectValue.integerValue)).to(equal(@2));\n\t\t}\n\t\t\n\t\texpect(@(wasDisposed)).toEventually(beTruthy());\n\t\texpect(@(b.strongTestObjectValue.integerValue)).to(equal(@5));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACKVOProxySpec.m",
    "content": "//\n//  RACKVOProxySpec.m\n//  ReactiveCocoa\n//\n//  Created by Richard Speyer on 4/24/14.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACKVOProxy.h\"\n\n#import \"NSObject+RACKVOWrapper.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACSerialDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACScheduler.h\"\n#import \"RACSubject.h\"\n\n@interface TestObject : NSObject {\n\tvolatile int _testInt;\n}\n\n@property (assign, atomic) int testInt;\n\n@end\n\n@implementation TestObject\n\n- (int)testInt {\n\treturn _testInt;\n}\n\n// Use manual KVO notifications to avoid any possible race conditions within the\n// automatic KVO implementation.\n- (void)setTestInt:(int)value {\n\t[self willChangeValueForKey:@keypath(self.testInt)];\n\t_testInt = value;\n\t[self didChangeValueForKey:@keypath(self.testInt)];\n}\n\n+ (BOOL)automaticallyNotifiesObserversForKey:(NSString *)key {\n\treturn NO;\n}\n\n@end\n\nQuickSpecBegin(RACKVOProxySpec)\n\nqck_describe(@\"RACKVOProxy\", ^{\n\t__block TestObject *testObject;\n\t__block dispatch_queue_t concurrentQueue;\n\n\tqck_beforeEach(^{\n\t\ttestObject = [[TestObject alloc] init];\n\t\tconcurrentQueue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.RACKVOProxySpec.concurrentQueue\", DISPATCH_QUEUE_CONCURRENT);\n\t});\n\n\tqck_afterEach(^{\n\t\tdispatch_barrier_sync(concurrentQueue, ^{\n\t\t\ttestObject = nil;\n\t\t});\n\t});\n\n\tqck_describe(@\"basic\", ^{\n\t\tqck_it(@\"should handle multiple observations on the same value\", ^{\n\t\t\t__block int observedValue1 = 0;\n\t\t\t__block int observedValue2 = 0;\n\n\t\t\t[[[RACObserve(testObject, testInt)\n\t\t\t\tskip:1]\n\t\t\t\ttake:1]\n\t\t\t\tsubscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\t\tobservedValue1 = wrappedInt.intValue;\n\t\t\t\t}];\n\n\t\t\t[[[RACObserve(testObject, testInt)\n\t\t\t\tskip:1]\n\t\t\t\ttake:1]\n\t\t\t\tsubscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\t\tobservedValue2 = wrappedInt.intValue;\n\t\t\t\t}];\n\n\t\t\ttestObject.testInt = 2;\n\n\t\t\texpect(@(observedValue1)).toEventually(equal(@2));\n\t\t\texpect(@(observedValue2)).toEventually(equal(@2));\n\t\t});\n\n\t\tqck_it(@\"can remove individual observation\", ^{\n\t\t\t__block int observedValue1 = 0;\n\t\t\t__block int observedValue2 = 0;\n\n\t\t\tRACDisposable *disposable1 = [RACObserve(testObject, testInt) subscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\tobservedValue1 = wrappedInt.intValue;\n\t\t\t}];\n\n\t\t\t[RACObserve(testObject, testInt) subscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\tobservedValue2 = wrappedInt.intValue;\n\t\t\t}];\n\n\t\t\ttestObject.testInt = 2;\n\n\t\t\texpect(@(observedValue1)).toEventually(equal(@2));\n\t\t\texpect(@(observedValue2)).toEventually(equal(@2));\n\n\t\t\t[disposable1 dispose];\n\t\t\ttestObject.testInt = 3;\n\n\t\t\texpect(@(observedValue2)).toEventually(equal(@3));\n\t\t\texpect(@(observedValue1)).to(equal(@2));\n\t\t});\n\t});\n\n\tqck_describe(@\"async\", ^{\n\t\tqck_it(@\"should handle changes being made on another queue\", ^{\n\t\t\t__block int observedValue = 0;\n\t\t\t[[[RACObserve(testObject, testInt)\n\t\t\t\tskip:1]\n\t\t\t\ttake:1]\n\t\t\t\tsubscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\t\tobservedValue = wrappedInt.intValue;\n\t\t\t\t}];\n\n\t\t\tdispatch_async(concurrentQueue, ^{\n\t\t\t\ttestObject.testInt = 2;\n\t\t\t});\n\n\t\t\tdispatch_barrier_sync(concurrentQueue, ^{});\n\t\t\texpect(@(observedValue)).toEventually(equal(@2));\n\t\t});\n\n\t\tqck_it(@\"should handle changes being made on another queue using deliverOn\", ^{\n\t\t\t__block int observedValue = 0;\n\t\t\t[[[[RACObserve(testObject, testInt)\n\t\t\t\tskip:1]\n\t\t\t\ttake:1]\n\t\t\t\tdeliverOn:[RACScheduler mainThreadScheduler]]\n\t\t\t\tsubscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\t\tobservedValue = wrappedInt.intValue;\n\t\t\t\t}];\n\n\t\t\tdispatch_async(concurrentQueue, ^{\n\t\t\t\ttestObject.testInt = 2;\n\t\t\t});\n\n\t\t\tdispatch_barrier_sync(concurrentQueue, ^{});\n\t\t\texpect(@(observedValue)).toEventually(equal(@2));\n\t\t});\n\n\t\tqck_it(@\"async disposal of target\", ^{\n\t\t\t__block int observedValue;\n\t\t\t[[RACObserve(testObject, testInt)\n\t\t\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\t\t\tsubscribeNext:^(NSNumber *wrappedInt) {\n\t\t\t\t\tobservedValue = wrappedInt.intValue;\n\t\t\t\t}];\n\n\t\t\tdispatch_async(concurrentQueue, ^{\n\t\t\t\ttestObject.testInt = 2;\n\t\t\t\ttestObject = nil;\n\t\t\t});\n\n\t\t\tdispatch_barrier_sync(concurrentQueue, ^{});\n\t\t\texpect(@(observedValue)).toEventually(equal(@2));\n\t\t});\n\t});\n\n\tqck_describe(@\"stress\", ^{\n\t\tstatic const size_t numIterations = 5000;\n\n\t\t__block dispatch_queue_t iterationQueue;\n\n\t\tbeforeEach(^{\n\t\t\titerationQueue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.RACKVOProxySpec.iterationQueue\", DISPATCH_QUEUE_CONCURRENT);\n\t\t});\n\n\t\t// ReactiveCocoa/ReactiveCocoa#1122\n\t\tqck_it(@\"async disposal of observer\", ^{\n\t\t\tRACSerialDisposable *disposable = [[RACSerialDisposable alloc] init];\n\n\t\t\tdispatch_apply(numIterations, iterationQueue, ^(size_t index) {\n\t\t\t\tRACDisposable *newDisposable = [RACObserve(testObject, testInt) subscribeCompleted:^{}];\n\t\t\t\t[[disposable swapInDisposable:newDisposable] dispose];\n\n\t\t\t\tdispatch_async(concurrentQueue, ^{\n\t\t\t\t\ttestObject.testInt = (int)index;\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tdispatch_barrier_sync(iterationQueue, ^{\n\t\t\t\t[disposable dispose];\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"async disposal of signal with in-flight changes\", ^{\n\t\t\tRACSubject *teardown = [RACSubject subject];\n\n\t\t\tRACSignal *isEvenSignal = [[[[RACObserve(testObject, testInt)\n\t\t\t\tmap:^(NSNumber *wrappedInt) {\n\t\t\t\t\treturn @((wrappedInt.intValue % 2) == 0);\n\t\t\t\t}]\n\t\t\t\tdeliverOn:RACScheduler.mainThreadScheduler]\n\t\t\t\ttakeUntil:teardown]\n\t\t\t\treplayLast];\n\n\t\t\tdispatch_apply(numIterations, iterationQueue, ^(size_t index) {\n\t\t\t\ttestObject.testInt = (int)index;\n\t\t\t});\n\n\t\t\tdispatch_barrier_async(iterationQueue, ^{\n\t\t\t\t[teardown sendNext:nil];\n\t\t\t});\n\n\t\t\texpect(@([isEvenSignal asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\t\t});\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACKVOWrapperSpec.m",
    "content": "//\n//  RACKVOWrapperSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-08-07.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"NSObject+RACKVOWrapper.h\"\n\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACKVOTrampoline.h\"\n#import \"RACTestObject.h\"\n\n@interface RACTestOperation : NSOperation\n@end\n\n// The name of the examples.\nstatic NSString * const RACKVOWrapperExamples = @\"RACKVOWrapperExamples\";\n\n// A block that returns an object to observe in the examples.\nstatic NSString * const RACKVOWrapperExamplesTargetBlock = @\"RACKVOWrapperExamplesTargetBlock\";\n\n// The key path to observe in the examples.\n//\n// The key path must have at least one weak property in it.\nstatic NSString * const RACKVOWrapperExamplesKeyPath = @\"RACKVOWrapperExamplesKeyPath\";\n\n// A block that changes the value of a weak property in the observed key path.\n// The block is passed the object the example is observing and the new value the\n// weak property should be changed to(\nstatic NSString * const RACKVOWrapperExamplesChangeBlock = @\"RACKVOWrapperExamplesChangeBlock\";\n\n// A block that returns a valid value for the weak property changed by\n// RACKVOWrapperExamplesChangeBlock. The value must deallocate\n// normally.\nstatic NSString * const RACKVOWrapperExamplesValueBlock = @\"RACKVOWrapperExamplesValueBlock\";\n\n// Whether RACKVOWrapperExamplesChangeBlock changes the value\n// of the last key path component in the key path directly.\nstatic NSString * const RACKVOWrapperExamplesChangesValueDirectly = @\"RACKVOWrapperExamplesChangesValueDirectly\";\n\n// The name of the examples.\nstatic NSString * const RACKVOWrapperCollectionExamples = @\"RACKVOWrapperCollectionExamples\";\n\n// A block that returns an object to observe in the examples.\nstatic NSString * const RACKVOWrapperCollectionExamplesTargetBlock = @\"RACKVOWrapperCollectionExamplesTargetBlock\";\n\n// The key path to observe in the examples.\n//\n// Must identify a property of type NSOrderedSet.\nstatic NSString * const RACKVOWrapperCollectionExamplesKeyPath = @\"RACKVOWrapperCollectionExamplesKeyPath\";\n\nQuickConfigurationBegin(RACKVOWrapperExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACKVOWrapperExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block NSObject *target = nil;\n\t\t__block NSString *keyPath = nil;\n\t\t__block void (^changeBlock)(NSObject *, id) = nil;\n\t\t__block id (^valueBlock)(void) = nil;\n\t\t__block BOOL changesValueDirectly = NO;\n\n\t\t__block NSUInteger priorCallCount = 0;\n\t\t__block NSUInteger posteriorCallCount = 0;\n\t\t__block BOOL priorTriggeredByLastKeyPathComponent = NO;\n\t\t__block BOOL posteriorTriggeredByLastKeyPathComponent = NO;\n\t\t__block BOOL posteriorTriggeredByDeallocation = NO;\n\t\t__block void (^callbackBlock)(id, NSDictionary *, BOOL, BOOL) = nil;\n\n\t\tqck_beforeEach(^{\n\t\t\tNSObject * (^targetBlock)(void) = exampleContext()[RACKVOWrapperExamplesTargetBlock];\n\t\t\ttarget = targetBlock();\n\t\t\tkeyPath = exampleContext()[RACKVOWrapperExamplesKeyPath];\n\t\t\tchangeBlock = exampleContext()[RACKVOWrapperExamplesChangeBlock];\n\t\t\tvalueBlock = exampleContext()[RACKVOWrapperExamplesValueBlock];\n\t\t\tchangesValueDirectly = [exampleContext()[RACKVOWrapperExamplesChangesValueDirectly] boolValue];\n\n\t\t\tpriorCallCount = 0;\n\t\t\tposteriorCallCount = 0;\n\n\t\t\tcallbackBlock = [^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tif ([change[NSKeyValueChangeNotificationIsPriorKey] boolValue]) {\n\t\t\t\t\tpriorTriggeredByLastKeyPathComponent = affectedOnlyLastComponent;\n\t\t\t\t\t++priorCallCount;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tposteriorTriggeredByLastKeyPathComponent = affectedOnlyLastComponent;\n\t\t\t\tposteriorTriggeredByDeallocation = causedByDealloc;\n\t\t\t\t++posteriorCallCount;\n\t\t\t} copy];\n\t\t});\n\n\t\tqck_afterEach(^{\n\t\t\ttarget = nil;\n\t\t\tkeyPath = nil;\n\t\t\tchangeBlock = nil;\n\t\t\tvalueBlock = nil;\n\t\t\tchangesValueDirectly = NO;\n\n\t\t\tcallbackBlock = nil;\n\t\t});\n\n\t\tqck_it(@\"should not call the callback block on add if called without NSKeyValueObservingOptionInitial\", ^{\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior observer:nil block:callbackBlock];\n\t\t\texpect(@(priorCallCount)).to(equal(@0));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@0));\n\t\t});\n\n\t\tqck_it(@\"should call the callback block on add if called with NSKeyValueObservingOptionInitial\", ^{\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior | NSKeyValueObservingOptionInitial observer:nil block:callbackBlock];\n\t\t\texpect(@(priorCallCount)).to(equal(@0));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should call the callback block twice per change, once prior and once posterior\", ^{\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior observer:nil block:callbackBlock];\n\t\t\tpriorCallCount = 0;\n\t\t\tposteriorCallCount = 0;\n\n\t\t\tid value1 = valueBlock();\n\t\t\tchangeBlock(target, value1);\n\t\t\texpect(@(priorCallCount)).to(equal(@1));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@1));\n\t\t\texpect(@(priorTriggeredByLastKeyPathComponent)).to(equal(@(changesValueDirectly)));\n\t\t\texpect(@(posteriorTriggeredByLastKeyPathComponent)).to(equal(@(changesValueDirectly)));\n\t\t\texpect(@(posteriorTriggeredByDeallocation)).to(beFalsy());\n\n\t\t\tid value2 = valueBlock();\n\t\t\tchangeBlock(target, value2);\n\t\t\texpect(@(priorCallCount)).to(equal(@2));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@2));\n\t\t\texpect(@(priorTriggeredByLastKeyPathComponent)).to(equal(@(changesValueDirectly)));\n\t\t\texpect(@(posteriorTriggeredByLastKeyPathComponent)).to(equal(@(changesValueDirectly)));\n\t\t\texpect(@(posteriorTriggeredByDeallocation)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should call the callback block with NSKeyValueChangeNotificationIsPriorKey set before the value is changed, and not set after the value is changed\", ^{\n\t\t\t__block BOOL priorCalled = NO;\n\t\t\t__block BOOL posteriorCalled = NO;\n\t\t\t__block id priorValue = nil;\n\t\t\t__block id posteriorValue = nil;\n\n\t\t\tid value1 = valueBlock();\n\t\t\tchangeBlock(target, value1);\n\t\t\tid oldValue = [target valueForKeyPath:keyPath];\n\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tif ([change[NSKeyValueChangeNotificationIsPriorKey] boolValue]) {\n\t\t\t\t\tpriorCalled = YES;\n\t\t\t\t\tpriorValue = value;\n\t\t\t\t\texpect(@(posteriorCalled)).to(beFalsy());\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tposteriorCalled = YES;\n\t\t\t\tposteriorValue = value;\n\t\t\t\texpect(@(priorCalled)).to(beTruthy());\n\t\t\t}];\n\n\t\t\tid value2 = valueBlock();\n\t\t\tchangeBlock(target, value2);\n\t\t\tid newValue = [target valueForKeyPath:keyPath];\n\t\t\texpect(@(priorCalled)).to(beTruthy());\n\t\t\texpect(priorValue).to(equal(oldValue));\n\t\t\texpect(@(posteriorCalled)).to(beTruthy());\n\t\t\texpect(posteriorValue).to(equal(newValue));\n\t\t});\n\n\t\tqck_it(@\"should not call the callback block after it's been disposed\", ^{\n\t\t\tRACDisposable *disposable = [target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior observer:nil block:callbackBlock];\n\t\t\tpriorCallCount = 0;\n\t\t\tposteriorCallCount = 0;\n\n\t\t\t[disposable dispose];\n\t\t\texpect(@(priorCallCount)).to(equal(@0));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@0));\n\n\t\t\tid value = valueBlock();\n\t\t\tchangeBlock(target, value);\n\t\t\texpect(@(priorCallCount)).to(equal(@0));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@0));\n\t\t});\n\n\t\tqck_it(@\"should call the callback block only once with NSKeyValueChangeNotificationIsPriorKey not set when the value is deallocated\", ^{\n\t\t\t__block BOOL valueDidDealloc = NO;\n\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionPrior observer:nil block:callbackBlock];\n\n\t\t\t@autoreleasepool {\n\t\t\t\tNSObject *value __attribute__((objc_precise_lifetime)) = valueBlock();\n\t\t\t\t[value.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tvalueDidDealloc = YES;\n\t\t\t\t}]];\n\n\t\t\t\tchangeBlock(target, value);\n\t\t\t\tpriorCallCount = 0;\n\t\t\t\tposteriorCallCount = 0;\n\t\t\t}\n\n\t\t\texpect(@(valueDidDealloc)).to(beTruthy());\n\t\t\texpect(@(priorCallCount)).to(equal(@0));\n\t\t\texpect(@(posteriorCallCount)).to(equal(@1));\n\t\t\texpect(@(posteriorTriggeredByDeallocation)).to(beTruthy());\n\t\t});\n\t});\n\n\tqck_sharedExamples(RACKVOWrapperCollectionExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block NSObject *target = nil;\n\t\t__block NSString *keyPath = nil;\n\t\t__block NSMutableOrderedSet *mutableKeyPathProxy = nil;\n\t\t__block void (^callbackBlock)(id, NSDictionary *, BOOL, BOOL) = nil;\n\n\t\t__block id priorValue = nil;\n\t\t__block id posteriorValue = nil;\n\t\t__block NSDictionary *priorChange = nil;\n\t\t__block NSDictionary *posteriorChange = nil;\n\n\t\tqck_beforeEach(^{\n\t\t\tNSObject * (^targetBlock)(void) = exampleContext()[RACKVOWrapperCollectionExamplesTargetBlock];\n\t\t\ttarget = targetBlock();\n\t\t\tkeyPath = exampleContext()[RACKVOWrapperCollectionExamplesKeyPath];\n\n\t\t\tcallbackBlock = [^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tif ([change[NSKeyValueChangeNotificationIsPriorKey] boolValue]) {\n\t\t\t\t\tpriorValue = value;\n\t\t\t\t\tpriorChange = change;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tposteriorValue = value;\n\t\t\t\tposteriorChange = change;\n\t\t\t} copy];\n\n\t\t\t[target setValue:[NSOrderedSet orderedSetWithObject:@0] forKeyPath:keyPath];\n\t\t\t[target rac_observeKeyPath:keyPath options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld | NSKeyValueObservingOptionPrior observer:nil block:callbackBlock];\n\t\t\tmutableKeyPathProxy = [target mutableOrderedSetValueForKeyPath:keyPath];\n\t\t});\n\n\t\tqck_afterEach(^{\n\t\t\ttarget = nil;\n\t\t\tkeyPath = nil;\n\t\t\tcallbackBlock = nil;\n\n\t\t\tpriorValue = nil;\n\t\t\tpriorChange = nil;\n\t\t\tposteriorValue = nil;\n\t\t\tposteriorChange = nil;\n\t\t});\n\n\t\tqck_it(@\"should support inserting elements into ordered collections\", ^{\n\t\t\t[mutableKeyPathProxy insertObject:@1 atIndex:0];\n\n\t\t\texpect(priorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @0 ]]));\n\t\t\texpect(posteriorValue).to(equal([NSOrderedSet orderedSetWithArray:(@[ @1, @0 ])]));\n\t\t\texpect(priorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeInsertion)));\n\t\t\texpect(posteriorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeInsertion)));\n\t\t\texpect(priorChange[NSKeyValueChangeOldKey]).to(beNil());\n\t\t\texpect(posteriorChange[NSKeyValueChangeNewKey]).to(equal(@[ @1 ]));\n\t\t\texpect(priorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t});\n\n\t\tqck_it(@\"should support removing elements from ordered collections\", ^{\n\t\t\t[mutableKeyPathProxy removeObjectAtIndex:0];\n\n\t\t\texpect(priorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @0 ]]));\n\t\t\texpect(posteriorValue).to(equal([NSOrderedSet orderedSetWithArray:@[]]));\n\t\t\texpect(priorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeRemoval)));\n\t\t\texpect(posteriorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeRemoval)));\n\t\t\texpect(priorChange[NSKeyValueChangeOldKey]).to(equal(@[ @0 ]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeNewKey]).to(beNil());\n\t\t\texpect(priorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t});\n\n\t\tqck_it(@\"should support replacing elements in ordered collections\", ^{\n\t\t\t[mutableKeyPathProxy replaceObjectAtIndex:0 withObject:@1];\n\n\t\t\texpect(priorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @0 ]]));\n\t\t\texpect(posteriorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @1 ]]));\n\t\t\texpect(priorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeReplacement)));\n\t\t\texpect(posteriorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeReplacement)));\n\t\t\texpect(priorChange[NSKeyValueChangeOldKey]).to(equal(@[ @0 ]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeNewKey]).to(equal(@[ @1 ]));\n\t\t\texpect(priorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeIndexesKey]).to(equal([NSIndexSet indexSetWithIndex:0]));\n\t\t});\n\n\t\tqck_it(@\"should support adding elements to unordered collections\", ^{\n\t\t\t[mutableKeyPathProxy unionOrderedSet:[NSOrderedSet orderedSetWithObject:@1]];\n\n\t\t\texpect(priorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @0 ]]));\n\t\t\texpect(posteriorValue).to(equal([NSOrderedSet orderedSetWithArray:(@[ @0, @1 ])]));\n\t\t\texpect(priorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeInsertion)));\n\t\t\texpect(posteriorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeInsertion)));\n\t\t\texpect(priorChange[NSKeyValueChangeOldKey]).to(beNil());\n\t\t\texpect(posteriorChange[NSKeyValueChangeNewKey]).to(equal(@[ @1 ]));\n\t\t});\n\n\t\tqck_it(@\"should support removing elements from unordered collections\", ^{\n\t\t\t[mutableKeyPathProxy minusOrderedSet:[NSOrderedSet orderedSetWithObject:@0]];\n\n\t\t\texpect(priorValue).to(equal([NSOrderedSet orderedSetWithArray:@[ @0 ]]));\n\t\t\texpect(posteriorValue).to(equal([NSOrderedSet orderedSetWithArray:@[]]));\n\t\t\texpect(priorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeRemoval)));\n\t\t\texpect(posteriorChange[NSKeyValueChangeKindKey]).to(equal(@(NSKeyValueChangeRemoval)));\n\t\t\texpect(priorChange[NSKeyValueChangeOldKey]).to(equal(@[ @0 ]));\n\t\t\texpect(posteriorChange[NSKeyValueChangeNewKey]).to(beNil());\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(RACKVOWrapperSpec)\n\nqck_describe(@\"-rac_observeKeyPath:options:observer:block:\", ^{\n\tqck_describe(@\"on simple keys\", ^{\n\t\tNSObject * (^targetBlock)(void) = ^{\n\t\t\treturn [[RACTestObject alloc] init];\n\t\t};\n\n\t\tvoid (^changeBlock)(RACTestObject *, id) = ^(RACTestObject *target, id value) {\n\t\t\ttarget.weakTestObjectValue = value;\n\t\t};\n\n\t\tid (^valueBlock)(void) = ^{\n\t\t\treturn [[RACTestObject alloc] init];\n\t\t};\n\n\t\tqck_itBehavesLike(RACKVOWrapperExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACKVOWrapperExamplesTargetBlock: targetBlock,\n\t\t\t\tRACKVOWrapperExamplesKeyPath: @keypath(RACTestObject.new, weakTestObjectValue),\n\t\t\t\tRACKVOWrapperExamplesChangeBlock: changeBlock,\n\t\t\t\tRACKVOWrapperExamplesValueBlock: valueBlock,\n\t\t\t\tRACKVOWrapperExamplesChangesValueDirectly: @YES\n\t\t\t};\n\t\t});\n\n\t\tqck_itBehavesLike(RACKVOWrapperCollectionExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACKVOWrapperCollectionExamplesTargetBlock: targetBlock,\n\t\t\t\tRACKVOWrapperCollectionExamplesKeyPath: @keypath(RACTestObject.new, orderedSetValue)\n\t\t\t};\n\t\t});\n\t});\n\n\tqck_describe(@\"on composite key paths'\", ^{\n\t\tqck_describe(@\"last key path components\", ^{\n\t\t\tNSObject *(^targetBlock)(void) = ^{\n\t\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\t\tobject.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\t\t\treturn object;\n\t\t\t};\n\n\t\t\tvoid (^changeBlock)(RACTestObject *, id) = ^(RACTestObject *target, id value) {\n\t\t\t\ttarget.strongTestObjectValue.weakTestObjectValue = value;\n\t\t\t};\n\n\t\t\tid (^valueBlock)(void) = ^{\n\t\t\t\treturn [[RACTestObject alloc] init];\n\t\t\t};\n\n\t\t\tqck_itBehavesLike(RACKVOWrapperExamples, ^{\n\t\t\t\treturn @{\n\t\t\t\t\tRACKVOWrapperExamplesTargetBlock: targetBlock,\n\t\t\t\t\tRACKVOWrapperExamplesKeyPath: @keypath(RACTestObject.new, strongTestObjectValue.weakTestObjectValue),\n\t\t\t\t\tRACKVOWrapperExamplesChangeBlock: changeBlock,\n\t\t\t\t\tRACKVOWrapperExamplesValueBlock: valueBlock,\n\t\t\t\t\tRACKVOWrapperExamplesChangesValueDirectly: @YES\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tqck_itBehavesLike(RACKVOWrapperCollectionExamples, ^{\n\t\t\t\treturn @{\n\t\t\t\t\tRACKVOWrapperCollectionExamplesTargetBlock: targetBlock,\n\t\t\t\t\tRACKVOWrapperCollectionExamplesKeyPath: @keypath(RACTestObject.new, strongTestObjectValue.orderedSetValue)\n\t\t\t\t};\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"intermediate key path components\", ^{\n\t\t\tNSObject *(^targetBlock)(void) = ^{\n\t\t\t\treturn [[RACTestObject alloc] init];\n\t\t\t};\n\n\t\t\tvoid (^changeBlock)(RACTestObject *, id) = ^(RACTestObject *target, id value) {\n\t\t\t\ttarget.weakTestObjectValue = value;\n\t\t\t};\n\n\t\t\tid (^valueBlock)(void) = ^{\n\t\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\t\t\t\tobject.strongTestObjectValue = [[RACTestObject alloc] init];\n\t\t\t\treturn object;\n\t\t\t};\n\n\t\t\tqck_itBehavesLike(RACKVOWrapperExamples, ^{\n\t\t\t\treturn @{\n\t\t\t\t\tRACKVOWrapperExamplesTargetBlock: targetBlock,\n\t\t\t\t\tRACKVOWrapperExamplesKeyPath: @keypath([[RACTestObject alloc] init], weakTestObjectValue.strongTestObjectValue),\n\t\t\t\t\tRACKVOWrapperExamplesChangeBlock: changeBlock,\n\t\t\t\t\tRACKVOWrapperExamplesValueBlock: valueBlock,\n\t\t\t\t\tRACKVOWrapperExamplesChangesValueDirectly: @NO\n\t\t\t\t};\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should not notice deallocation of the object returned by a dynamic final property\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t\t__block id lastValue = nil;\n\t\t\t@autoreleasepool {\n\t\t\t\t[object rac_observeKeyPath:@keypath(object.dynamicObjectProperty) options:NSKeyValueObservingOptionInitial observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\t\tlastValue = value;\n\t\t\t\t}];\n\n\t\t\t\texpect(lastValue).to(beAKindOf(RACTestObject.class));\n\t\t\t}\n\n\t\t\texpect(lastValue).to(beAKindOf(RACTestObject.class));\n\t\t});\n\n\t\tqck_it(@\"should not notice deallocation of the object returned by a dynamic intermediate property\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t\t__block id lastValue = nil;\n\t\t\t@autoreleasepool {\n\t\t\t\t[object rac_observeKeyPath:@keypath(object.dynamicObjectProperty.integerValue) options:NSKeyValueObservingOptionInitial observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\t\tlastValue = value;\n\t\t\t\t}];\n\n\t\t\t\texpect(lastValue).to(equal(@42));\n\t\t\t}\n\n\t\t\texpect(lastValue).to(equal(@42));\n\t\t});\n\n\t\tqck_it(@\"should not notice deallocation of the object returned by a dynamic method\", ^{\n\t\t\tRACTestObject *object = [[RACTestObject alloc] init];\n\n\t\t\t__block id lastValue = nil;\n\t\t\t@autoreleasepool {\n\t\t\t\t[object rac_observeKeyPath:@keypath(object.dynamicObjectMethod) options:NSKeyValueObservingOptionInitial observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\t\tlastValue = value;\n\t\t\t\t}];\n\n\t\t\t\texpect(lastValue).to(beAKindOf(RACTestObject.class));\n\t\t\t}\n\n\t\t\texpect(lastValue).to(beAKindOf(RACTestObject.class));\n\t\t});\n\t});\n\n\tqck_it(@\"should not call the callback block when the value is the observer\", ^{\n\t\t__block BOOL observerDisposed = NO;\n\t\t__block BOOL observerDeallocationTriggeredChange = NO;\n\t\t__block BOOL targetDisposed = NO;\n\t\t__block BOOL targetDeallocationTriggeredChange = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *observer __attribute__((objc_precise_lifetime)) = [RACTestObject new];\n\t\t\t[observer.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tobserverDisposed = YES;\n\t\t\t}]];\n\n\t\t\tRACTestObject *target __attribute__((objc_precise_lifetime)) = [RACTestObject new];\n\t\t\t[target.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\ttargetDisposed = YES;\n\t\t\t}]];\n\n\t\t\tobserver.weakTestObjectValue = observer;\n\t\t\ttarget.weakTestObjectValue = target;\n\n\t\t\t// These observations can only result in dealloc triggered callbacks.\n\t\t\t[observer rac_observeKeyPath:@keypath(target.weakTestObjectValue) options:0 observer:observer block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tobserverDeallocationTriggeredChange = YES;\n\t\t\t}];\n\n\t\t\t[target rac_observeKeyPath:@keypath(target.weakTestObjectValue) options:0 observer:observer block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\ttargetDeallocationTriggeredChange = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(observerDisposed)).to(beTruthy());\n\t\texpect(@(observerDeallocationTriggeredChange)).to(beFalsy());\n\n\t\texpect(@(targetDisposed)).to(beTruthy());\n\t\texpect(@(targetDeallocationTriggeredChange)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should call the callback block for deallocation of the initial value of a single-key key path\", ^{\n\t\tRACTestObject *target = [RACTestObject new];\n\t\t__block BOOL objectDisposed = NO;\n\t\t__block BOOL objectDeallocationTriggeredChange = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [RACTestObject new];\n\t\t\ttarget.weakTestObjectValue = object;\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tobjectDisposed = YES;\n\t\t\t}]];\n\n\t\t\t[target rac_observeKeyPath:@keypath(target.weakTestObjectValue) options:0 observer:target block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tobjectDeallocationTriggeredChange = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(objectDisposed)).to(beTruthy());\n\t\texpect(@(objectDeallocationTriggeredChange)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should call the callback block for deallocation of an object conforming to protocol property\", ^{\n\t\tRACTestObject *target = [RACTestObject new];\n\t\t__block BOOL objectDisposed = NO;\n\t\t__block BOOL objectDeallocationTriggeredChange = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *object __attribute__((objc_precise_lifetime)) = [RACTestObject new];\n\t\t\ttarget.weakObjectWithProtocol = object;\n\t\t\t[object.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tobjectDisposed = YES;\n\t\t\t}]];\n\n\t\t\t[target rac_observeKeyPath:@keypath(target.weakObjectWithProtocol) options:0 observer:target block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\t\tobjectDeallocationTriggeredChange = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(objectDisposed)).to(beTruthy());\n\t\texpect(@(objectDeallocationTriggeredChange)).to(beTruthy());\n    });\n});\n\nqck_describe(@\"rac_addObserver:forKeyPath:options:block:\", ^{\n\tqck_it(@\"should add and remove an observer\", ^{\n\t\tNSBlockOperation *operation = [NSBlockOperation blockOperationWithBlock:^{}];\n\t\texpect(operation).notTo(beNil());\n\n\t\t__block BOOL notified = NO;\n\t\tRACDisposable *disposable = [operation rac_observeKeyPath:@\"isFinished\" options:NSKeyValueObservingOptionNew observer:self block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\texpect([change objectForKey:NSKeyValueChangeNewKey]).to(equal(@YES));\n\n\t\t\texpect(@(notified)).to(beFalsy());\n\t\t\tnotified = YES;\n\t\t}];\n\n\t\texpect(disposable).notTo(beNil());\n\n\t\t[operation start];\n\t\t[operation waitUntilFinished];\n\n\t\texpect(@(notified)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should accept a nil observer\", ^{\n\t\tNSBlockOperation *operation = [NSBlockOperation blockOperationWithBlock:^{}];\n\t\tRACDisposable *disposable = [operation rac_observeKeyPath:@\"isFinished\" options:NSKeyValueObservingOptionNew observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {}];\n\n\t\texpect(disposable).notTo(beNil());\n\t});\n\n\tqck_context(@\"automatically stops KVO on subclasses when the target deallocates\", ^{\n\t\tvoid (^testKVOOnSubclass)(Class targetClass, id observer) = ^(Class targetClass, id observer) {\n\t\t\t__weak id weakTarget = nil;\n\t\t\t__weak id identifier = nil;\n\n\t\t\t@autoreleasepool {\n\t\t\t\t// Create an observable target that we control the memory management of.\n\t\t\t\tCFTypeRef target = CFBridgingRetain([[targetClass alloc] init]);\n\t\t\t\texpect((__bridge id)target).notTo(beNil());\n\n\t\t\t\tweakTarget = (__bridge id)target;\n\t\t\t\texpect(weakTarget).notTo(beNil());\n\n\t\t\t\tidentifier = [(__bridge id)target rac_observeKeyPath:@\"isFinished\" options:0 observer:observer block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {}];\n\t\t\t\texpect(identifier).notTo(beNil());\n\n\t\t\t\tCFRelease(target);\n\t\t\t}\n\n\t\t\texpect(weakTarget).to(beNil());\n\t\t\texpect(identifier).to(beNil());\n\t\t};\n\n\t\tqck_it(@\"stops KVO on NSObject subclasses\", ^{\n\t\t\ttestKVOOnSubclass(NSOperation.class, self);\n\t\t});\n\n\t\tqck_it(@\"stops KVO on subclasses of already-swizzled classes\", ^{\n\t\t\ttestKVOOnSubclass(RACTestOperation.class, self);\n\t\t});\n\n\t\tqck_it(@\"stops KVO on NSObject subclasses even with a nil observer\", ^{\n\t\t\ttestKVOOnSubclass(NSOperation.class, nil);\n\t\t});\n\n\t\tqck_it(@\"stops KVO on subclasses of already-swizzled classes even with a nil observer\", ^{\n\t\t\ttestKVOOnSubclass(RACTestOperation.class, nil);\n\t\t});\n\t});\n\n\tqck_it(@\"should automatically stop KVO when the observer deallocates\", ^{\n\t\t__weak id weakObserver = nil;\n\t\t__weak id weakIdentifier = nil;\n\n\t\tNSOperation *operation = [[NSOperation alloc] init];\n\n\t\t@autoreleasepool {\n\t\t\t// Create an observer that we control the memory management of.\n\t\t\tCFTypeRef observer = CFBridgingRetain([[NSOperation alloc] init]);\n\t\t\texpect((__bridge id)observer).notTo(beNil());\n\n\t\t\tweakObserver = (__bridge id)observer;\n\t\t\texpect(weakObserver).notTo(beNil());\n\n\t\t\tid identifier = [operation rac_observeKeyPath:@\"isFinished\" options:0 observer:(__bridge id)observer block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {}];\n\t\t\texpect(identifier).notTo(beNil());\n\n\t\t\tweakIdentifier = identifier;\n\t\t\texpect(weakIdentifier).notTo(beNil());\n\n\t\t\tCFRelease(observer);\n\t\t}\n\n\t\texpect(weakObserver).to(beNil());\n\t\texpect(weakIdentifier).to(beNil());\n\t});\n\n\tqck_it(@\"should stop KVO when the observer is disposed\", ^{\n\t\tNSOperationQueue *queue = [[NSOperationQueue alloc] init];\n\t\t__block NSString *name = nil;\n\n\t\tRACDisposable *disposable = [queue rac_observeKeyPath:@\"name\" options:0 observer:self block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\tname = queue.name;\n\t\t}];\n\n\t\tqueue.name = @\"1\";\n\t\texpect(name).to(equal(@\"1\"));\n\t\t[disposable dispose];\n\t\tqueue.name = @\"2\";\n\t\texpect(name).to(equal(@\"1\"));\n\t});\n\n\tqck_it(@\"should distinguish between observers being disposed\", ^{\n\t\tNSOperationQueue *queue = [[NSOperationQueue alloc] init];\n\t\t__block NSString *name1 = nil;\n\t\t__block NSString *name2 = nil;\n\n\t\tRACDisposable *disposable = [queue rac_observeKeyPath:@\"name\" options:0 observer:self block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\tname1 = queue.name;\n\t\t}];\n\t\t[queue rac_observeKeyPath:@\"name\" options:0 observer:self block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {\n\t\t\tname2 = queue.name;\n\t\t}];\n\n\t\tqueue.name = @\"1\";\n\t\texpect(name1).to(equal(@\"1\"));\n\t\texpect(name2).to(equal(@\"1\"));\n\t\t[disposable dispose];\n\t\tqueue.name = @\"2\";\n\t\texpect(name1).to(equal(@\"1\"));\n\t\texpect(name2).to(equal(@\"2\"));\n\t});\n});\n\nQuickSpecEnd\n\n@implementation RACTestOperation\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACMulticastConnectionSpec.m",
    "content": "//\n//  RACMulticastConnectionSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 10/8/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACMulticastConnection.h\"\n#import \"RACDisposable.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSubscriber.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n#import <libkern/OSAtomic.h>\n\nQuickSpecBegin(RACMulticastConnectionSpec)\n\n__block NSUInteger subscriptionCount = 0;\n__block RACMulticastConnection *connection;\n\nqck_beforeEach(^{\n\tsubscriptionCount = 0;\n\tconnection = [[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\tsubscriptionCount++;\n\t\treturn (RACDisposable *)nil;\n\t}] publish];\n\n\texpect(@(subscriptionCount)).to(equal(@0));\n});\n\nqck_describe(@\"-connect\", ^{\n\tqck_it(@\"should subscribe to the underlying signal\", ^{\n\t\t[connection connect];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should return the same disposable for each invocation\", ^{\n\t\tRACDisposable *d1 = [connection connect];\n\t\tRACDisposable *d2 = [connection connect];\n\t\texpect(d1).to(equal(d2));\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"shouldn't reconnect after disposal\", ^{\n\t\tRACDisposable *disposable1 = [connection connect];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\n\t\t[disposable1 dispose];\n\t\t\n\t\tRACDisposable *disposable2 = [connection connect];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t\texpect(disposable1).to(equal(disposable2));\n\t});\n\n\tqck_it(@\"shouldn't race when connecting\", ^{\n\t\tdispatch_semaphore_t semaphore = dispatch_semaphore_create(0);\n\n\t\tRACMulticastConnection *connection = [[RACSignal\n\t\t\tdefer:^ id {\n\t\t\t\tdispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);\n\t\t\t\treturn nil;\n\t\t\t}]\n\t\t\tpublish];\n\n\t\t__block RACDisposable *disposable;\n\t\t[RACScheduler.scheduler schedule:^{\n\t\t\tdisposable = [connection connect];\n\t\t\tdispatch_semaphore_signal(semaphore);\n\t\t}];\n\n\t\texpect([connection connect]).notTo(beNil());\n\t\tdispatch_semaphore_signal(semaphore);\n\n\t\texpect(disposable).toEventuallyNot(beNil());\n\t});\n});\n\nqck_describe(@\"-autoconnect\", ^{\n\t__block RACSignal *autoconnectedSignal;\n\t\n\tqck_beforeEach(^{\n\t\tautoconnectedSignal = [connection autoconnect];\n\t});\n\n\tqck_it(@\"should subscribe to the multicasted signal on the first subscription\", ^{\n\t\texpect(@(subscriptionCount)).to(equal(@0));\n\t\t\n\t\t[autoconnectedSignal subscribeNext:^(id x) {}];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\n\t\t[autoconnectedSignal subscribeNext:^(id x) {}];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should dispose of the multicasted subscription when the signal has no subscribers\", ^{\n\t\t__block BOOL disposed = NO;\n\t\t__block id<RACSubscriber> connectionSubscriber = nil;\n\t\tRACSignal *signal = [[[RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t// Keep the subscriber alive so it doesn't trigger disposal on dealloc\n\t\t\tconnectionSubscriber = subscriber;\n\t\t\tsubscriptionCount++;\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}] publish] autoconnect];\n\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {}];\n\n\t\texpect(@(disposed)).to(beFalsy());\n\t\t[disposable dispose];\n\t\texpect(@(disposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"shouldn't reconnect after disposal\", ^{\n\t\tRACDisposable *disposable = [autoconnectedSignal subscribeNext:^(id x) {}];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t\t[disposable dispose];\n\n\t\tdisposable = [autoconnectedSignal subscribeNext:^(id x) {}];\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t\t[disposable dispose];\n\t});\n\n\tqck_it(@\"should replay values after disposal when multicasted to a replay subject\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tRACSignal *signal = [[subject multicast:[RACReplaySubject subject]] autoconnect];\n\n\t\tNSMutableArray *results1 = [NSMutableArray array];\n\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {\n\t\t\t[results1 addObject:x];\n\t\t}];\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\t\n\t\texpect(results1).to(equal((@[ @1, @2 ])));\n\t\t[disposable dispose];\n\n\t\tNSMutableArray *results2 = [NSMutableArray array];\n\t\t[signal subscribeNext:^(id x) {\n\t\t\t[results2 addObject:x];\n\t\t}];\n\t\texpect(results2).toEventually(equal((@[ @1, @2 ])));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACPropertySignalExamples.h",
    "content": "//\n//  RACPropertySignalExamples.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for a signal-driven property.\nextern NSString * const RACPropertySignalExamples;\n\n// The block should have the signature:\n//\n//   void (^)(RACTestObject *testObject, NSString *keyPath, id nilValue, RACSignal *signal)\n//\n// and should tie the value of the key path on testObject to signal. `nilValue`\n// will be used when the signal sends a `nil` value.\nextern NSString * const RACPropertySignalExamplesSetupBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACPropertySignalExamples.m",
    "content": "//\n//  RACPropertySignalExamples.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/28/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"NSObject+RACSelectorSignal.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSubject.h\"\n\nNSString * const RACPropertySignalExamples = @\"RACPropertySignalExamples\";\nNSString * const RACPropertySignalExamplesSetupBlock = @\"RACPropertySignalExamplesSetupBlock\";\n\nQuickConfigurationBegin(RACPropertySignalExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACPropertySignalExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block RACTestObject *testObject = nil;\n\t\t__block void (^setupBlock)(RACTestObject *, NSString *keyPath, id nilValue, RACSignal *);\n\n\t\tqck_beforeEach(^{\n\t\t\tsetupBlock = exampleContext()[RACPropertySignalExamplesSetupBlock];\n\t\t\ttestObject = [[RACTestObject alloc] init];\n\t\t});\n\n\t\tqck_it(@\"should set the value of the property with the latest value from the signal\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.objectValue), nil, subject);\n\t\t\texpect(testObject.objectValue).to(beNil());\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(testObject.objectValue).to(equal(@1));\n\n\t\t\t[subject sendNext:@2];\n\t\t\texpect(testObject.objectValue).to(equal(@2));\n\n\t\t\t[subject sendNext:nil];\n\t\t\texpect(testObject.objectValue).to(beNil());\n\t\t});\n\n\t\tqck_it(@\"should set the given nilValue for an object property\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.objectValue), @\"foo\", subject);\n\t\t\texpect(testObject.objectValue).to(beNil());\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(testObject.objectValue).to(equal(@1));\n\n\t\t\t[subject sendNext:@2];\n\t\t\texpect(testObject.objectValue).to(equal(@2));\n\n\t\t\t[subject sendNext:nil];\n\t\t\texpect(testObject.objectValue).to(equal(@\"foo\"));\n\t\t});\n\n\t\tqck_it(@\"should leave the value of the property alone after the signal completes\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.objectValue), nil, subject);\n\t\t\texpect(testObject.objectValue).to(beNil());\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(testObject.objectValue).to(equal(@1));\n\n\t\t\t[subject sendCompleted];\n\t\t\texpect(testObject.objectValue).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should set the value of a non-object property with the latest value from the signal\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.integerValue), nil, subject);\n\t\t\texpect(@(testObject.integerValue)).to(equal(@0));\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@1));\n\n\t\t\t[subject sendNext:@2];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@2));\n\n\t\t\t[subject sendNext:@0];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@0));\n\t\t});\n\n\t\tqck_it(@\"should set the given nilValue for a non-object property\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.integerValue), @42, subject);\n\t\t\texpect(@(testObject.integerValue)).to(equal(@0));\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@1));\n\n\t\t\t[subject sendNext:@2];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@2));\n\n\t\t\t[subject sendNext:nil];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@42));\n\t\t});\n\n\t\tqck_it(@\"should not invoke -setNilValueForKey: with a nilValue\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.integerValue), @42, subject);\n\n\t\t\t__block BOOL setNilValueForKeyInvoked = NO;\n\t\t\t[[testObject rac_signalForSelector:@selector(setNilValueForKey:)] subscribeNext:^(NSString *key) {\n\t\t\t\tsetNilValueForKeyInvoked = YES;\n\t\t\t}];\n\n\t\t\t[subject sendNext:nil];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@42));\n\t\t\texpect(@(setNilValueForKeyInvoked)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should invoke -setNilValueForKey: without a nilValue\", ^{\n\t\t\tRACSubject *subject = [RACSubject subject];\n\t\t\tsetupBlock(testObject, @keypath(testObject.integerValue), nil, subject);\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@1));\n\n\t\t\ttestObject.catchSetNilValueForKey = YES;\n\n\t\t\t__block BOOL setNilValueForKeyInvoked = NO;\n\t\t\t[[testObject rac_signalForSelector:@selector(setNilValueForKey:)] subscribeNext:^(NSString *key) {\n\t\t\t\tsetNilValueForKeyInvoked = YES;\n\t\t\t}];\n\n\t\t\t[subject sendNext:nil];\n\t\t\texpect(@(testObject.integerValue)).to(equal(@1));\n\t\t\texpect(@(setNilValueForKeyInvoked)).to(beTruthy());\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSchedulerSpec.m",
    "content": "//\n//  RACSchedulerSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 11/29/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACScheduler.h\"\n#import \"RACScheduler+Private.h\"\n#import \"RACQueueScheduler+Subclass.h\"\n#import \"RACDisposable.h\"\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACTestExampleScheduler.h\"\n#import <libkern/OSAtomic.h>\n\n// This shouldn't be used directly. Use the `expectCurrentSchedulers` block\n// below instead.\nstatic void expectCurrentSchedulersInner(NSArray *schedulers, NSMutableArray *currentSchedulerArray) {\n\tif (schedulers.count > 0) {\n\t\tRACScheduler *topScheduler = schedulers[0];\n\t\t[topScheduler schedule:^{\n\t\t\tRACScheduler *currentScheduler = RACScheduler.currentScheduler;\n\t\t\tif (currentScheduler != nil) [currentSchedulerArray addObject:currentScheduler];\n\t\t\texpectCurrentSchedulersInner([schedulers subarrayWithRange:NSMakeRange(1, schedulers.count - 1)], currentSchedulerArray);\n\t\t}];\n\t}\n}\n\nQuickSpecBegin(RACSchedulerSpec)\n\nqck_it(@\"should know its current scheduler\", ^{\n\t// Recursively schedules a block in each of the given schedulers and records\n\t// the +currentScheduler at each step. It then expects the array of\n\t// +currentSchedulers and the expected array to be equal.\n\t//\n\t// schedulers                - The array of schedulers to recursively schedule.\n\t// expectedCurrentSchedulers - The array of +currentSchedulers to expect.\n\tvoid (^expectCurrentSchedulers)(NSArray *, NSArray *) = ^(NSArray *schedulers, NSArray *expectedCurrentSchedulers) {\n\t\tNSMutableArray *currentSchedulerArray = [NSMutableArray array];\n\t\texpectCurrentSchedulersInner(schedulers, currentSchedulerArray);\n\t\texpect(currentSchedulerArray).toEventually(equal(expectedCurrentSchedulers));\n\t};\n\n\tRACScheduler *backgroundScheduler = [RACScheduler scheduler];\n\n\texpectCurrentSchedulers(@[ backgroundScheduler, RACScheduler.immediateScheduler ], @[ backgroundScheduler, backgroundScheduler ]);\n\texpectCurrentSchedulers(@[ backgroundScheduler, RACScheduler.subscriptionScheduler ], @[ backgroundScheduler, backgroundScheduler ]);\n\n\tNSArray *mainThreadJumper = @[ RACScheduler.mainThreadScheduler, backgroundScheduler, RACScheduler.mainThreadScheduler ];\n\texpectCurrentSchedulers(mainThreadJumper, mainThreadJumper);\n\n\tNSArray *backgroundJumper = @[ backgroundScheduler, RACScheduler.mainThreadScheduler, backgroundScheduler ];\n\texpectCurrentSchedulers(backgroundJumper, backgroundJumper);\n});\n\nqck_describe(@\"+mainThreadScheduler\", ^{\n\tqck_it(@\"should cancel scheduled blocks when disposed\", ^{\n\t\t__block BOOL firstBlockRan = NO;\n\t\t__block BOOL secondBlockRan = NO;\n\n\t\tRACDisposable *disposable = [RACScheduler.mainThreadScheduler schedule:^{\n\t\t\tfirstBlockRan = YES;\n\t\t}];\n\n\t\texpect(disposable).notTo(beNil());\n\n\t\t[RACScheduler.mainThreadScheduler schedule:^{\n\t\t\tsecondBlockRan = YES;\n\t\t}];\n\n\t\t[disposable dispose];\n\n\t\texpect(@(secondBlockRan)).to(beFalsy());\n\t\texpect(@(secondBlockRan)).toEventually(beTruthy());\n\t\texpect(@(firstBlockRan)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should schedule future blocks\", ^{\n\t\t__block BOOL done = NO;\n\n\t\t[RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\tdone = YES;\n\t\t}];\n\n\t\texpect(@(done)).to(beFalsy());\n\t\texpect(@(done)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should cancel future blocks when disposed\", ^{\n\t\t__block BOOL firstBlockRan = NO;\n\t\t__block BOOL secondBlockRan = NO;\n\n\t\tRACDisposable *disposable = [RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\tfirstBlockRan = YES;\n\t\t}];\n\n\t\texpect(disposable).notTo(beNil());\n\n\t\t[RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\tsecondBlockRan = YES;\n\t\t}];\n\n\t\t[disposable dispose];\n\n\t\texpect(@(secondBlockRan)).to(beFalsy());\n\t\texpect(@(secondBlockRan)).toEventually(beTruthy());\n\t\texpect(@(firstBlockRan)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should schedule recurring blocks\", ^{\n\t\t__block NSUInteger count = 0;\n\n\t\tRACDisposable *disposable = [RACScheduler.mainThreadScheduler after:[NSDate date] repeatingEvery:0.05 withLeeway:0 schedule:^{\n\t\t\tcount++;\n\t\t}];\n\n\t\texpect(@(count)).to(equal(@0));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@1));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@2));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@3));\n\n\t\t[disposable dispose];\n\t\t[NSRunLoop.mainRunLoop runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];\n\n\t\texpect(@(count)).to(beGreaterThanOrEqualTo(@3));\n\t});\n});\n\nqck_describe(@\"+scheduler\", ^{\n\t__block RACScheduler *scheduler;\n\t__block NSDate * (^futureDate)(void);\n\n\tqck_beforeEach(^{\n\t\tscheduler = [RACScheduler scheduler];\n\n\t\tfutureDate = ^{\n\t\t\treturn [NSDate dateWithTimeIntervalSinceNow:0.01];\n\t\t};\n\t});\n\n\tqck_it(@\"should cancel scheduled blocks when disposed\", ^{\n\t\t__block BOOL firstBlockRan = NO;\n\t\t__block BOOL secondBlockRan = NO;\n\n\t\t// Start off on the scheduler so the enqueued blocks won't run until we\n\t\t// return.\n\t\t[scheduler schedule:^{\n\t\t\tRACDisposable *disposable = [scheduler schedule:^{\n\t\t\t\tfirstBlockRan = YES;\n\t\t\t}];\n\n\t\t\texpect(disposable).notTo(beNil());\n\n\t\t\t[scheduler schedule:^{\n\t\t\t\tsecondBlockRan = YES;\n\t\t\t}];\n\n\t\t\t[disposable dispose];\n\t\t}];\n\n\t\texpect(@(secondBlockRan)).toEventually(beTruthy());\n\t\texpect(@(firstBlockRan)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should schedule future blocks\", ^{\n\t\t__block BOOL done = NO;\n\n\t\t[scheduler after:futureDate() schedule:^{\n\t\t\tdone = YES;\n\t\t}];\n\n\t\texpect(@(done)).to(beFalsy());\n\t\texpect(@(done)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should cancel future blocks when disposed\", ^{\n\t\t__block BOOL firstBlockRan = NO;\n\t\t__block BOOL secondBlockRan = NO;\n\n\t\tNSDate *date = futureDate();\n\t\tRACDisposable *disposable = [scheduler after:date schedule:^{\n\t\t\tfirstBlockRan = YES;\n\t\t}];\n\n\t\texpect(disposable).notTo(beNil());\n\t\t[disposable dispose];\n\n\t\t[scheduler after:date schedule:^{\n\t\t\tsecondBlockRan = YES;\n\t\t}];\n\n\t\texpect(@(secondBlockRan)).to(beFalsy());\n\t\texpect(@(secondBlockRan)).toEventually(beTruthy());\n\t\texpect(@(firstBlockRan)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should schedule recurring blocks\", ^{\n\t\t__block NSUInteger count = 0;\n\n\t\tRACDisposable *disposable = [scheduler after:[NSDate date] repeatingEvery:0.05 withLeeway:0 schedule:^{\n\t\t\tcount++;\n\t\t}];\n\n\t\texpect(@(count)).to(beGreaterThanOrEqualTo(@0));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@1));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@2));\n\t\texpect(@(count)).toEventually(beGreaterThanOrEqualTo(@3));\n\n\t\t[disposable dispose];\n\t\t[NSThread sleepForTimeInterval:0.1];\n\n\t\texpect(@(count)).to(beGreaterThanOrEqualTo(@3));\n\t});\n});\n\nqck_describe(@\"+subscriptionScheduler\", ^{\n\tqck_describe(@\"setting +currentScheduler\", ^{\n\t\t__block RACScheduler *currentScheduler;\n\n\t\tqck_beforeEach(^{\n\t\t\tcurrentScheduler = nil;\n\t\t});\n\n\t\tqck_it(@\"should be the +mainThreadScheduler when scheduled from the main queue\", ^{\n\t\t\tdispatch_async(dispatch_get_main_queue(), ^{\n\t\t\t\t[RACScheduler.subscriptionScheduler schedule:^{\n\t\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\t\t\t});\n\n\t\t\texpect(currentScheduler).toEventually(equal(RACScheduler.mainThreadScheduler));\n\t\t});\n\n\t\tqck_it(@\"should be a +scheduler when scheduled from an unknown queue\", ^{\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t[RACScheduler.subscriptionScheduler schedule:^{\n\t\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\t\t\t});\n\n\t\t\texpect(currentScheduler).toEventuallyNot(beNil());\n\t\t\texpect(currentScheduler).notTo(equal(RACScheduler.mainThreadScheduler));\n\t\t});\n\n\t\tqck_it(@\"should equal the background scheduler from which the block was scheduled\", ^{\n\t\t\tRACScheduler *backgroundScheduler = [RACScheduler scheduler];\n\t\t\t[backgroundScheduler schedule:^{\n\t\t\t\t[RACScheduler.subscriptionScheduler schedule:^{\n\t\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\t\t\t}];\n\n\t\t\texpect(currentScheduler).toEventually(equal(backgroundScheduler));\n\t\t});\n\t});\n\n\tqck_it(@\"should execute scheduled blocks immediately if it's in a scheduler already\", ^{\n\t\t__block BOOL done = NO;\n\t\t__block BOOL executedImmediately = NO;\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t[RACScheduler.subscriptionScheduler schedule:^{\n\t\t\t\texecutedImmediately = YES;\n\t\t\t}];\n\n\t\t\tdone = YES;\n\t\t}];\n\n\t\texpect(@(done)).toEventually(beTruthy());\n\t\texpect(@(executedImmediately)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"+immediateScheduler\", ^{\n\tqck_it(@\"should immediately execute scheduled blocks\", ^{\n\t\t__block BOOL executed = NO;\n\t\tRACDisposable *disposable = [RACScheduler.immediateScheduler schedule:^{\n\t\t\texecuted = YES;\n\t\t}];\n\n\t\texpect(disposable).to(beNil());\n\t\texpect(@(executed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should block for future scheduled blocks\", ^{\n\t\t__block BOOL executed = NO;\n\t\tRACDisposable *disposable = [RACScheduler.immediateScheduler after:[NSDate dateWithTimeIntervalSinceNow:0.01] schedule:^{\n\t\t\texecuted = YES;\n\t\t}];\n\n\t\texpect(@(executed)).to(beTruthy());\n\t\texpect(disposable).to(beNil());\n\t});\n});\n\nqck_describe(@\"-scheduleRecursiveBlock:\", ^{\n\tqck_describe(@\"with a synchronous scheduler\", ^{\n\t\tqck_it(@\"should behave like a normal block when it doesn't invoke itself\", ^{\n\t\t\t__block BOOL executed = NO;\n\t\t\t[RACScheduler.immediateScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\texpect(@(executed)).to(beFalsy());\n\t\t\t\texecuted = YES;\n\t\t\t}];\n\n\t\t\texpect(@(executed)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should reschedule itself after the caller completes\", ^{\n\t\t\t__block NSUInteger count = 0;\n\t\t\t[RACScheduler.immediateScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\tNSUInteger thisCount = ++count;\n\t\t\t\tif (thisCount < 3) {\n\t\t\t\t\trecurse();\n\n\t\t\t\t\t// The block shouldn't have been invoked again yet, only\n\t\t\t\t\t// scheduled.\n\t\t\t\t\texpect(@(count)).to(equal(@(thisCount)));\n\t\t\t\t}\n\t\t\t}];\n\n\t\t\texpect(@(count)).to(equal(@3));\n\t\t});\n\n\t\tqck_it(@\"should unroll deep recursion\", ^{\n\t\t\tstatic const NSUInteger depth = 100000;\n\t\t\t__block NSUInteger scheduleCount = 0;\n\t\t\t[RACScheduler.immediateScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\tscheduleCount++;\n\n\t\t\t\tif (scheduleCount < depth) recurse();\n\t\t\t}];\n\n\t\t\texpect(@(scheduleCount)).to(equal(@(depth)));\n\t\t});\n\t});\n\n\tqck_describe(@\"with an asynchronous scheduler\", ^{\n\t\tqck_it(@\"should behave like a normal block when it doesn't invoke itself\", ^{\n\t\t\t__block BOOL executed = NO;\n\t\t\t[RACScheduler.mainThreadScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\texpect(@(executed)).to(beFalsy());\n\t\t\t\texecuted = YES;\n\t\t\t}];\n\n\t\t\texpect(@(executed)).toEventually(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should reschedule itself after the caller completes\", ^{\n\t\t\t__block NSUInteger count = 0;\n\t\t\t[RACScheduler.mainThreadScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\tNSUInteger thisCount = ++count;\n\t\t\t\tif (thisCount < 3) {\n\t\t\t\t\trecurse();\n\n\t\t\t\t\t// The block shouldn't have been invoked again yet, only\n\t\t\t\t\t// scheduled.\n\t\t\t\t\texpect(@(count)).to(equal(@(thisCount)));\n\t\t\t\t}\n\t\t\t}];\n\n\t\t\texpect(@(count)).toEventually(equal(@3));\n\t\t});\n\n\t\tqck_it(@\"should reschedule when invoked asynchronously\", ^{\n\t\t\t__block NSUInteger count = 0;\n\n\t\t\tRACScheduler *asynchronousScheduler = [RACScheduler scheduler];\n\t\t\t[RACScheduler.mainThreadScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\t[asynchronousScheduler after:[NSDate dateWithTimeIntervalSinceNow:0.01] schedule:^{\n\t\t\t\t\tNSUInteger thisCount = ++count;\n\t\t\t\t\tif (thisCount < 3) {\n\t\t\t\t\t\trecurse();\n\n\t\t\t\t\t\t// The block shouldn't have been invoked again yet, only\n\t\t\t\t\t\t// scheduled.\n\t\t\t\t\t\texpect(@(count)).to(equal(@(thisCount)));\n\t\t\t\t\t}\n\t\t\t\t}];\n\t\t\t}];\n\n\t\t\texpect(@(count)).toEventually(equal(@3));\n\t\t});\n\n\t\tqck_it(@\"shouldn't reschedule itself when disposed\", ^{\n\t\t\t__block NSUInteger count = 0;\n\t\t\t__block RACDisposable *disposable = [RACScheduler.mainThreadScheduler scheduleRecursiveBlock:^(void (^recurse)(void)) {\n\t\t\t\t++count;\n\n\t\t\t\texpect(disposable).notTo(beNil());\n\t\t\t\t[disposable dispose];\n\n\t\t\t\trecurse();\n\t\t\t}];\n\n\t\t\texpect(@(count)).toEventually(equal(@1));\n\t\t});\n\t});\n});\n\nqck_describe(@\"subclassing\", ^{\n\t__block RACTestExampleScheduler *scheduler;\n\n\tqck_beforeEach(^{\n\t\tscheduler = [[RACTestExampleScheduler alloc] initWithQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)];\n\t});\n\n\tqck_it(@\"should invoke blocks scheduled with -schedule:\", ^{\n\t\t__block BOOL invoked = NO;\n\t\t[scheduler schedule:^{\n\t\t\tinvoked = YES;\n\t\t}];\n\n\t\texpect(@(invoked)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should invoke blocks scheduled with -after:schedule:\", ^{\n\t\t__block BOOL invoked = NO;\n\t\t[scheduler after:[NSDate dateWithTimeIntervalSinceNow:0.01] schedule:^{\n\t\t\tinvoked = YES;\n\t\t}];\n\n\t\texpect(@(invoked)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should set a valid current scheduler\", ^{\n\t\t__block RACScheduler *currentScheduler;\n\t\t[scheduler schedule:^{\n\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t}];\n\n\t\texpect(currentScheduler).toEventually(equal(scheduler));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSequenceAdditionsSpec.m",
    "content": "//\n//  RACSequenceAdditionsSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSequenceExamples.h\"\n\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"NSDictionary+RACSequenceAdditions.h\"\n#import \"NSOrderedSet+RACSequenceAdditions.h\"\n#import \"NSSet+RACSequenceAdditions.h\"\n#import \"NSString+RACSequenceAdditions.h\"\n#import \"NSIndexSet+RACSequenceAdditions.h\"\n#import \"RACSequence.h\"\n#import \"RACTuple.h\"\n\nQuickSpecBegin(RACSequenceAdditionsSpec)\n\n__block NSArray *numbers;\n\nqck_beforeEach(^{\n\tNSMutableArray *mutableNumbers = [NSMutableArray array];\n\tfor (NSUInteger i = 0; i < 100; i++) {\n\t\t[mutableNumbers addObject:@(i)];\n\t}\n\n\tnumbers = [mutableNumbers copy];\n});\n\nqck_describe(@\"NSArray sequences\", ^{\n\t__block NSMutableArray *values;\n\t__block RACSequence *sequence;\n\t\n\tqck_beforeEach(^{\n\t\tvalues = [numbers mutableCopy];\n\t\tsequence = values.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: values\n\t\t};\n\t});\n\n\tqck_describe(@\"should be immutable\", ^{\n\t\t__block NSArray *unchangedValues;\n\t\t\n\t\tqck_beforeEach(^{\n\t\t\tunchangedValues = [values copy];\n\t\t\t[values addObject:@6];\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: unchangedValues\n\t\t\t};\n\t\t});\n\t});\n\n\tqck_it(@\"should fast enumerate after zipping\", ^{\n\t\t// This certain list of values causes issues, for some reason.\n\t\tNSArray *values = @[ @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0, @0 ];\n\t\tRACSequence *zippedSequence = [RACSequence zip:@[ values.rac_sequence, values.rac_sequence ] reduce:^(id obj1, id obj2) {\n\t\t\treturn obj1;\n\t\t}];\n\n\t\tNSMutableArray *collectedValues = [NSMutableArray array];\n\t\tfor (id value in zippedSequence) {\n\t\t\t[collectedValues addObject:value];\n\t\t}\n\n\t\texpect(collectedValues).to(equal(values));\n\t});\n});\n\nqck_describe(@\"NSDictionary sequences\", ^{\n\t__block NSMutableDictionary *dict;\n\n\t__block NSMutableArray *tuples;\n\t__block RACSequence *tupleSequence;\n\n\t__block NSArray *keys;\n\t__block RACSequence *keySequence;\n\n\t__block NSArray *values;\n\t__block RACSequence *valueSequence;\n\n\tqck_beforeEach(^{\n\t\tdict = [@{\n\t\t\t@\"foo\": @\"bar\",\n\t\t\t@\"baz\": @\"buzz\",\n\t\t\t@5: NSNull.null\n\t\t} mutableCopy];\n\n\t\ttuples = [NSMutableArray array];\n\t\tfor (id key in dict) {\n\t\t\tRACTuple *tuple = RACTuplePack(key, dict[key]);\n\t\t\t[tuples addObject:tuple];\n\t\t}\n\n\t\ttupleSequence = dict.rac_sequence;\n\t\texpect(tupleSequence).notTo(beNil());\n\n\t\tkeys = [dict.allKeys copy];\n\t\tkeySequence = dict.rac_keySequence;\n\t\texpect(keySequence).notTo(beNil());\n\n\t\tvalues = [dict.allValues copy];\n\t\tvalueSequence = dict.rac_valueSequence;\n\t\texpect(valueSequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: tupleSequence,\n\t\t\tRACSequenceExampleExpectedValues: tuples\n\t\t};\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: keySequence,\n\t\t\tRACSequenceExampleExpectedValues: keys\n\t\t};\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: valueSequence,\n\t\t\tRACSequenceExampleExpectedValues: values\n\t\t};\n\t});\n\n\tqck_describe(@\"should be immutable\", ^{\n\t\tqck_beforeEach(^{\n\t\t\tdict[@\"foo\"] = @\"rab\";\n\t\t\tdict[@6] = @7;\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: tupleSequence,\n\t\t\t\tRACSequenceExampleExpectedValues: tuples\n\t\t\t};\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: keySequence,\n\t\t\t\tRACSequenceExampleExpectedValues: keys\n\t\t\t};\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: valueSequence,\n\t\t\t\tRACSequenceExampleExpectedValues: values\n\t\t\t};\n\t\t});\n\t});\n});\n\nqck_describe(@\"NSOrderedSet sequences\", ^{\n\t__block NSMutableOrderedSet *values;\n\t__block RACSequence *sequence;\n\n\tqck_beforeEach(^{\n\t\tvalues = [NSMutableOrderedSet orderedSetWithArray:numbers];\n\t\tsequence = values.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: values.array\n\t\t};\n\t});\n\n\tqck_describe(@\"should be immutable\", ^{\n\t\t__block NSArray *unchangedValues;\n\t\t\n\t\tqck_beforeEach(^{\n\t\t\tunchangedValues = [values.array copy];\n\t\t\t[values addObject:@6];\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: unchangedValues\n\t\t\t};\n\t\t});\n\t});\n});\n\nqck_describe(@\"NSSet sequences\", ^{\n\t__block NSMutableSet *values;\n\t__block RACSequence *sequence;\n\n\tqck_beforeEach(^{\n\t\tvalues = [NSMutableSet setWithArray:numbers];\n\t\tsequence = values.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: values.allObjects\n\t\t};\n\t});\n\n\tqck_describe(@\"should be immutable\", ^{\n\t\t__block NSArray *unchangedValues;\n\t\t\n\t\tqck_beforeEach(^{\n\t\t\tunchangedValues = [values.allObjects copy];\n\t\t\t[values addObject:@6];\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: unchangedValues\n\t\t\t};\n\t\t});\n\t});\n});\n\nqck_describe(@\"NSString sequences\", ^{\n\t__block NSMutableString *string;\n\t__block NSArray *values;\n\t__block RACSequence *sequence;\n\n\tqck_beforeEach(^{\n\t\tstring = [@\"foobar\" mutableCopy];\n\t\tvalues = @[ @\"f\", @\"o\", @\"o\", @\"b\", @\"a\", @\"r\" ];\n\t\tsequence = string.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: values\n\t\t};\n\t});\n\n\tqck_describe(@\"should be immutable\", ^{\n\t\tqck_beforeEach(^{\n\t\t\t[string appendString:@\"buzz\"];\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: values\n\t\t\t};\n\t\t});\n\t});\n\n\tqck_it(@\"should work with composed characters\", ^{\n\t\tNSString  *string = @\"\\u2665\\uFE0F\\u2666\\uFE0F\";\n\t\tNSArray *expectedSequence = @[ @\"\\u2665\\uFE0F\", @\"\\u2666\\uFE0F\" ];\n\t\texpect(string.rac_sequence.array).to(equal(expectedSequence));\n\t});\n});\n\nqck_describe(@\"RACTuple sequences\", ^{\n\t__block RACTuple *tuple;\n\t__block RACSequence *sequence;\n\t\n\tqck_beforeEach(^{\n\t\ttuple = RACTuplePack(@\"foo\", nil, @\"bar\", NSNull.null, RACTupleNil.tupleNil);\n\n\t\tsequence = tuple.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: @[ @\"foo\", NSNull.null, @\"bar\", NSNull.null, NSNull.null ]\n\t\t};\n\t});\n});\n\nqck_describe(@\"NSIndexSet sequences\", ^{\n\t__block NSMutableIndexSet *values;\n\t__block RACSequence *sequence;\n\t\n\tNSArray * (^valuesFromIndexSet)(NSIndexSet *indexSet) =  ^NSArray *(NSIndexSet *indexSet) {\n\t\tNSMutableArray *arr = [NSMutableArray array];\n\t\t[indexSet enumerateIndexesUsingBlock:^(NSUInteger idx, BOOL *stop) {\n\t\t\t[arr addObject:@(idx)];\n\t\t}];\n\n\t\treturn [arr copy];\n\t};\n\t\n\tqck_beforeEach(^{\n\t\tvalues = [NSMutableIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 10)];\n\t\tsequence = values.rac_sequence;\n\t\texpect(sequence).notTo(beNil());\n\t});\n\t\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\tRACSequenceExampleExpectedValues: valuesFromIndexSet(values)\n\t\t};\n\t});\n\t\n\tqck_describe(@\"should be immutable\", ^{\n\t\t__block NSArray *unchangedValues;\n\t\t\n\t\tqck_beforeEach(^{\n\t\t\tunchangedValues = valuesFromIndexSet(values);\n\t\t\t[values addIndex:20];\n\t\t});\n\t\t\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: unchangedValues\n\t\t\t};\n\t\t});\n\t});\n\t\n\tqck_describe(@\"should not fire if empty\", ^{\n\t\t__block NSIndexSet *emptyIndexSet;\n\t\t__block RACSequence *emptySequence;\n\n\t\tqck_beforeEach(^{\n\t\t\temptyIndexSet = [NSIndexSet indexSet];\n\t\t\temptySequence = emptyIndexSet.rac_sequence;\n\t\t\texpect(emptySequence).notTo(beNil());\n\t\t});\n\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: emptySequence,\n\t\t\t\tRACSequenceExampleExpectedValues: valuesFromIndexSet(emptyIndexSet)\n\t\t\t};\n\t\t});\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSequenceExamples.h",
    "content": "//\n//  RACSequenceExamples.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for RACSequence instances.\nextern NSString * const RACSequenceExamples;\n\n// RACSequence *\nextern NSString * const RACSequenceExampleSequence;\n\n// NSArray *\nextern NSString * const RACSequenceExampleExpectedValues;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSequenceExamples.m",
    "content": "//\n//  RACSequenceExamples.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSequenceExamples.h\"\n\n#import \"RACScheduler.h\"\n#import \"RACSequence.h\"\n#import \"RACSignal+Operations.h\"\n\nNSString * const RACSequenceExamples = @\"RACSequenceExamples\";\nNSString * const RACSequenceExampleSequence = @\"RACSequenceExampleSequence\";\nNSString * const RACSequenceExampleExpectedValues = @\"RACSequenceExampleExpectedValues\";\n\nQuickConfigurationBegin(RACSequenceExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACSequenceExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block RACSequence *sequence;\n\t\t__block NSArray *values;\n\n\t\tqck_beforeEach(^{\n\t\t\tsequence = exampleContext()[RACSequenceExampleSequence];\n\t\t\tvalues = [exampleContext()[RACSequenceExampleExpectedValues] copy];\n\t\t});\n\n\t\tqck_it(@\"should implement <NSFastEnumeration>\", ^{\n\t\t\tNSMutableArray *collectedValues = [NSMutableArray array];\n\t\t\tfor (id value in sequence) {\n\t\t\t\t[collectedValues addObject:value];\n\t\t\t}\n\n\t\t\texpect(collectedValues).to(equal(values));\n\t\t});\n\n\t\tqck_it(@\"should return an array\", ^{\n\t\t\texpect(sequence.array).to(equal(values));\n\t\t});\n\n\t\tqck_describe(@\"-signalWithScheduler:\", ^{\n\t\t\tqck_it(@\"should return an immediately scheduled signal\", ^{\n\t\t\t\tRACSignal *signal = [sequence signalWithScheduler:RACScheduler.immediateScheduler];\n\t\t\t\texpect(signal.toArray).to(equal(values));\n\t\t\t});\n\n\t\t\tqck_it(@\"should return a background scheduled signal\", ^{\n\t\t\t\tRACSignal *signal = [sequence signalWithScheduler:[RACScheduler scheduler]];\n\t\t\t\texpect(signal.toArray).to(equal(values));\n\t\t\t});\n\n\t\t\tqck_it(@\"should only evaluate one value per scheduling\", ^{\n\t\t\t\tRACScheduler* scheduler = [RACScheduler schedulerWithPriority:RACSchedulerPriorityHigh];\n\t\t\t\tRACSignal *signal = [sequence signalWithScheduler:scheduler];\n\n\t\t\t\t__block BOOL flag = YES;\n\t\t\t\t__block BOOL completed = NO;\n\t\t\t\t[signal subscribeNext:^(id x) {\n\t\t\t\t\texpect(@(flag)).to(beTruthy());\n\t\t\t\t\tflag = NO;\n\n\t\t\t\t\t[scheduler schedule:^{\n\t\t\t\t\t\t// This should get executed before the next value (which\n\t\t\t\t\t\t// verifies that it's YES).\n\t\t\t\t\t\tflag = YES;\n\t\t\t\t\t}];\n\t\t\t\t} completed:^{\n\t\t\t\t\tcompleted = YES;\n\t\t\t\t}];\n\n\t\t\t\texpect(@(completed)).toEventually(beTruthy());\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should be equal to itself\", ^{\n\t\t\texpect(sequence).to(equal(sequence));\n\t\t});\n\n\t\tqck_it(@\"should be equal to the same sequence of values\", ^{\n\t\t\tRACSequence *newSequence = RACSequence.empty;\n\t\t\tfor (id value in values) {\n\t\t\t\tRACSequence *valueSeq = [RACSequence return:value];\n\t\t\t\texpect(valueSeq).notTo(beNil());\n\n\t\t\t\tnewSequence = [newSequence concat:valueSeq];\n\t\t\t}\n\n\t\t\texpect(sequence).to(equal(newSequence));\n\t\t\texpect(@(sequence.hash)).to(equal(@(newSequence.hash)));\n\t\t});\n\n\t\tqck_it(@\"should not be equal to a different sequence of values\", ^{\n\t\t\tRACSequence *anotherSequence = [RACSequence return:@(-1)];\n\t\t\texpect(sequence).notTo(equal(anotherSequence));\n\t\t});\n\n\t\tqck_it(@\"should return an identical object for -copy\", ^{\n\t\t\texpect([sequence copy]).to(beIdenticalTo(sequence));\n\t\t});\n\n\t\tqck_it(@\"should archive\", ^{\n\t\t\tNSData *data = [NSKeyedArchiver archivedDataWithRootObject:sequence];\n\t\t\texpect(data).notTo(beNil());\n\n\t\t\tRACSequence *unarchived = [NSKeyedUnarchiver unarchiveObjectWithData:data];\n\t\t\texpect(unarchived).to(equal(sequence));\n\t\t});\n\n\t\tqck_it(@\"should fold right\", ^{\n\t\t\tRACSequence *result = [sequence foldRightWithStart:[RACSequence empty] reduce:^(id first, RACSequence *rest) {\n\t\t\t\treturn [rest.head startWith:first];\n\t\t\t}];\n\t\t\texpect(result.array).to(equal(values));\n\t\t});\n\n\t\tqck_it(@\"should fold left\", ^{\n\t\t\tRACSequence *result = [sequence foldLeftWithStart:[RACSequence empty] reduce:^(RACSequence *first, id rest) {\n\t\t\t\treturn [first concat:[RACSequence return:rest]];\n\t\t\t}];\n\t\t\texpect(result.array).to(equal(values));\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSequenceSpec.m",
    "content": "//\n//  RACSequenceSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSequenceExamples.h\"\n#import \"RACStreamExamples.h\"\n\n#import \"NSArray+RACSequenceAdditions.h\"\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSequence.h\"\n#import \"RACUnit.h\"\n\nQuickSpecBegin(RACSequenceSpec)\n\nqck_describe(@\"RACStream\", ^{\n\tid verifyValues = ^(RACSequence *sequence, NSArray *expectedValues) {\n\t\tNSMutableArray *collectedValues = [NSMutableArray array];\n\t\twhile (sequence.head != nil) {\n\t\t\t[collectedValues addObject:sequence.head];\n\t\t\tsequence = sequence.tail;\n\t\t}\n\n\t\texpect(collectedValues).to(equal(expectedValues));\n\t};\n\n\t__block RACSequence *infiniteSequence = [RACSequence sequenceWithHeadBlock:^{\n\t\treturn RACUnit.defaultUnit;\n\t} tailBlock:^{\n\t\treturn infiniteSequence;\n\t}];\n\n\tqck_itBehavesLike(RACStreamExamples, ^{\n\t\treturn @{\n\t\t\tRACStreamExamplesClass: RACSequence.class,\n\t\t\tRACStreamExamplesVerifyValuesBlock: verifyValues,\n\t\t\tRACStreamExamplesInfiniteStream: infiniteSequence\n\t\t};\n\t});\n});\n\nqck_describe(@\"+sequenceWithHeadBlock:tailBlock:\", ^{\n\t__block RACSequence *sequence;\n\t__block BOOL headInvoked;\n\t__block BOOL tailInvoked;\n\n\tqck_beforeEach(^{\n\t\theadInvoked = NO;\n\t\ttailInvoked = NO;\n\n\t\tsequence = [RACSequence sequenceWithHeadBlock:^{\n\t\t\theadInvoked = YES;\n\t\t\treturn @0;\n\t\t} tailBlock:^{\n\t\t\ttailInvoked = YES;\n\t\t\treturn [RACSequence return:@1];\n\t\t}];\n\n\t\texpect(sequence).notTo(beNil());\n\t});\n\n\tqck_it(@\"should use the values from the head and tail blocks\", ^{\n\t\texpect(sequence.head).to(equal(@0));\n\t\texpect(sequence.tail.head).to(equal(@1));\n\t\texpect(sequence.tail.tail).to(beNil());\n\t});\n\n\tqck_it(@\"should lazily invoke head and tail blocks\", ^{\n\t\texpect(@(headInvoked)).to(beFalsy());\n\t\texpect(@(tailInvoked)).to(beFalsy());\n\n\t\texpect(sequence.head).to(equal(@0));\n\t\texpect(@(headInvoked)).to(beTruthy());\n\t\texpect(@(tailInvoked)).to(beFalsy());\n\n\t\texpect(sequence.tail).notTo(beNil());\n\t\texpect(@(tailInvoked)).to(beTruthy());\n\t});\n\n\tqck_context(@\"behaves like a sequence\", ^{\n\t\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSequenceExampleSequence: sequence,\n\t\t\t\tRACSequenceExampleExpectedValues: @[ @0, @1 ]\n\t\t\t};\n\t\t});\n\t});\n});\n\nqck_describe(@\"empty sequences\", ^{\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: [RACSequence empty],\n\t\t\tRACSequenceExampleExpectedValues: @[]\n\t\t};\n\t});\n});\n\nqck_describe(@\"non-empty sequences\", ^{\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]],\n\t\t\tRACSequenceExampleExpectedValues: @[ @0, @1, @2 ]\n\t\t};\n\t});\n});\n\nqck_describe(@\"eager sequences\", ^{\n\t__block RACSequence *lazySequence;\n\t__block BOOL headInvoked;\n\t__block BOOL tailInvoked;\n\n\tNSArray *values = @[ @0, @1 ];\n\t\n\tqck_beforeEach(^{\n\t\theadInvoked = NO;\n\t\ttailInvoked = NO;\n\t\t\n\t\tlazySequence = [RACSequence sequenceWithHeadBlock:^{\n\t\t\theadInvoked = YES;\n\t\t\treturn @0;\n\t\t} tailBlock:^{\n\t\t\ttailInvoked = YES;\n\t\t\treturn [RACSequence return:@1];\n\t\t}];\n\t\t\n\t\texpect(lazySequence).notTo(beNil());\n\t});\n\t\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: lazySequence.eagerSequence,\n\t\t\tRACSequenceExampleExpectedValues: values\n\t\t};\n\t});\n\t\n\tqck_it(@\"should evaluate all values immediately\", ^{\n\t\tRACSequence *eagerSequence = lazySequence.eagerSequence;\n\t\texpect(@(headInvoked)).to(beTruthy());\n\t\texpect(@(tailInvoked)).to(beTruthy());\n\t\texpect(eagerSequence.array).to(equal(values));\n\t});\n});\n\nqck_describe(@\"-take:\", ^{\n\tqck_it(@\"should complete take: without needing the head of the second item in the sequence\", ^{\n\t\t__block NSUInteger valuesTaken = 0;\n\n\t\t__block RACSequence *sequence = [RACSequence sequenceWithHeadBlock:^{\n\t\t\t++valuesTaken;\n\t\t\treturn RACUnit.defaultUnit;\n\t\t} tailBlock:^{\n\t\t\treturn sequence;\n\t\t}];\n\n\t\tNSArray *values = [sequence take:1].array;\n\t\texpect(values).to(equal(@[ RACUnit.defaultUnit ]));\n\t\texpect(@(valuesTaken)).to(equal(@1));\n\t});\n});\n\nqck_describe(@\"-bind:\", ^{\n\tqck_it(@\"should only evaluate head when the resulting sequence is evaluated\", ^{\n\t\t__block BOOL headInvoked = NO;\n\n\t\tRACSequence *original = [RACSequence sequenceWithHeadBlock:^{\n\t\t\theadInvoked = YES;\n\t\t\treturn RACUnit.defaultUnit;\n\t\t} tailBlock:^ id {\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACSequence *bound = [original bind:^{\n\t\t\treturn ^(id value, BOOL *stop) {\n\t\t\t\treturn [RACSequence return:value];\n\t\t\t};\n\t\t}];\n\n\t\texpect(bound).notTo(beNil());\n\t\texpect(@(headInvoked)).to(beFalsy());\n\n\t\texpect(bound.head).to(equal(RACUnit.defaultUnit));\n\t\texpect(@(headInvoked)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-objectEnumerator\", ^{\n\tqck_it(@\"should only evaluate head as it's enumerated\", ^{\n\t\t__block BOOL firstHeadInvoked = NO;\n\t\t__block BOOL secondHeadInvoked = NO;\n\t\t__block BOOL thirdHeadInvoked = NO;\n\t\t\n\t\tRACSequence *sequence = [RACSequence sequenceWithHeadBlock:^id{\n\t\t\tfirstHeadInvoked = YES;\n\t\t\treturn @1;\n\t\t} tailBlock:^RACSequence *{\n\t\t\treturn [RACSequence sequenceWithHeadBlock:^id{\n\t\t\t\tsecondHeadInvoked = YES;\n\t\t\t\treturn @2;\n\t\t\t} tailBlock:^RACSequence *{\n\t\t\t\treturn [RACSequence sequenceWithHeadBlock:^id{\n\t\t\t\t\tthirdHeadInvoked = YES;\n\t\t\t\t\treturn @3;\n\t\t\t\t} tailBlock:^RACSequence *{\n\t\t\t\t\treturn RACSequence.empty;\n\t\t\t\t}];\n\t\t\t}];\n\t\t}];\n\t\tNSEnumerator *enumerator = sequence.objectEnumerator;\n\t\t\n\t\texpect(@(firstHeadInvoked)).to(beFalsy());\n\t\texpect(@(secondHeadInvoked)).to(beFalsy());\n\t\texpect(@(thirdHeadInvoked)).to(beFalsy());\n\t\t\n\t\texpect([enumerator nextObject]).to(equal(@1));\n\t\t\n\t\texpect(@(firstHeadInvoked)).to(beTruthy());\n\t\texpect(@(secondHeadInvoked)).to(beFalsy());\n\t\texpect(@(thirdHeadInvoked)).to(beFalsy());\n\t\t\n\t\texpect([enumerator nextObject]).to(equal(@2));\n\t\t\n\t\texpect(@(secondHeadInvoked)).to(beTruthy());\n\t\texpect(@(thirdHeadInvoked)).to(beFalsy());\n\t\t\n\t\texpect([enumerator nextObject]).to(equal(@3));\n\t\t\n\t\texpect(@(thirdHeadInvoked)).to(beTruthy());\n\t\t\n\t\texpect([enumerator nextObject]).to(beNil());\n\t});\n\t\n\tqck_it(@\"should let the sequence dealloc as it's enumerated\", ^{\n\t\t__block BOOL firstSequenceDeallocd = NO;\n\t\t__block BOOL secondSequenceDeallocd = NO;\n\t\t__block BOOL thirdSequenceDeallocd = NO;\n\t\t\n\t\tNSEnumerator *enumerator = nil;\n\t\t\n\t\t@autoreleasepool {\n\t\t\tRACSequence *thirdSequence __attribute__((objc_precise_lifetime)) = [RACSequence sequenceWithHeadBlock:^id{\n\t\t\t\treturn @3;\n\t\t\t} tailBlock:^RACSequence *{\n\t\t\t\treturn RACSequence.empty;\n\t\t\t}];\n\t\t\t[thirdSequence.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tthirdSequenceDeallocd = YES;\n\t\t\t}]];\n\t\t\t\n\t\t\tRACSequence *secondSequence __attribute__((objc_precise_lifetime)) = [RACSequence sequenceWithHeadBlock:^id{\n\t\t\t\treturn @2;\n\t\t\t} tailBlock:^RACSequence *{\n\t\t\t\treturn thirdSequence;\n\t\t\t}];\n\t\t\t[secondSequence.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsecondSequenceDeallocd = YES;\n\t\t\t}]];\n\t\t\t\n\t\t\tRACSequence *firstSequence __attribute__((objc_precise_lifetime)) = [RACSequence sequenceWithHeadBlock:^id{\n\t\t\t\treturn @1;\n\t\t\t} tailBlock:^RACSequence *{\n\t\t\t\treturn secondSequence;\n\t\t\t}];\n\t\t\t[firstSequence.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tfirstSequenceDeallocd = YES;\n\t\t\t}]];\n\t\t\t\n\t\t\tenumerator = firstSequence.objectEnumerator;\n\t\t}\n\t\t\n\t\t@autoreleasepool {\n\t\t\texpect([enumerator nextObject]).to(equal(@1));\n\t\t}\n\n\t\t@autoreleasepool {\n\t\t\texpect([enumerator nextObject]).to(equal(@2));\n\t\t}\n\t\texpect(@(firstSequenceDeallocd)).toEventually(beTruthy());\n\t\t\n\t\t@autoreleasepool {\n\t\t\texpect([enumerator nextObject]).to(equal(@3));\n\t\t}\n\t\texpect(@(secondSequenceDeallocd)).toEventually(beTruthy());\n\t\t\n\t\t@autoreleasepool {\n\t\t\texpect([enumerator nextObject]).to(beNil());\n\t\t}\n\t\texpect(@(thirdSequenceDeallocd)).toEventually(beTruthy());\n\t});\n});\n\nqck_it(@\"shouldn't overflow the stack when deallocated on a background queue\", ^{\n\tNSUInteger length = 10000;\n\tNSMutableArray *values = [NSMutableArray arrayWithCapacity:length];\n\tfor (NSUInteger i = 0; i < length; ++i) {\n\t\t[values addObject:@(i)];\n\t}\n\n\t__block BOOL finished = NO;\n\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t@autoreleasepool {\n\t\t\t(void)[[values.rac_sequence map:^(id value) {\n\t\t\t\treturn value;\n\t\t\t}] array];\n\t\t}\n\n\t\tfinished = YES;\n\t});\n\n\texpect(@(finished)).toEventually(beTruthy());\n});\n\nqck_describe(@\"-foldLeftWithStart:reduce:\", ^{\n\tqck_it(@\"should reduce with start first\", ^{\n\t\tRACSequence *sequence = [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]];\n\t\tNSNumber *result = [sequence foldLeftWithStart:@3 reduce:^(NSNumber *first, NSNumber *rest) {\n\t\t\treturn first;\n\t\t}];\n\t\texpect(result).to(equal(@3));\n\t});\n\n\tqck_it(@\"should be left associative\", ^{\n\t\tRACSequence *sequence = [[[RACSequence return:@1] concat:[RACSequence return:@2]] concat:[RACSequence return:@3]];\n\t\tNSNumber *result = [sequence foldLeftWithStart:@0 reduce:^(NSNumber *first, NSNumber *rest) {\n\t\t\tint difference = first.intValue - rest.intValue;\n\t\t\treturn @(difference);\n\t\t}];\n\t\texpect(result).to(equal(@-6));\n\t});\n});\n\nqck_describe(@\"-foldRightWithStart:reduce:\", ^{\n\tqck_it(@\"should be lazy\", ^{\n\t\t__block BOOL headInvoked = NO;\n\t\t__block BOOL tailInvoked = NO;\n\t\tRACSequence *sequence = [RACSequence sequenceWithHeadBlock:^{\n\t\t\theadInvoked = YES;\n\t\t\treturn @0;\n\t\t} tailBlock:^{\n\t\t\ttailInvoked = YES;\n\t\t\treturn [RACSequence return:@1];\n\t\t}];\n\t\t\n\t\tNSNumber *result = [sequence foldRightWithStart:@2 reduce:^(NSNumber *first, RACSequence *rest) {\n\t\t\treturn first;\n\t\t}];\n\t\t\n\t\texpect(result).to(equal(@0));\n\t\texpect(@(headInvoked)).to(beTruthy());\n\t\texpect(@(tailInvoked)).to(beFalsy());\n\t});\n\t\n\tqck_it(@\"should reduce with start last\", ^{\n\t\tRACSequence *sequence = [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]];\n\t\tNSNumber *result = [sequence foldRightWithStart:@3 reduce:^(NSNumber *first, RACSequence *rest) {\n\t\t\treturn rest.head;\n\t\t}];\n\t\texpect(result).to(equal(@3));\n\t});\n\t\n\tqck_it(@\"should be right associative\", ^{\n\t\tRACSequence *sequence = [[[RACSequence return:@1] concat:[RACSequence return:@2]] concat:[RACSequence return:@3]];\n\t\tNSNumber *result = [sequence foldRightWithStart:@0 reduce:^(NSNumber *first, RACSequence *rest) {\n\t\t\tint difference = first.intValue - [rest.head intValue];\n\t\t\treturn @(difference);\n\t\t}];\n\t\texpect(result).to(equal(@2));\n\t});\n});\n\nqck_describe(@\"-any\", ^{\n\t__block RACSequence *sequence;\n\tqck_beforeEach(^{\n\t\tsequence = [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]];\n\t});\n\t\n\tqck_it(@\"should return true when at least one exists\", ^{\n\t\tBOOL result = [sequence any:^ BOOL (NSNumber *value) {\n\t\t\treturn value.integerValue > 0;\n\t\t}];\n\t\texpect(@(result)).to(beTruthy());\n\t});\n\t\n\tqck_it(@\"should return false when no such thing exists\", ^{\n\t\tBOOL result = [sequence any:^ BOOL (NSNumber *value) {\n\t\t\treturn value.integerValue == 3;\n\t\t}];\n\t\texpect(@(result)).to(beFalsy());\n\t});\n});\n\nqck_describe(@\"-all\", ^{\n\t__block RACSequence *sequence;\n\tqck_beforeEach(^{\n\t\tsequence = [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]];\n\t});\n\t\n\tqck_it(@\"should return true when all values pass\", ^{\n\t\tBOOL result = [sequence all:^ BOOL (NSNumber *value) {\n\t\t\treturn value.integerValue >= 0;\n\t\t}];\n\t\texpect(@(result)).to(beTruthy());\n\t});\n\t\n\tqck_it(@\"should return false when at least one value fails\", ^{\n\t\tBOOL result = [sequence all:^ BOOL (NSNumber *value) {\n\t\t\treturn value.integerValue < 2;\n\t\t}];\n\t\texpect(@(result)).to(beFalsy());\n\t});\n});\n\nqck_describe(@\"-objectPassingTest:\", ^{\n\t__block RACSequence *sequence;\n\tqck_beforeEach(^{\n\t\tsequence = [[[RACSequence return:@0] concat:[RACSequence return:@1]] concat:[RACSequence return:@2]];\n\t});\n\t\n\tqck_it(@\"should return leftmost object that passes the test\", ^{\n\t\tNSNumber *result = [sequence objectPassingTest:^ BOOL (NSNumber *value) {\n\t\t\treturn value.intValue > 0;\n\t\t}];\n\t\texpect(result).to(equal(@1));\n\t});\n\t\n\tqck_it(@\"should return nil if no objects pass the test\", ^{\n\t\tNSNumber *result = [sequence objectPassingTest:^ BOOL (NSNumber *value) {\n\t\t\treturn value.intValue < 0;\n\t\t}];\n\t\texpect(result).to(beNil());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSerialDisposableSpec.m",
    "content": "//\n//  RACSerialDisposableSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSerialDisposable.h\"\n\nQuickSpecBegin(RACSerialDisposableSpec)\n\nqck_it(@\"should initialize with -init\", ^{\n\tRACSerialDisposable *serial = [[RACSerialDisposable alloc] init];\n\texpect(serial).notTo(beNil());\n\texpect(serial.disposable).to(beNil());\n});\n\nqck_it(@\"should initialize an inner disposable with -initWithBlock:\", ^{\n\t__block BOOL disposed = NO;\n\tRACSerialDisposable *serial = [RACSerialDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\texpect(serial).notTo(beNil());\n\texpect(serial.disposable).notTo(beNil());\n\n\t[serial.disposable dispose];\n\texpect(@(serial.disposed)).to(beFalsy());\n\texpect(@(disposed)).to(beTruthy());\n});\n\nqck_it(@\"should initialize with a disposable\", ^{\n\tRACDisposable *inner = [[RACDisposable alloc] init];\n\tRACSerialDisposable *serial = [RACSerialDisposable serialDisposableWithDisposable:inner];\n\texpect(serial).notTo(beNil());\n\texpect(serial.disposable).to(equal(inner));\n});\n\nqck_it(@\"should dispose of the inner disposable\", ^{\n\t__block BOOL disposed = NO;\n\tRACDisposable *inner = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\tRACSerialDisposable *serial = [RACSerialDisposable serialDisposableWithDisposable:inner];\n\texpect(@(serial.disposed)).to(beFalsy());\n\texpect(@(disposed)).to(beFalsy());\n\n\t[serial dispose];\n\texpect(@(serial.disposed)).to(beTruthy());\n\texpect(serial.disposable).to(beNil());\n\texpect(@(disposed)).to(beTruthy());\n});\n\nqck_it(@\"should dispose of a new inner disposable if it's already been disposed\", ^{\n\t__block BOOL disposed = NO;\n\tRACDisposable *inner = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\tRACSerialDisposable *serial = [[RACSerialDisposable alloc] init];\n\texpect(@(serial.disposed)).to(beFalsy());\n\n\t[serial dispose];\n\texpect(@(serial.disposed)).to(beTruthy());\n\texpect(@(disposed)).to(beFalsy());\n\n\tserial.disposable = inner;\n\texpect(@(disposed)).to(beTruthy());\n\texpect(serial.disposable).to(beNil());\n});\n\nqck_it(@\"should allow the inner disposable to be set to nil\", ^{\n\t__block BOOL disposed = NO;\n\tRACDisposable *inner = [RACDisposable disposableWithBlock:^{\n\t\tdisposed = YES;\n\t}];\n\n\tRACSerialDisposable *serial = [RACSerialDisposable serialDisposableWithDisposable:inner];\n\texpect(@(disposed)).to(beFalsy());\n\n\tserial.disposable = nil;\n\texpect(serial.disposable).to(beNil());\n\n\tserial.disposable = inner;\n\texpect(serial.disposable).to(equal(inner));\n\n\t[serial dispose];\n\texpect(@(disposed)).to(beTruthy());\n\texpect(serial.disposable).to(beNil());\n});\n\nqck_it(@\"should swap inner disposables\", ^{\n\t__block BOOL firstDisposed = NO;\n\tRACDisposable *first = [RACDisposable disposableWithBlock:^{\n\t\tfirstDisposed = YES;\n\t}];\n\n\t__block BOOL secondDisposed = NO;\n\tRACDisposable *second = [RACDisposable disposableWithBlock:^{\n\t\tsecondDisposed = YES;\n\t}];\n\n\tRACSerialDisposable *serial = [RACSerialDisposable serialDisposableWithDisposable:first];\n\texpect([serial swapInDisposable:second]).to(equal(first));\n\n\texpect(@(serial.disposed)).to(beFalsy());\n\texpect(@(firstDisposed)).to(beFalsy());\n\texpect(@(secondDisposed)).to(beFalsy());\n\n\t[serial dispose];\n\texpect(@(serial.disposed)).to(beTruthy());\n\texpect(serial.disposable).to(beNil());\n\n\texpect(@(firstDisposed)).to(beFalsy());\n\texpect(@(secondDisposed)).to(beTruthy());\n});\n\nqck_it(@\"should release the inner disposable upon deallocation\", ^{\n\t__weak RACDisposable *weakInnerDisposable;\n\t__weak RACSerialDisposable *weakSerialDisposable;\n\n\t@autoreleasepool {\n\t\tRACDisposable *innerDisposable __attribute__((objc_precise_lifetime)) = [[RACDisposable alloc] init];\n\t\tweakInnerDisposable = innerDisposable;\n\n\t\tRACSerialDisposable *serialDisposable __attribute__((objc_precise_lifetime)) = [[RACSerialDisposable alloc] init];\n\t\tserialDisposable.disposable = innerDisposable;\n\t\tweakSerialDisposable = serialDisposable;\n\t}\n\n\texpect(weakSerialDisposable).to(beNil());\n\texpect(weakInnerDisposable).to(beNil());\n});\n\nqck_it(@\"should not crash when racing between swapInDisposable and disposable\", ^{\n\t__block BOOL stop = NO;\n\tdispatch_after(dispatch_time(DISPATCH_TIME_NOW, (long long)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n\t\tstop = YES;\n\t});\n\n\tRACSerialDisposable *serialDisposable =  [[RACSerialDisposable alloc] init];\n\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\twhile (!stop) {\n\t\t\t[serialDisposable swapInDisposable:[RACDisposable disposableWithBlock:^{}]];\n\t\t}\n\t});\n\n\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\twhile (!stop) {\n\t\t\t(void)[serialDisposable disposable];\n\t\t}\n\t});\n\n\texpect(@(stop)).toEventually(beTruthy());\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSignalSpec.m",
    "content": "//\n//  RACSignalSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/2/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACPropertySignalExamples.h\"\n#import \"RACSequenceExamples.h\"\n#import \"RACStreamExamples.h\"\n#import \"RACTestObject.h\"\n\n#import <ReactiveCocoa/EXTKeyPathCoding.h>\n#import \"NSObject+RACDeallocating.h\"\n#import \"NSObject+RACPropertySubscribing.h\"\n#import \"RACBehaviorSubject.h\"\n#import \"RACCommand.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACEvent.h\"\n#import \"RACGroupedSignal.h\"\n#import \"RACMulticastConnection.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSubject.h\"\n#import \"RACSubscriber+Private.h\"\n#import \"RACSubscriber.h\"\n#import \"RACTestScheduler.h\"\n#import \"RACTuple.h\"\n#import \"RACUnit.h\"\n#import <libkern/OSAtomic.h>\n\n// Set in a beforeAll below.\nstatic NSError *RACSignalTestError;\n\nstatic NSString * const RACSignalMergeConcurrentCompletionExampleGroup = @\"RACSignalMergeConcurrentCompletionExampleGroup\";\nstatic NSString * const RACSignalMaxConcurrent = @\"RACSignalMaxConcurrent\";\n\nQuickConfigurationBegin(mergeConcurrentCompletionName)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACSignalMergeConcurrentCompletionExampleGroup, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\tqck_it(@\"should complete only after the source and all its signals have completed\", ^{\n\t\t\tRACSubject *subject1 = [RACSubject subject];\n\t\t\tRACSubject *subject2 = [RACSubject subject];\n\t\t\tRACSubject *subject3 = [RACSubject subject];\n\n\t\t\tRACSubject *signalsSubject = [RACSubject subject];\n\t\t\t__block BOOL completed = NO;\n\t\t\t[[signalsSubject flatten:[exampleContext()[RACSignalMaxConcurrent] unsignedIntegerValue]] subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\t\t[signalsSubject sendNext:subject1];\n\t\t\t[subject1 sendCompleted];\n\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[signalsSubject sendNext:subject2];\n\t\t\t[signalsSubject sendNext:subject3];\n\n\t\t\t[signalsSubject sendCompleted];\n\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[subject2 sendCompleted];\n\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[subject3 sendCompleted];\n\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n\nQuickSpecBegin(RACSignalSpec)\n\nqck_beforeSuite(^{\n\t// We do this instead of a macro to ensure that to(equal() will work\n\t// correctly (by matching identity), even if -[NSError isEqual:] is broken.\n\tRACSignalTestError = [NSError errorWithDomain:@\"foo\" code:100 userInfo:nil];\n});\n\nqck_describe(@\"RACStream\", ^{\n\tid verifyValues = ^(RACSignal *signal, NSArray *expectedValues) {\n\t\texpect(signal).notTo(beNil());\n\n\t\tNSMutableArray *collectedValues = [NSMutableArray array];\n\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\t[signal subscribeNext:^(id value) {\n\t\t\t[collectedValues addObject:value];\n\t\t} error:^(NSError *receivedError) {\n\t\t\terror = receivedError;\n\t\t} completed:^{\n\t\t\tsuccess = YES;\n\t\t}];\n\n\t\texpect(@(success)).toEventually(beTruthy());\n\t\texpect(error).to(beNil());\n\t\texpect(collectedValues).to(equal(expectedValues));\n\t};\n\n\tRACSignal *infiniteSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t__block volatile int32_t done = 0;\n\n\t\t[RACScheduler.mainThreadScheduler schedule:^{\n\t\t\twhile (!done) {\n\t\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\t\t}\n\t\t}];\n\n\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\tOSAtomicIncrement32Barrier(&done);\n\t\t}];\n\t}];\n\n\tqck_itBehavesLike(RACStreamExamples, ^{\n\t\treturn @{\n\t\t\tRACStreamExamplesClass: RACSignal.class,\n\t\t\tRACStreamExamplesVerifyValuesBlock: verifyValues,\n\t\t\tRACStreamExamplesInfiniteStream: infiniteSignal\n\t\t};\n\t});\n});\n\nqck_describe(@\"-bind:\", ^{\n\t__block RACSubject *signals;\n\t__block BOOL disposed;\n\t__block id lastValue;\n\t__block RACSubject *values;\n\n\tqck_beforeEach(^{\n\t\t// Tests send a (RACSignal, BOOL) pair that are used below in -bind:.\n\t\tsignals = [RACSubject subject];\n\n\t\tdisposed = NO;\n\t\tRACSignal *source = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t[signals subscribe:subscriber];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\tRACSignal *bind = [source bind:^{\n\t\t\treturn ^(RACTuple *x, BOOL *stop) {\n\t\t\t\tRACTupleUnpack(RACSignal *signal, NSNumber *stopValue) = x;\n\t\t\t\t*stop = stopValue.boolValue;\n\t\t\t\treturn signal;\n\t\t\t};\n\t\t}];\n\n\t\tlastValue = nil;\n\t\t[bind subscribeNext:^(id x) {\n\t\t\tlastValue = x;\n\t\t}];\n\n\t\t// Send `bind` an open ended subject to subscribe to( These tests make\n\t\t// use of this in two ways:\n\t\t//   1. Used to test a regression bug where -bind: would not actually\n\t\t//      stop when instructed to. This bug manifested itself only when\n\t\t//      there were subscriptions that lived on past the point at which\n\t\t//      -bind: was stopped. This subject represents such a subscription.\n\t\t//   2. Test that values sent by this subject are received by `bind`'s\n\t\t//      subscriber, even *after* -bind: has been instructed to stop.\n\t\tvalues = [RACSubject subject];\n\t\t[signals sendNext:RACTuplePack(values, @NO)];\n\t\texpect(@(disposed)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should dispose source signal when stopped with nil signal\", ^{\n\t\t// Tell -bind: to stop by sending it a `nil` signal.\n\t\t[signals sendNext:RACTuplePack(nil, @NO)];\n\t\texpect(@(disposed)).to(beTruthy());\n\n\t\t// Should still receive values sent after stopping.\n\t\texpect(lastValue).to(beNil());\n\t\t[values sendNext:RACUnit.defaultUnit];\n\t\texpect(lastValue).to(equal(RACUnit.defaultUnit));\n\t});\n\n\tqck_it(@\"should dispose source signal when stop flag set to YES\", ^{\n\t\t// Tell -bind: to stop by setting the stop flag to YES.\n\t\t[signals sendNext:RACTuplePack([RACSignal return:@1], @YES)];\n\t\texpect(@(disposed)).to(beTruthy());\n\n\t\t// Should still recieve last signal sent at the time of setting stop to YES.\n\t\texpect(lastValue).to(equal(@1));\n\n\t\t// Should still receive values sent after stopping.\n\t\t[values sendNext:@2];\n\t\texpect(lastValue).to(equal(@2));\n\t});\n\n\tqck_it(@\"should properly stop subscribing to new signals after error\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@0];\n\t\t\t[subscriber sendNext:@1];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t__block BOOL subscribedAfterError = NO;\n\t\tRACSignal *bind = [signal bind:^{\n\t\t\treturn ^(NSNumber *x, BOOL *stop) {\n\t\t\t\tif (x.integerValue == 0) return [RACSignal error:nil];\n\n\t\t\t\treturn [RACSignal defer:^{\n\t\t\t\t\tsubscribedAfterError = YES;\n\t\t\t\t\treturn [RACSignal empty];\n\t\t\t\t}];\n\t\t\t};\n\t\t}];\n\n\t\t[bind subscribeCompleted:^{}];\n\t\texpect(@(subscribedAfterError)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should not subscribe to signals following error in +merge:\", ^{\n\t\t__block BOOL firstSubscribed = NO;\n\t\t__block BOOL secondSubscribed = NO;\n\t\t__block BOOL errored = NO;\n\n\t\tRACSignal *signal = [[RACSignal\n\t\t\tmerge:@[\n\t\t\t\t[RACSignal defer:^{\n\t\t\t\t\tfirstSubscribed = YES;\n\t\t\t\t\treturn [RACSignal error:nil];\n\t\t\t\t}],\n\t\t\t\t[RACSignal defer:^{\n\t\t\t\t\tsecondSubscribed = YES;\n\t\t\t\t\treturn [RACSignal return:nil];\n\t\t\t\t}]\n\t\t\t]]\n\t\t\tdoError:^(NSError *error) {\n\t\t\t\terrored = YES;\n\t\t\t}];\n\n\t\t[signal subscribeCompleted:^{}];\n\n\t\texpect(@(firstSubscribed)).to(beTruthy());\n\t\texpect(@(secondSubscribed)).to(beFalsy());\n\t\texpect(@(errored)).to(beTruthy());\n\t});\n\t\n\tqck_it(@\"should not retain signals that are subscribed\", ^{\n\t\t__weak RACSignal *weakSignal;\n\t\t@autoreleasepool {\n\t\t\tRACSignal *delaySignal = [[RACSignal return:@123] delay:1];\n\t\t\t[[delaySignal map:^id(id value) {\n\t\t\t\treturn @456;\n\t\t\t}] subscribeNext:^(id x) {\n\t\t\t}];\n\t\t\tweakSignal = delaySignal;\n\t\t}\n\t\texpect(weakSignal).to(beNil());\n\t});\n});\n\nqck_describe(@\"subscribing\", ^{\n\t__block RACSignal *signal = nil;\n\tid nextValueSent = @\"1\";\n\n\tqck_beforeEach(^{\n\t\tsignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:nextValueSent];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\t});\n\n\tqck_it(@\"should get next values\", ^{\n\t\t__block id nextValueReceived = nil;\n\t\t[signal subscribeNext:^(id x) {\n\t\t\tnextValueReceived = x;\n\t\t} error:^(NSError *error) {\n\n\t\t} completed:^{\n\n\t\t}];\n\n\t\texpect(nextValueReceived).to(equal(nextValueSent));\n\t});\n\n\tqck_it(@\"should get completed\", ^{\n\t\t__block BOOL didGetCompleted = NO;\n\t\t[signal subscribeNext:^(id x) {\n\n\t\t} error:^(NSError *error) {\n\n\t\t} completed:^{\n\t\t\tdidGetCompleted = YES;\n\t\t}];\n\n\t\texpect(@(didGetCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should not get an error\", ^{\n\t\t__block BOOL didGetError = NO;\n\t\t[signal subscribeNext:^(id x) {\n\n\t\t} error:^(NSError *error) {\n\t\t\tdidGetError = YES;\n\t\t} completed:^{\n\n\t\t}];\n\n\t\texpect(@(didGetError)).to(beFalsy());\n\t});\n\n\tqck_it(@\"shouldn't get anything after dispose\", ^{\n\t\tRACTestScheduler *scheduler = [[RACTestScheduler alloc] init];\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@0];\n\n\t\t\t[scheduler afterDelay:0 schedule:^{\n\t\t\t\t[subscriber sendNext:@1];\n\t\t\t}];\n\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\tNSArray *expectedValues = @[ @0 ];\n\t\texpect(receivedValues).to(equal(expectedValues));\n\n\t\t[disposable dispose];\n\t\t[scheduler stepAll];\n\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t});\n\n\tqck_it(@\"should have a current scheduler in didSubscribe block\", ^{\n\t\t__block RACScheduler *currentScheduler;\n\t\tRACSignal *signal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t[signal subscribeNext:^(id x) {}];\n\t\texpect(currentScheduler).notTo(beNil());\n\n\t\tcurrentScheduler = nil;\n\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t[signal subscribeNext:^(id x) {}];\n\t\t});\n\t\texpect(currentScheduler).toEventuallyNot(beNil());\n\t});\n\n\tqck_it(@\"should automatically dispose of other subscriptions from +createSignal:\", ^{\n\t\t__block BOOL innerDisposed = NO;\n\t\t__block id<RACSubscriber> innerSubscriber = nil;\n\n\t\tRACSignal *innerSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t// Keep the subscriber alive so it doesn't trigger disposal on dealloc\n\t\t\tinnerSubscriber = subscriber;\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tinnerDisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\tRACSignal *outerSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[innerSignal subscribe:subscriber];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACDisposable *disposable = [outerSignal subscribeCompleted:^{}];\n\t\texpect(disposable).notTo(beNil());\n\t\texpect(@(innerDisposed)).to(beFalsy());\n\n\t\t[disposable dispose];\n\t\texpect(@(innerDisposed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-takeUntil:\", ^{\n\tqck_it(@\"should support value as trigger\", ^{\n\t\t__block BOOL shouldBeGettingItems = YES;\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tRACSubject *cutOffSubject = [RACSubject subject];\n\t\t[[subject takeUntil:cutOffSubject] subscribeNext:^(id x) {\n\t\t\texpect(@(shouldBeGettingItems)).to(beTruthy());\n\t\t}];\n\n\t\tshouldBeGettingItems = YES;\n\t\t[subject sendNext:@\"test 1\"];\n\t\t[subject sendNext:@\"test 2\"];\n\n\t\t[cutOffSubject sendNext:[RACUnit defaultUnit]];\n\n\t\tshouldBeGettingItems = NO;\n\t\t[subject sendNext:@\"test 3\"];\n\t});\n\n\tqck_it(@\"should support completion as trigger\", ^{\n\t\t__block BOOL shouldBeGettingItems = YES;\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tRACSubject *cutOffSubject = [RACSubject subject];\n\t\t[[subject takeUntil:cutOffSubject] subscribeNext:^(id x) {\n\t\t\texpect(@(shouldBeGettingItems)).to(beTruthy());\n\t\t}];\n\n\t\t[cutOffSubject sendCompleted];\n\n\t\tshouldBeGettingItems = NO;\n\t\t[subject sendNext:@\"should not go through\"];\n\t});\n\n\tqck_it(@\"should squelch any values sent immediately upon subscription\", ^{\n\t\tRACSignal *valueSignal = [RACSignal return:RACUnit.defaultUnit];\n\t\tRACSignal *cutOffSignal = [RACSignal empty];\n\n\t\t__block BOOL gotNext = NO;\n\t\t__block BOOL completed = NO;\n\n\t\t[[valueSignal takeUntil:cutOffSignal] subscribeNext:^(id _) {\n\t\t\tgotNext = YES;\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(gotNext)).to(beFalsy());\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-takeUntilReplacement:\", ^{\n\tqck_it(@\"should forward values from the receiver until it's replaced\", ^{\n\t\tRACSubject *receiver = [RACSubject subject];\n\t\tRACSubject *replacement = [RACSubject subject];\n\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\n\t\t[[receiver takeUntilReplacement:replacement] subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\texpect(receivedValues).to(equal(@[]));\n\n\t\t[receiver sendNext:@1];\n\t\texpect(receivedValues).to(equal(@[ @1 ]));\n\n\t\t[receiver sendNext:@2];\n\t\texpect(receivedValues).to(equal((@[ @1, @2 ])));\n\n\t\t[replacement sendNext:@3];\n\t\texpect(receivedValues).to(equal((@[ @1, @2, @3 ])));\n\n\t\t[receiver sendNext:@4];\n\t\texpect(receivedValues).to(equal((@[ @1, @2, @3 ])));\n\n\t\t[replacement sendNext:@5];\n\t\texpect(receivedValues).to(equal((@[ @1, @2, @3, @5 ])));\n\t});\n\n\tqck_it(@\"should forward error from the receiver\", ^{\n\t\tRACSubject *receiver = [RACSubject subject];\n\t\t__block BOOL receivedError = NO;\n\n\t\t[[receiver takeUntilReplacement:RACSignal.never] subscribeError:^(NSError *error) {\n\t\t\treceivedError = YES;\n\t\t}];\n\n\t\t[receiver sendError:nil];\n\t\texpect(@(receivedError)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should not forward completed from the receiver\", ^{\n\t\tRACSubject *receiver = [RACSubject subject];\n\t\t__block BOOL receivedCompleted = NO;\n\n\t\t[[receiver takeUntilReplacement:RACSignal.never] subscribeCompleted: ^{\n\t\t\treceivedCompleted = YES;\n\t\t}];\n\n\t\t[receiver sendCompleted];\n\t\texpect(@(receivedCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should forward error from the replacement signal\", ^{\n\t\tRACSubject *replacement = [RACSubject subject];\n\t\t__block BOOL receivedError = NO;\n\n\t\t[[RACSignal.never takeUntilReplacement:replacement] subscribeError:^(NSError *error) {\n\t\t\treceivedError = YES;\n\t\t}];\n\n\t\t[replacement sendError:nil];\n\t\texpect(@(receivedError)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should forward completed from the replacement signal\", ^{\n\t\tRACSubject *replacement = [RACSubject subject];\n\t\t__block BOOL receivedCompleted = NO;\n\n\t\t[[RACSignal.never takeUntilReplacement:replacement] subscribeCompleted: ^{\n\t\t\treceivedCompleted = YES;\n\t\t}];\n\n\t\t[replacement sendCompleted];\n\t\texpect(@(receivedCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should not forward values from the receiver if both send synchronously\", ^{\n\t\tRACSignal *receiver = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@2];\n\t\t\t[subscriber sendNext:@3];\n\t\t\treturn nil;\n\t\t}];\n\t\tRACSignal *replacement = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@4];\n\t\t\t[subscriber sendNext:@5];\n\t\t\t[subscriber sendNext:@6];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\n\t\t[[receiver takeUntilReplacement:replacement] subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\texpect(receivedValues).to(equal((@[ @4, @5, @6 ])));\n\t});\n\n\tqck_it(@\"should dispose of the receiver when it's disposed of\", ^{\n\t\t__block BOOL receiverDisposed = NO;\n\t\tRACSignal *receiver = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\treceiverDisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\t[[[receiver takeUntilReplacement:RACSignal.never] subscribeCompleted:^{}] dispose];\n\n\t\texpect(@(receiverDisposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should dispose of the replacement signal when it's disposed of\", ^{\n\t\t__block BOOL replacementDisposed = NO;\n\t\tRACSignal *replacement = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\treplacementDisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\t[[[RACSignal.never takeUntilReplacement:replacement] subscribeCompleted:^{}] dispose];\n\n\t\texpect(@(replacementDisposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should dispose of the receiver when the replacement signal sends an event\", ^{\n\t\t__block BOOL receiverDisposed = NO;\n\t\t__block id<RACSubscriber> receiverSubscriber = nil;\n\t\tRACSignal *receiver = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t// Keep the subscriber alive so it doesn't trigger disposal on dealloc\n\t\t\treceiverSubscriber = subscriber;\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\treceiverDisposed = YES;\n\t\t\t}];\n\t\t}];\n\t\tRACSubject *replacement = [RACSubject subject];\n\n\t\t[[receiver takeUntilReplacement:replacement] subscribeCompleted:^{}];\n\n\t\texpect(@(receiverDisposed)).to(beFalsy());\n\n\t\t[replacement sendNext:nil];\n\n\t\texpect(@(receiverDisposed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"disposal\", ^{\n\tqck_it(@\"should dispose of the didSubscribe disposable\", ^{\n\t\t__block BOOL innerDisposed = NO;\n\t\tRACSignal *signal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tinnerDisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\texpect(@(innerDisposed)).to(beFalsy());\n\n\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {}];\n\t\texpect(disposable).notTo(beNil());\n\n\t\t[disposable dispose];\n\t\texpect(@(innerDisposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should dispose of the didSubscribe disposable asynchronously\", ^{\n\t\t__block BOOL innerDisposed = NO;\n\t\tRACSignal *signal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tinnerDisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\tRACDisposable *disposable = [signal subscribeNext:^(id x) {}];\n\t\t\t[disposable dispose];\n\t\t}];\n\n\t\texpect(@(innerDisposed)).toEventually(beTruthy());\n\t});\n});\n\nqck_describe(@\"querying\", ^{\n\t__block RACSignal *signal = nil;\n\tid nextValueSent = @\"1\";\n\n\tqck_beforeEach(^{\n\t\tsignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:nextValueSent];\n\t\t\t[subscriber sendNext:@\"other value\"];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\t});\n\n\tqck_it(@\"should return first 'next' value with -firstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@2];\n\t\t\t[subscriber sendNext:@3];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\texpect([signal firstOrDefault:@5 success:&success error:&error]).to(equal(@1));\n\t\texpect(@(success)).to(beTruthy());\n\t\texpect(error).to(beNil());\n\t});\n\n\tqck_it(@\"should return first default value with -firstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\texpect([signal firstOrDefault:@5 success:&success error:&error]).to(equal(@5));\n\t\texpect(@(success)).to(beTruthy());\n\t\texpect(error).to(beNil());\n\t});\n\n\tqck_it(@\"should return error with -firstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\treturn nil;\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\texpect([signal firstOrDefault:@5 success:&success error:&error]).to(equal(@5));\n\t\texpect(@(success)).to(beFalsy());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"shouldn't crash when returning an error from a background scheduler\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\t}];\n\n\t\t\treturn nil;\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\n\t\t__block BOOL success = NO;\n\t\t__block NSError *error = nil;\n\t\texpect([signal firstOrDefault:@5 success:&success error:&error]).to(equal(@5));\n\t\texpect(@(success)).to(beFalsy());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should terminate the subscription after returning from -firstOrDefault:success:error:\", ^{\n\t\t__block BOOL disposed = NO;\n\t\tRACSignal *signal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\t\texpect(@(disposed)).to(beFalsy());\n\n\t\texpect([signal firstOrDefault:nil success:NULL error:NULL]).to(equal(RACUnit.defaultUnit));\n\t\texpect(@(disposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should return YES from -waitUntilCompleted: when successful\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t__block NSError *error = nil;\n\t\texpect(@([signal waitUntilCompleted:&error])).to(beTruthy());\n\t\texpect(error).to(beNil());\n\t});\n\n\tqck_it(@\"should return NO from -waitUntilCompleted: upon error\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t__block NSError *error = nil;\n\t\texpect(@([signal waitUntilCompleted:&error])).to(beFalsy());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should return a delayed value from -asynchronousFirstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [[RACSignal return:RACUnit.defaultUnit] delay:0];\n\n\t\t__block BOOL scheduledBlockRan = NO;\n\t\t[RACScheduler.mainThreadScheduler schedule:^{\n\t\t\tscheduledBlockRan = YES;\n\t\t}];\n\n\t\texpect(@(scheduledBlockRan)).to(beFalsy());\n\n\t\tBOOL success = NO;\n\t\tNSError *error = nil;\n\t\tid value = [signal asynchronousFirstOrDefault:nil success:&success error:&error];\n\n\t\texpect(@(scheduledBlockRan)).to(beTruthy());\n\n\t\texpect(value).to(equal(RACUnit.defaultUnit));\n\t\texpect(@(success)).to(beTruthy());\n\t\texpect(error).to(beNil());\n\t});\n\n\tqck_it(@\"should return a default value from -asynchronousFirstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [[RACSignal error:RACSignalTestError] delay:0];\n\n\t\t__block BOOL scheduledBlockRan = NO;\n\t\t[RACScheduler.mainThreadScheduler schedule:^{\n\t\t\tscheduledBlockRan = YES;\n\t\t}];\n\n\t\texpect(@(scheduledBlockRan)).to(beFalsy());\n\n\t\tBOOL success = NO;\n\t\tNSError *error = nil;\n\t\tid value = [signal asynchronousFirstOrDefault:RACUnit.defaultUnit success:&success error:&error];\n\n\t\texpect(@(scheduledBlockRan)).to(beTruthy());\n\n\t\texpect(value).to(equal(RACUnit.defaultUnit));\n\t\texpect(@(success)).to(beFalsy());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should return a delayed error from -asynchronousFirstOrDefault:success:error:\", ^{\n\t\tRACSignal *signal = [[RACSignal\n\t\t\tcreateSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t\treturn [[RACScheduler scheduler] schedule:^{\n\t\t\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\t\t}];\n\t\t\t}]\n\t\t\tdeliverOn:RACScheduler.mainThreadScheduler];\n\n\t\t__block NSError *error = nil;\n\t\t__block BOOL success = NO;\n\t\texpect([signal asynchronousFirstOrDefault:nil success:&success error:&error]).to(beNil());\n\n\t\texpect(@(success)).to(beFalsy());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should terminate the subscription after returning from -asynchronousFirstOrDefault:success:error:\", ^{\n\t\t__block BOOL disposed = NO;\n\t\tRACSignal *signal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\t\t}];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\texpect(signal).notTo(beNil());\n\t\texpect(@(disposed)).to(beFalsy());\n\n\t\texpect([signal asynchronousFirstOrDefault:nil success:NULL error:NULL]).to(equal(RACUnit.defaultUnit));\n\t\texpect(@(disposed)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should return a delayed success from -asynchronouslyWaitUntilCompleted:\", ^{\n\t\tRACSignal *signal = [[RACSignal return:RACUnit.defaultUnit] delay:0];\n\n\t\t__block BOOL scheduledBlockRan = NO;\n\t\t[RACScheduler.mainThreadScheduler schedule:^{\n\t\t\tscheduledBlockRan = YES;\n\t\t}];\n\n\t\texpect(@(scheduledBlockRan)).to(beFalsy());\n\n\t\tNSError *error = nil;\n\t\tBOOL success = [signal asynchronouslyWaitUntilCompleted:&error];\n\n\t\texpect(@(scheduledBlockRan)).to(beTruthy());\n\n\t\texpect(@(success)).to(beTruthy());\n\t\texpect(error).to(beNil());\n\t});\n});\n\nqck_describe(@\"continuation\", ^{\n\tqck_it(@\"should repeat after completion\", ^{\n\t\t__block NSUInteger numberOfSubscriptions = 0;\n\t\tRACScheduler *scheduler = [RACScheduler scheduler];\n\n\t\tRACSignal *signal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\treturn [scheduler schedule:^{\n\t\t\t\tif (numberOfSubscriptions == 3) {\n\t\t\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tnumberOfSubscriptions++;\n\n\t\t\t\t[subscriber sendNext:@\"1\"];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\t[subscriber sendError:RACSignalTestError];\n\t\t\t}];\n\t\t}];\n\n\t\t__block NSUInteger nextCount = 0;\n\t\t__block BOOL gotCompleted = NO;\n\t\t[[signal repeat] subscribeNext:^(id x) {\n\t\t\tnextCount++;\n\t\t} error:^(NSError *error) {\n\n\t\t} completed:^{\n\t\t\tgotCompleted = YES;\n\t\t}];\n\n\t\texpect(@(nextCount)).toEventually(equal(@3));\n\t\texpect(@(gotCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should stop repeating when disposed\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t__block BOOL completed = NO;\n\t\t__block RACDisposable *disposable = [[[signal\n\t\t\trepeat]\n\t\t\tsubscribeOn:RACScheduler.mainThreadScheduler]\n\t\t\tsubscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t\t[disposable dispose];\n\t\t\t} completed:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\texpect(values).toEventually(equal(@[ @1 ]));\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should stop repeating when disposed by -take:\", ^{\n\t\tRACSignal *signal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t__block BOOL completed = NO;\n\t\t[[[signal repeat] take:1] subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(values).toEventually(equal(@[ @1 ]));\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"+combineLatestWith:\", ^{\n\t__block RACSubject *subject1 = nil;\n\t__block RACSubject *subject2 = nil;\n\t__block RACSignal *combined = nil;\n\n\tqck_beforeEach(^{\n\t\tsubject1 = [RACSubject subject];\n\t\tsubject2 = [RACSubject subject];\n\t\tcombined = [RACSignal combineLatest:@[ subject1, subject2 ]];\n\t});\n\n\tqck_it(@\"should send next only once both signals send next\", ^{\n\t\t__block RACTuple *tuple;\n\n\t\t[combined subscribeNext:^(id x) {\n\t\t\ttuple = x;\n\t\t}];\n\n\t\texpect(tuple).to(beNil());\n\n\t\t[subject1 sendNext:@\"1\"];\n\t\texpect(tuple).to(beNil());\n\n\t\t[subject2 sendNext:@\"2\"];\n\t\texpect(tuple).to(equal(RACTuplePack(@\"1\", @\"2\")));\n\t});\n\n\tqck_it(@\"should send nexts when either signal sends multiple times\", ^{\n\t\tNSMutableArray *results = [NSMutableArray array];\n\t\t[combined subscribeNext:^(id x) {\n\t\t\t[results addObject:x];\n\t\t}];\n\n\t\t[subject1 sendNext:@\"1\"];\n\t\t[subject2 sendNext:@\"2\"];\n\n\t\t[subject1 sendNext:@\"3\"];\n\t\t[subject2 sendNext:@\"4\"];\n\n\t\texpect(results[0]).to(equal(RACTuplePack(@\"1\", @\"2\")));\n\t\texpect(results[1]).to(equal(RACTuplePack(@\"3\", @\"2\")));\n\t\texpect(results[2]).to(equal(RACTuplePack(@\"3\", @\"4\")));\n\t});\n\n\tqck_it(@\"should complete when only both signals complete\", ^{\n\t\t__block BOOL completed = NO;\n\n\t\t[combined subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject1 sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject2 sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should error when either signal errors\", ^{\n\t\t__block NSError *receivedError = nil;\n\t\t[combined subscribeError:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t}];\n\n\t\t[subject1 sendError:RACSignalTestError];\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"shouldn't create a retain cycle\", ^{\n\t\t__block BOOL subjectDeallocd = NO;\n\t\t__block BOOL signalDeallocd = NO;\n\n\t\t@autoreleasepool {\n\t\t\tRACSubject *subject __attribute__((objc_precise_lifetime)) = [RACSubject subject];\n\t\t\t[subject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsubjectDeallocd = YES;\n\t\t\t}]];\n\n\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [RACSignal combineLatest:@[ subject ]];\n\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsignalDeallocd = YES;\n\t\t\t}]];\n\n\t\t\t[signal subscribeCompleted:^{}];\n\t\t\t[subject sendCompleted];\n\t\t}\n\n\t\texpect(@(subjectDeallocd)).toEventually(beTruthy());\n\t\texpect(@(signalDeallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should combine the same signal\", ^{\n\t\tRACSignal *combined = [subject1 combineLatestWith:subject1];\n\n\t\t__block RACTuple *tuple;\n\t\t[combined subscribeNext:^(id x) {\n\t\t\ttuple = x;\n\t\t}];\n\n\t\t[subject1 sendNext:@\"foo\"];\n\t\texpect(tuple).to(equal(RACTuplePack(@\"foo\", @\"foo\")));\n\n\t\t[subject1 sendNext:@\"bar\"];\n\t\texpect(tuple).to(equal(RACTuplePack(@\"bar\", @\"bar\")));\n\t});\n\n\tqck_it(@\"should combine the same side-effecting signal\", ^{\n\t\t__block NSUInteger counter = 0;\n\t\tRACSignal *sideEffectingSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@(++counter)];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACSignal *combined = [sideEffectingSignal combineLatestWith:sideEffectingSignal];\n\t\texpect(@(counter)).to(equal(@0));\n\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\t[combined subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\texpect(@(counter)).to(equal(@2));\n\n\t\tNSArray *expected = @[ RACTuplePack(@1, @2) ];\n\t\texpect(receivedValues).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"+combineLatest:\", ^{\n\tqck_it(@\"should return tuples even when only combining one signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\t__block RACTuple *tuple;\n\t\t[[RACSignal combineLatest:@[ subject ]] subscribeNext:^(id x) {\n\t\t\ttuple = x;\n\t\t}];\n\n\t\t[subject sendNext:@\"foo\"];\n\t\texpect(tuple).to(equal(RACTuplePack(@\"foo\")));\n\t});\n\n\tqck_it(@\"should complete immediately when not given any signals\", ^{\n\t\tRACSignal *signal = [RACSignal combineLatest:@[]];\n\n\t\t__block BOOL completed = NO;\n\t\t[signal subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should only complete after all its signals complete\", ^{\n\t\tRACSubject *subject1 = [RACSubject subject];\n\t\tRACSubject *subject2 = [RACSubject subject];\n\t\tRACSubject *subject3 = [RACSubject subject];\n\t\tRACSignal *combined = [RACSignal combineLatest:@[ subject1, subject2, subject3 ]];\n\n\t\t__block BOOL completed = NO;\n\t\t[combined subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject1 sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject2 sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject3 sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"+combineLatest:reduce:\", ^{\n\t__block RACSubject *subject1;\n\t__block RACSubject *subject2;\n\t__block RACSubject *subject3;\n\n\tqck_beforeEach(^{\n\t\tsubject1 = [RACSubject subject];\n\t\tsubject2 = [RACSubject subject];\n\t\tsubject3 = [RACSubject subject];\n\t});\n\n\tqck_it(@\"should send nils for nil values\", ^{\n\t\t__block id receivedVal1;\n\t\t__block id receivedVal2;\n\t\t__block id receivedVal3;\n\n\t\tRACSignal *combined = [RACSignal combineLatest:@[ subject1, subject2, subject3 ] reduce:^ id (id val1, id val2, id val3) {\n\t\t\treceivedVal1 = val1;\n\t\t\treceivedVal2 = val2;\n\t\t\treceivedVal3 = val3;\n\t\t\treturn nil;\n\t\t}];\n\n\t\t__block BOOL gotValue = NO;\n\t\t[combined subscribeNext:^(id x) {\n\t\t\tgotValue = YES;\n\t\t}];\n\n\t\t[subject1 sendNext:nil];\n\t\t[subject2 sendNext:nil];\n\t\t[subject3 sendNext:nil];\n\n\t\texpect(@(gotValue)).to(beTruthy());\n\t\texpect(receivedVal1).to(beNil());\n\t\texpect(receivedVal2).to(beNil());\n\t\texpect(receivedVal3).to(beNil());\n\t});\n\n\tqck_it(@\"should send the return result of the reduce block\", ^{\n\t\tRACSignal *combined = [RACSignal combineLatest:@[ subject1, subject2, subject3 ] reduce:^(NSString *string1, NSString *string2, NSString *string3) {\n\t\t\treturn [NSString stringWithFormat:@\"%@: %@%@\", string1, string2, string3];\n\t\t}];\n\n\t\t__block id received;\n\t\t[combined subscribeNext:^(id x) {\n\t\t\treceived = x;\n\t\t}];\n\n\t\t[subject1 sendNext:@\"hello\"];\n\t\t[subject2 sendNext:@\"world\"];\n\t\t[subject3 sendNext:@\"!!1\"];\n\n\t\texpect(received).to(equal(@\"hello: world!!1\"));\n\t});\n\n\tqck_it(@\"should handle multiples of the same signals\", ^{\n\t\tRACSignal *combined = [RACSignal combineLatest:@[ subject1, subject2, subject1, subject3 ] reduce:^(NSString *string1, NSString *string2, NSString *string3, NSString *string4) {\n\t\t\treturn [NSString stringWithFormat:@\"%@ : %@ = %@ : %@\", string1, string2, string3, string4];\n\t\t}];\n\n\t\tNSMutableArray *receivedValues = NSMutableArray.array;\n\n\t\t[combined subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\t[subject1 sendNext:@\"apples\"];\n\t\texpect(receivedValues.lastObject).to(beNil());\n\n\t\t[subject2 sendNext:@\"oranges\"];\n\t\texpect(receivedValues.lastObject).to(beNil());\n\n\t\t[subject3 sendNext:@\"cattle\"];\n\t\texpect(receivedValues.lastObject).to(equal(@\"apples : oranges = apples : cattle\"));\n\n\t\t[subject1 sendNext:@\"horses\"];\n\t\texpect(receivedValues.lastObject).to(equal(@\"horses : oranges = horses : cattle\"));\n\t});\n\n\tqck_it(@\"should handle multiples of the same side-effecting signal\", ^{\n\t\t__block NSUInteger counter = 0;\n\t\tRACSignal *sideEffectingSignal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@(++counter)];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACSignal *combined = [RACSignal combineLatest:@[ sideEffectingSignal, sideEffectingSignal, sideEffectingSignal ] reduce:^(id x, id y, id z) {\n\t\t\treturn [NSString stringWithFormat:@\"%@%@%@\", x, y, z];\n\t\t}];\n\n\t\tNSMutableArray *receivedValues = [NSMutableArray array];\n\t\texpect(@(counter)).to(equal(@0));\n\n\t\t[combined subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\texpect(@(counter)).to(equal(@3));\n\t\texpect(receivedValues).to(equal(@[ @\"123\" ]));\n\t});\n});\n\nqck_describe(@\"distinctUntilChanged\", ^{\n\tqck_it(@\"should only send values that are distinct from the previous value\", ^{\n\t\tRACSignal *sub = [[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@2];\n\t\t\t[subscriber sendNext:@2];\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}] distinctUntilChanged];\n\n\t\tNSArray *values = sub.toArray;\n\t\tNSArray *expected = @[ @1, @2, @1 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"shouldn't consider nils to always be distinct\", ^{\n\t\tRACSignal *sub = [[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:nil];\n\t\t\t[subscriber sendNext:nil];\n\t\t\t[subscriber sendNext:nil];\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}] distinctUntilChanged];\n\n\t\tNSArray *values = sub.toArray;\n\t\tNSArray *expected = @[ @1, [NSNull null], @1 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should consider initial nil to be distinct\", ^{\n\t\tRACSignal *sub = [[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:nil];\n\t\t\t[subscriber sendNext:nil];\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}] distinctUntilChanged];\n\n\t\tNSArray *values = sub.toArray;\n\t\tNSArray *expected = @[ [NSNull null], @1 ];\n\t\texpect(values).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"RACObserve\", ^{\n\t__block RACTestObject *testObject;\n\n\tqck_beforeEach(^{\n\t\ttestObject = [[RACTestObject alloc] init];\n\t});\n\n\tqck_it(@\"should work with object properties\", ^{\n\t\tNSArray *expected = @[ @\"hello\", @\"world\" ];\n\t\ttestObject.objectValue = expected[0];\n\n\t\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\t\t[RACObserve(testObject, objectValue) subscribeNext:^(id x) {\n\t\t\t[valuesReceived addObject:x];\n\t\t}];\n\n\t\ttestObject.objectValue = expected[1];\n\n\t\texpect(valuesReceived).to(equal(expected));\n\t});\n\n\tqck_it(@\"should work with non-object properties\", ^{\n\t\tNSArray *expected = @[ @42, @43 ];\n\t\ttestObject.integerValue = [expected[0] integerValue];\n\n\t\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\t\t[RACObserve(testObject, integerValue) subscribeNext:^(id x) {\n\t\t\t[valuesReceived addObject:x];\n\t\t}];\n\n\t\ttestObject.integerValue = [expected[1] integerValue];\n\n\t\texpect(valuesReceived).to(equal(expected));\n\t});\n\n\tqck_it(@\"should read the initial value upon subscription\", ^{\n\t\ttestObject.objectValue = @\"foo\";\n\n\t\tRACSignal *signal = RACObserve(testObject, objectValue);\n\t\ttestObject.objectValue = @\"bar\";\n\n\t\texpect([signal first]).to(equal(@\"bar\"));\n\t});\n});\n\nqck_describe(@\"-setKeyPath:onObject:\", ^{\n\tid setupBlock = ^(RACTestObject *testObject, NSString *keyPath, id nilValue, RACSignal *signal) {\n\t\t[signal setKeyPath:keyPath onObject:testObject nilValue:nilValue];\n\t};\n\n\tqck_itBehavesLike(RACPropertySignalExamples, ^{\n\t\treturn @{ RACPropertySignalExamplesSetupBlock: setupBlock };\n\t});\n\n\tqck_it(@\"shouldn't send values to dealloc'd objects\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t@autoreleasepool {\n\t\t\tRACTestObject *testObject __attribute__((objc_precise_lifetime)) = [[RACTestObject alloc] init];\n\t\t\t[subject setKeyPath:@keypath(testObject.objectValue) onObject:testObject];\n\t\t\texpect(testObject.objectValue).to(beNil());\n\n\t\t\t[subject sendNext:@1];\n\t\t\texpect(testObject.objectValue).to(equal(@1));\n\n\t\t\t[subject sendNext:@2];\n\t\t\texpect(testObject.objectValue).to(equal(@2));\n\t\t}\n\n\t\t// This shouldn't do anything.\n\t\t[subject sendNext:@3];\n\t});\n\n\tqck_it(@\"should allow a new derivation after the signal's completed\", ^{\n\t\tRACSubject *subject1 = [RACSubject subject];\n\t\tRACTestObject *testObject = [[RACTestObject alloc] init];\n\t\t[subject1 setKeyPath:@keypath(testObject.objectValue) onObject:testObject];\n\t\t[subject1 sendCompleted];\n\n\t\tRACSubject *subject2 = [RACSubject subject];\n\t\t// This will assert if the previous completion didn't dispose of the\n\t\t// subscription.\n\t\t[subject2 setKeyPath:@keypath(testObject.objectValue) onObject:testObject];\n\t});\n\n\tqck_it(@\"should set the given value when nil is received\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tRACTestObject *testObject = [[RACTestObject alloc] init];\n\t\t[subject setKeyPath:@keypath(testObject.integerValue) onObject:testObject nilValue:@5];\n\n\t\t[subject sendNext:@1];\n\t\texpect(@(testObject.integerValue)).to(equal(@1));\n\n\t\t[subject sendNext:nil];\n\t\texpect(@(testObject.integerValue)).to(equal(@5));\n\n\t\t[subject sendCompleted];\n\t\texpect(@(testObject.integerValue)).to(equal(@5));\n\t});\n\n\tqck_it(@\"should keep object alive over -sendNext:\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\t__block RACTestObject *testObject = [[RACTestObject alloc] init];\n\t\t__block id deallocValue;\n\n\t\t__unsafe_unretained RACTestObject *unsafeTestObject = testObject;\n\t\t[testObject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\tdeallocValue = unsafeTestObject.slowObjectValue;\n\t\t}]];\n\n\t\t[subject setKeyPath:@keypath(testObject.slowObjectValue) onObject:testObject];\n\t\texpect(testObject.slowObjectValue).to(beNil());\n\n\t\t// Attempt to deallocate concurrently.\n\t\t[[RACScheduler scheduler] afterDelay:0.01 schedule:^{\n\t\t\ttestObject = nil;\n\t\t}];\n\n\t\texpect(deallocValue).to(beNil());\n\t\t[subject sendNext:@1];\n\t\texpect(deallocValue).to(equal(@1));\n\t});\n});\n\nqck_describe(@\"memory management\", ^{\n\tqck_it(@\"should dealloc signals if the signal does nothing\", ^{\n\t\t__block BOOL deallocd = NO;\n\t\t@autoreleasepool {\n\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t\treturn nil;\n\t\t\t}];\n\n\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocd = YES;\n\t\t\t}]];\n\t\t}\n\n\t\texpect(@(deallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should dealloc signals if the signal immediately completes\", ^{\n\t\t__block BOOL deallocd = NO;\n\t\t@autoreleasepool {\n\t\t\t__block BOOL done = NO;\n\n\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\treturn nil;\n\t\t\t}];\n\n\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocd = YES;\n\t\t\t}]];\n\n\t\t\t[signal subscribeCompleted:^{\n\t\t\t\tdone = YES;\n\t\t\t}];\n\n\t\t\texpect(@(done)).toEventually(beTruthy());\n\t\t}\n\n\t\texpect(@(deallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should dealloc a replay subject if it completes immediately\", ^{\n\t\t__block BOOL completed = NO;\n\t\t__block BOOL deallocd = NO;\n\t\t@autoreleasepool {\n\t\t\tRACReplaySubject *subject __attribute__((objc_precise_lifetime)) = [RACReplaySubject subject];\n\t\t\t[subject sendCompleted];\n\n\t\t\t[subject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tdeallocd = YES;\n\t\t\t}]];\n\n\t\t\t[subject subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(completed)).toEventually(beTruthy());\n\t\texpect(@(deallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should dealloc if the signal was created on a background queue\", ^{\n\t\t__block BOOL completed = NO;\n\t\t__block BOOL deallocd = NO;\n\t\t@autoreleasepool {\n\t\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t\t\t[subscriber sendCompleted];\n\t\t\t\t\treturn nil;\n\t\t\t\t}];\n\n\t\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdeallocd = YES;\n\t\t\t\t}]];\n\n\t\t\t\t[signal subscribeCompleted:^{\n\t\t\t\t\tcompleted = YES;\n\t\t\t\t}];\n\t\t\t}];\n\t\t}\n\n\t\texpect(@(completed)).toEventually(beTruthy());\n\t\texpect(@(deallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should dealloc if the signal was created on a background queue, never gets any subscribers, and the background queue gets delayed\", ^{\n\t\t__block BOOL deallocd = NO;\n\t\tdispatch_semaphore_t semaphore = dispatch_semaphore_create(0);\n\n\t\t@autoreleasepool {\n\t\t\t[[RACScheduler scheduler] schedule:^{\n\t\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t\t\treturn nil;\n\t\t\t\t}];\n\n\t\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdeallocd = YES;\n\t\t\t\t\tdispatch_semaphore_signal(semaphore);\n\t\t\t\t}]];\n\n\t\t\t\t[NSThread sleepForTimeInterval:1];\n\n\t\t\t\texpect(@(deallocd)).to(beFalsy());\n\t\t\t}];\n\t\t}\n\n\t\tdispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);\n\t\texpect(@(deallocd)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should retain intermediate signals when subscribing\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\texpect(subject).notTo(beNil());\n\n\t\t__block BOOL gotNext = NO;\n\t\t__block BOOL completed = NO;\n\n\t\tRACDisposable *disposable;\n\n\t\t@autoreleasepool {\n\t\t\tRACSignal *intermediateSignal = [subject doNext:^(id _) {\n\t\t\t\tgotNext = YES;\n\t\t\t}];\n\n\t\t\texpect(intermediateSignal).notTo(beNil());\n\n\t\t\tdisposable = [intermediateSignal subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t}\n\n\t\t[subject sendNext:@5];\n\t\texpect(@(gotNext)).to(beTruthy());\n\n\t\t[subject sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\n\t\t[disposable dispose];\n\t});\n});\n\nqck_describe(@\"-merge:\", ^{\n\t__block RACSubject *sub1;\n\t__block RACSubject *sub2;\n\t__block RACSignal *merged;\n\tqck_beforeEach(^{\n\t\tsub1 = [RACSubject subject];\n\t\tsub2 = [RACSubject subject];\n\t\tmerged = [sub1 merge:sub2];\n\t});\n\n\tqck_it(@\"should send all values from both signals\", ^{\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t[merged subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t}];\n\n\t\t[sub1 sendNext:@1];\n\t\t[sub2 sendNext:@2];\n\t\t[sub2 sendNext:@3];\n\t\t[sub1 sendNext:@4];\n\n\t\tNSArray *expected = @[ @1, @2, @3, @4 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should send an error if one occurs\", ^{\n\t\t__block NSError *errorReceived;\n\t\t[merged subscribeError:^(NSError *error) {\n\t\t\terrorReceived = error;\n\t\t}];\n\n\t\t[sub1 sendError:RACSignalTestError];\n\t\texpect(errorReceived).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should complete only after both signals complete\", ^{\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t__block BOOL completed = NO;\n\t\t[merged subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\t[sub1 sendNext:@1];\n\t\t[sub2 sendNext:@2];\n\t\t[sub2 sendNext:@3];\n\t\t[sub2 sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[sub1 sendNext:@4];\n\t\t[sub1 sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\n\t\tNSArray *expected = @[ @1, @2, @3, @4 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should complete only after both signals complete for any number of subscribers\", ^{\n\t\t__block BOOL completed1 = NO;\n\t\t__block BOOL completed2 = NO;\n\t\t[merged subscribeCompleted:^{\n\t\t\tcompleted1 = YES;\n\t\t}];\n\n\t\t[merged subscribeCompleted:^{\n\t\t\tcompleted2 = YES;\n\t\t}];\n\n\t\texpect(@(completed1)).to(beFalsy());\n\t\texpect(@(completed2)).to(beFalsy());\n\n\t\t[sub1 sendCompleted];\n\t\t[sub2 sendCompleted];\n\t\texpect(@(completed1)).to(beTruthy());\n\t\texpect(@(completed2)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"+merge:\", ^{\n\t__block RACSubject *sub1;\n\t__block RACSubject *sub2;\n\t__block RACSignal *merged;\n\tqck_beforeEach(^{\n\t\tsub1 = [RACSubject subject];\n\t\tsub2 = [RACSubject subject];\n\t\tmerged = [RACSignal merge:@[ sub1, sub2 ].objectEnumerator];\n\t});\n\n\tqck_it(@\"should send all values from both signals\", ^{\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t[merged subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t}];\n\n\t\t[sub1 sendNext:@1];\n\t\t[sub2 sendNext:@2];\n\t\t[sub2 sendNext:@3];\n\t\t[sub1 sendNext:@4];\n\n\t\tNSArray *expected = @[ @1, @2, @3, @4 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should send an error if one occurs\", ^{\n\t\t__block NSError *errorReceived;\n\t\t[merged subscribeError:^(NSError *error) {\n\t\t\terrorReceived = error;\n\t\t}];\n\n\t\t[sub1 sendError:RACSignalTestError];\n\t\texpect(errorReceived).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should complete only after both signals complete\", ^{\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t__block BOOL completed = NO;\n\t\t[merged subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\t[sub1 sendNext:@1];\n\t\t[sub2 sendNext:@2];\n\t\t[sub2 sendNext:@3];\n\t\t[sub2 sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[sub1 sendNext:@4];\n\t\t[sub1 sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\n\t\tNSArray *expected = @[ @1, @2, @3, @4 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should complete immediately when not given any signals\", ^{\n\t\tRACSignal *signal = [RACSignal merge:@[].objectEnumerator];\n\n\t\t__block BOOL completed = NO;\n\t\t[signal subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should complete only after both signals complete for any number of subscribers\", ^{\n\t\t__block BOOL completed1 = NO;\n\t\t__block BOOL completed2 = NO;\n\t\t[merged subscribeCompleted:^{\n\t\t\tcompleted1 = YES;\n\t\t}];\n\n\t\t[merged subscribeCompleted:^{\n\t\t\tcompleted2 = YES;\n\t\t}];\n\n\t\texpect(@(completed1)).to(beFalsy());\n\t\texpect(@(completed2)).to(beFalsy());\n\n\t\t[sub1 sendCompleted];\n\t\t[sub2 sendCompleted];\n\t\texpect(@(completed1)).to(beTruthy());\n\t\texpect(@(completed2)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-flatten:\", ^{\n\t__block BOOL subscribedTo1 = NO;\n\t__block BOOL subscribedTo2 = NO;\n\t__block BOOL subscribedTo3 = NO;\n\t__block RACSignal *sub1;\n\t__block RACSignal *sub2;\n\t__block RACSignal *sub3;\n\t__block RACSubject *subject1;\n\t__block RACSubject *subject2;\n\t__block RACSubject *subject3;\n\t__block RACSubject *signalsSubject;\n\t__block NSMutableArray *values;\n\n\tqck_beforeEach(^{\n\t\tsubscribedTo1 = NO;\n\t\tsubject1 = [RACSubject subject];\n\t\tsub1 = [RACSignal defer:^{\n\t\t\tsubscribedTo1 = YES;\n\t\t\treturn subject1;\n\t\t}];\n\n\t\tsubscribedTo2 = NO;\n\t\tsubject2 = [RACSubject subject];\n\t\tsub2 = [RACSignal defer:^{\n\t\t\tsubscribedTo2 = YES;\n\t\t\treturn subject2;\n\t\t}];\n\n\t\tsubscribedTo3 = NO;\n\t\tsubject3 = [RACSubject subject];\n\t\tsub3 = [RACSignal defer:^{\n\t\t\tsubscribedTo3 = YES;\n\t\t\treturn subject3;\n\t\t}];\n\n\t\tsignalsSubject = [RACSubject subject];\n\n\t\tvalues = [NSMutableArray array];\n\t});\n\n\tqck_describe(@\"when its max is 0\", ^{\n\t\tqck_it(@\"should merge all the signals concurrently\", ^{\n\t\t\t[[signalsSubject flatten:0] subscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t\texpect(@(subscribedTo1)).to(beFalsy());\n\t\t\texpect(@(subscribedTo2)).to(beFalsy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[signalsSubject sendNext:sub1];\n\t\t\t[signalsSubject sendNext:sub2];\n\n\t\t\texpect(@(subscribedTo1)).to(beTruthy());\n\t\t\texpect(@(subscribedTo2)).to(beTruthy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[subject1 sendNext:@1];\n\n\t\t\t[signalsSubject sendNext:sub3];\n\n\t\t\texpect(@(subscribedTo1)).to(beTruthy());\n\t\t\texpect(@(subscribedTo2)).to(beTruthy());\n\t\t\texpect(@(subscribedTo3)).to(beTruthy());\n\n\t\t\t[subject1 sendCompleted];\n\n\t\t\t[subject2 sendNext:@2];\n\t\t\t[subject2 sendCompleted];\n\n\t\t\t[subject3 sendNext:@3];\n\t\t\t[subject3 sendCompleted];\n\n\t\t\tNSArray *expected = @[ @1, @2, @3 ];\n\t\t\texpect(values).to(equal(expected));\n\t\t});\n\n\t\tqck_itBehavesLike(RACSignalMergeConcurrentCompletionExampleGroup, ^{\n\t\t\treturn @{ RACSignalMaxConcurrent: @0 };\n\t\t});\n\t});\n\n\tqck_describe(@\"when its max is > 0\", ^{\n\t\tqck_it(@\"should merge only the given number at a time\", ^{\n\t\t\t[[signalsSubject flatten:1] subscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t\texpect(@(subscribedTo1)).to(beFalsy());\n\t\t\texpect(@(subscribedTo2)).to(beFalsy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[signalsSubject sendNext:sub1];\n\t\t\t[signalsSubject sendNext:sub2];\n\n\t\t\texpect(@(subscribedTo1)).to(beTruthy());\n\t\t\texpect(@(subscribedTo2)).to(beFalsy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[subject1 sendNext:@1];\n\n\t\t\t[signalsSubject sendNext:sub3];\n\n\t\t\texpect(@(subscribedTo1)).to(beTruthy());\n\t\t\texpect(@(subscribedTo2)).to(beFalsy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[signalsSubject sendCompleted];\n\n\t\t\texpect(@(subscribedTo1)).to(beTruthy());\n\t\t\texpect(@(subscribedTo2)).to(beFalsy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[subject1 sendCompleted];\n\n\t\t\texpect(@(subscribedTo2)).to(beTruthy());\n\t\t\texpect(@(subscribedTo3)).to(beFalsy());\n\n\t\t\t[subject2 sendNext:@2];\n\t\t\t[subject2 sendCompleted];\n\n\t\t\texpect(@(subscribedTo3)).to(beTruthy());\n\n\t\t\t[subject3 sendNext:@3];\n\t\t\t[subject3 sendCompleted];\n\n\t\t\tNSArray *expected = @[ @1, @2, @3 ];\n\t\t\texpect(values).to(equal(expected));\n\t\t});\n\n\t\tqck_itBehavesLike(RACSignalMergeConcurrentCompletionExampleGroup, ^{\n\t\t\treturn @{ RACSignalMaxConcurrent: @1 };\n\t\t});\n\t});\n\n\tqck_it(@\"shouldn't create a retain cycle\", ^{\n\t\t__block BOOL subjectDeallocd = NO;\n\t\t__block BOOL signalDeallocd = NO;\n\t\t@autoreleasepool {\n\t\t\tRACSubject *subject __attribute__((objc_precise_lifetime)) = [RACSubject subject];\n\t\t\t[subject.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsubjectDeallocd = YES;\n\t\t\t}]];\n\n\t\t\tRACSignal *signal __attribute__((objc_precise_lifetime)) = [subject flatten];\n\t\t\t[signal.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\tsignalDeallocd = YES;\n\t\t\t}]];\n\n\t\t\t[signal subscribeCompleted:^{}];\n\n\t\t\t[subject sendCompleted];\n\t\t}\n\n\t\texpect(@(subjectDeallocd)).toEventually(beTruthy());\n\t\texpect(@(signalDeallocd)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should not crash when disposing while subscribing\", ^{\n\t\tRACDisposable *disposable = [[signalsSubject flatten:0] subscribeCompleted:^{\n\t\t}];\n\n\t\t[signalsSubject sendNext:[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[disposable dispose];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}]];\n\n\t\t[signalsSubject sendCompleted];\n\t});\n\n\tqck_it(@\"should dispose after last synchronous signal subscription and should not crash\", ^{\n\n\t\tRACSignal *flattened = [signalsSubject flatten:1];\n\t\tRACDisposable *flattenDisposable = [flattened subscribeCompleted:^{}];\n\n\t\tRACSignal *syncSignal = [RACSignal createSignal:^ RACDisposable *(id<RACSubscriber> subscriber) {\n\t\t\texpect(@(flattenDisposable.disposed)).to(beFalsy());\n\t\t\t[subscriber sendCompleted];\n\t\t\texpect(@(flattenDisposable.disposed)).to(beTruthy());\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACSignal *asyncSignal = [sub1 delay:0];\n\n\t\t[signalsSubject sendNext:asyncSignal];\n\t\t[signalsSubject sendNext:syncSignal];\n\n\t\t[signalsSubject sendCompleted];\n\n\t\t[subject1 sendCompleted];\n\n\t\texpect(@(flattenDisposable.disposed)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should not crash when disposed because of takeUntil:\", ^{\n\t\tfor (int i = 0; i < 100; i++) {\n\t\t\tRACSubject *flattenedReceiver = [RACSubject subject];\n\t\t\tRACSignal *done = [flattenedReceiver map:^(NSNumber *n) {\n\t\t\t\treturn @(n.integerValue == 1);\n\t\t\t}];\n\n\t\t\tRACSignal *flattened = [signalsSubject flatten:1];\n\n\t\t\tRACDisposable *flattenDisposable = [[flattened takeUntil:[done ignore:@NO]] subscribe:flattenedReceiver];\n\n\t\t\tRACSignal *syncSignal = [RACSignal createSignal:^ RACDisposable *(id<RACSubscriber> subscriber) {\n\t\t\t\texpect(@(flattenDisposable.disposed)).to(beFalsy());\n\t\t\t\t[subscriber sendNext:@1];\n\t\t\t\texpect(@(flattenDisposable.disposed)).to(beTruthy());\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\treturn nil;\n\t\t\t}];\n\n\t\t\tRACSignal *asyncSignal = [sub1 delay:0];\n\t\t\t[subject1 sendNext:@0];\n\n\t\t\t[signalsSubject sendNext:asyncSignal];\n\t\t\t[signalsSubject sendNext:syncSignal];\n\t\t\t[signalsSubject sendCompleted];\n\n\t\t\t[subject1 sendCompleted];\n\n\t\t\texpect(@(flattenDisposable.disposed)).toEventually(beTruthy());\n\t\t}\n\t});\n});\n\nqck_describe(@\"-switchToLatest\", ^{\n\t__block RACSubject *subject;\n\n\t__block NSMutableArray *values;\n\t__block NSError *lastError = nil;\n\t__block BOOL completed = NO;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\n\t\tvalues = [NSMutableArray array];\n\t\tlastError = nil;\n\t\tcompleted = NO;\n\n\t\t[[subject switchToLatest] subscribeNext:^(id x) {\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[values addObject:x];\n\t\t} error:^(NSError *error) {\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\tlastError = error;\n\t\t} completed:^{\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\tcompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should send values from the most recent signal\", ^{\n\t\t[subject sendNext:[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@2];\n\t\t\treturn nil;\n\t\t}]];\n\n\t\t[subject sendNext:[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@3];\n\t\t\t[subscriber sendNext:@4];\n\t\t\treturn nil;\n\t\t}]];\n\n\t\tNSArray *expected = @[ @1, @2, @3, @4 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should send errors from the most recent signal\", ^{\n\t\t[subject sendNext:[RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\t\treturn nil;\n\t\t}]];\n\n\t\texpect(lastError).notTo(beNil());\n\t});\n\n\tqck_it(@\"should not send completed if only the switching signal completes\", ^{\n\t\t[subject sendNext:RACSignal.never];\n\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should send completed when the switching signal completes and the last sent signal does\", ^{\n\t\t[subject sendNext:RACSignal.empty];\n\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[subject sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should accept nil signals\", ^{\n\t\t[subject sendNext:nil];\n\t\t[subject sendNext:[RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendNext:@2];\n\t\t\treturn nil;\n\t\t}]];\n\n\t\tNSArray *expected = @[ @1, @2 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should return a cold signal\", ^{\n\t\t__block NSUInteger subscriptions = 0;\n\t\tRACSignal *signalOfSignals = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\tsubscriptions++;\n\t\t\t[subscriber sendNext:[RACSignal empty]];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACSignal *switched = [signalOfSignals switchToLatest];\n\n\t\t[[switched publish] connect];\n\t\texpect(@(subscriptions)).to(equal(@1));\n\n\t\t[[switched publish] connect];\n\t\texpect(@(subscriptions)).to(equal(@2));\n\t});\n});\n\nqck_describe(@\"+switch:cases:default:\", ^{\n\t__block RACSubject *keySubject;\n\n\t__block RACSubject *subjectZero;\n\t__block RACSubject *subjectOne;\n\t__block RACSubject *subjectTwo;\n\n\t__block RACSubject *defaultSubject;\n\n\t__block NSMutableArray *values;\n\t__block NSError *lastError = nil;\n\t__block BOOL completed = NO;\n\n\tqck_beforeEach(^{\n\t\tkeySubject = [RACSubject subject];\n\n\t\tsubjectZero = [RACSubject subject];\n\t\tsubjectOne = [RACSubject subject];\n\t\tsubjectTwo = [RACSubject subject];\n\n\t\tdefaultSubject = [RACSubject subject];\n\n\t\tvalues = [NSMutableArray array];\n\t\tlastError = nil;\n\t\tcompleted = NO;\n\t});\n\n\tqck_describe(@\"switching between values with a default\", ^{\n\t\t__block RACSignal *switchSignal;\n\n\t\tqck_beforeEach(^{\n\t\t\tswitchSignal = [RACSignal switch:keySubject cases:@{\n\t\t\t\t@0: subjectZero,\n\t\t\t\t@1: subjectOne,\n\t\t\t\t@2: subjectTwo,\n\t\t\t} default:[RACSignal never]];\n\n\t\t\t[switchSignal subscribeNext:^(id x) {\n\t\t\t\texpect(lastError).to(beNil());\n\t\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t\t[values addObject:x];\n\t\t\t} error:^(NSError *error) {\n\t\t\t\texpect(lastError).to(beNil());\n\t\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t\tlastError = error;\n\t\t\t} completed:^{\n\t\t\t\texpect(lastError).to(beNil());\n\t\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\t\t});\n\n\t\tqck_it(@\"should not send any values before a key is sent\", ^{\n\t\t\t[subjectZero sendNext:RACUnit.defaultUnit];\n\t\t\t[subjectOne sendNext:RACUnit.defaultUnit];\n\t\t\t[subjectTwo sendNext:RACUnit.defaultUnit];\n\n\t\t\texpect(values).to(equal(@[]));\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should send events based on the latest key\", ^{\n\t\t\t[keySubject sendNext:@0];\n\n\t\t\t[subjectZero sendNext:@\"zero\"];\n\t\t\t[subjectZero sendNext:@\"zero\"];\n\t\t\t[subjectOne sendNext:@\"one\"];\n\t\t\t[subjectTwo sendNext:@\"two\"];\n\n\t\t\tNSArray *expected = @[ @\"zero\", @\"zero\" ];\n\t\t\texpect(values).to(equal(expected));\n\n\t\t\t[keySubject sendNext:@1];\n\n\t\t\t[subjectZero sendNext:@\"zero\"];\n\t\t\t[subjectOne sendNext:@\"one\"];\n\t\t\t[subjectTwo sendNext:@\"two\"];\n\n\t\t\texpected = @[ @\"zero\", @\"zero\", @\"one\" ];\n\t\t\texpect(values).to(equal(expected));\n\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[keySubject sendNext:@2];\n\n\t\t\t[subjectZero sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\t\t[subjectOne sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\t\texpect(lastError).to(beNil());\n\n\t\t\t[subjectTwo sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\t\texpect(lastError).notTo(beNil());\n\t\t});\n\n\t\tqck_it(@\"should not send completed when only the key signal completes\", ^{\n\t\t\t[keySubject sendNext:@0];\n\t\t\t[subjectZero sendNext:@\"zero\"];\n\t\t\t[keySubject sendCompleted];\n\n\t\t\texpect(values).to(equal(@[ @\"zero\" ]));\n\t\t\texpect(@(completed)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should send completed when the key signal and the latest sent signal complete\", ^{\n\t\t\t[keySubject sendNext:@0];\n\t\t\t[subjectZero sendNext:@\"zero\"];\n\t\t\t[keySubject sendCompleted];\n\t\t\t[subjectZero sendCompleted];\n\n\t\t\texpect(values).to(equal(@[ @\"zero\" ]));\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\t});\n\n\tqck_it(@\"should use the default signal if key that was sent does not have an associated signal\", ^{\n\t\t[[RACSignal\n\t\t\tswitch:keySubject\n\t\t\tcases:@{\n\t\t\t\t@0: subjectZero,\n\t\t\t\t@1: subjectOne,\n\t\t\t}\n\t\t\tdefault:defaultSubject]\n\t\t\tsubscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t[keySubject sendNext:@\"not a valid key\"];\n\t\t[defaultSubject sendNext:@\"default\"];\n\n\t\texpect(values).to(equal(@[ @\"default\" ]));\n\n\t\t[keySubject sendNext:nil];\n\t\t[defaultSubject sendNext:@\"default\"];\n\n\t\texpect(values).to(equal((@[ @\"default\", @\"default\" ])));\n\t});\n\n\tqck_it(@\"should send an error if key that was sent does not have an associated signal and there's no default\", ^{\n\t\t[[RACSignal\n\t\t\tswitch:keySubject\n\t\t\tcases:@{\n\t\t\t\t@0: subjectZero,\n\t\t\t\t@1: subjectOne,\n\t\t\t}\n\t\t\tdefault:nil]\n\t\t\tsubscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t} error:^(NSError *error) {\n\t\t\t\tlastError = error;\n\t\t\t}];\n\n\t\t[keySubject sendNext:@0];\n\t\t[subjectZero sendNext:@\"zero\"];\n\n\t\texpect(values).to(equal(@[ @\"zero\" ]));\n\t\texpect(lastError).to(beNil());\n\n\t\t[keySubject sendNext:nil];\n\n\t\texpect(values).to(equal(@[ @\"zero\" ]));\n\t\texpect(lastError).notTo(beNil());\n\t\texpect(lastError.domain).to(equal(RACSignalErrorDomain));\n\t\texpect(@(lastError.code)).to(equal(@(RACSignalErrorNoMatchingCase)));\n\t});\n\n\tqck_it(@\"should match RACTupleNil case when a nil value is sent\", ^{\n\t\t[[RACSignal\n\t\t\tswitch:keySubject\n\t\t\tcases:@{\n\t\t\t\tRACTupleNil.tupleNil: subjectZero,\n\t\t\t}\n\t\t\tdefault:defaultSubject]\n\t\t\tsubscribeNext:^(id x) {\n\t\t\t\t[values addObject:x];\n\t\t\t}];\n\n\t\t[keySubject sendNext:nil];\n\t\t[subjectZero sendNext:@\"zero\"];\n\t\texpect(values).to(equal(@[ @\"zero\" ]));\n\t});\n});\n\nqck_describe(@\"+if:then:else\", ^{\n\t__block RACSubject *boolSubject;\n\t__block RACSubject *trueSubject;\n\t__block RACSubject *falseSubject;\n\n\t__block NSMutableArray *values;\n\t__block NSError *lastError = nil;\n\t__block BOOL completed = NO;\n\n\tqck_beforeEach(^{\n\t\tboolSubject = [RACSubject subject];\n\t\ttrueSubject = [RACSubject subject];\n\t\tfalseSubject = [RACSubject subject];\n\n\t\tvalues = [NSMutableArray array];\n\t\tlastError = nil;\n\t\tcompleted = NO;\n\n\t\t[[RACSignal if:boolSubject then:trueSubject else:falseSubject] subscribeNext:^(id x) {\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\t[values addObject:x];\n\t\t} error:^(NSError *error) {\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\tlastError = error;\n\t\t} completed:^{\n\t\t\texpect(lastError).to(beNil());\n\t\t\texpect(@(completed)).to(beFalsy());\n\n\t\t\tcompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should not send any values before a boolean is sent\", ^{\n\t\t[trueSubject sendNext:RACUnit.defaultUnit];\n\t\t[falseSubject sendNext:RACUnit.defaultUnit];\n\n\t\texpect(values).to(equal(@[]));\n\t\texpect(lastError).to(beNil());\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should send events based on the latest boolean\", ^{\n\t\t[boolSubject sendNext:@YES];\n\n\t\t[trueSubject sendNext:@\"foo\"];\n\t\t[falseSubject sendNext:@\"buzz\"];\n\t\t[trueSubject sendNext:@\"bar\"];\n\n\t\tNSArray *expected = @[ @\"foo\", @\"bar\" ];\n\t\texpect(values).to(equal(expected));\n\t\texpect(lastError).to(beNil());\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[boolSubject sendNext:@NO];\n\n\t\t[trueSubject sendNext:@\"baz\"];\n\t\t[falseSubject sendNext:@\"buzz\"];\n\t\t[trueSubject sendNext:@\"barfoo\"];\n\n\t\texpected = @[ @\"foo\", @\"bar\", @\"buzz\" ];\n\t\texpect(values).to(equal(expected));\n\t\texpect(lastError).to(beNil());\n\t\texpect(@(completed)).to(beFalsy());\n\n\t\t[trueSubject sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\texpect(lastError).to(beNil());\n\n\t\t[falseSubject sendError:[NSError errorWithDomain:@\"\" code:-1 userInfo:nil]];\n\t\texpect(lastError).notTo(beNil());\n\t});\n\n\tqck_it(@\"should not send completed when only the BOOL signal completes\", ^{\n\t\t[boolSubject sendNext:@YES];\n\t\t[trueSubject sendNext:@\"foo\"];\n\t\t[boolSubject sendCompleted];\n\n\t\texpect(values).to(equal(@[ @\"foo\" ]));\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should send completed when the BOOL signal and the latest sent signal complete\", ^{\n\t\t[boolSubject sendNext:@YES];\n\t\t[trueSubject sendNext:@\"foo\"];\n\t\t[trueSubject sendCompleted];\n\t\t[boolSubject sendCompleted];\n\n\t\texpect(values).to(equal(@[ @\"foo\" ]));\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"+interval:onScheduler: and +interval:onScheduler:withLeeway:\", ^{\n\tstatic const NSTimeInterval interval = 0.1;\n\tstatic const NSTimeInterval leeway = 0.2;\n\n\t__block void (^testTimer)(RACSignal *, NSNumber *, NSNumber *) = nil;\n\n\tqck_beforeEach(^{\n\t\ttestTimer = [^(RACSignal *timer, NSNumber *minInterval, NSNumber *leeway) {\n\t\t\t__block NSUInteger nextsReceived = 0;\n\n\t\t\tNSTimeInterval startTime = NSDate.timeIntervalSinceReferenceDate;\n\t\t\t[[timer take:3] subscribeNext:^(NSDate *date) {\n\t\t\t\t++nextsReceived;\n\n\t\t\t\tNSTimeInterval currentTime = date.timeIntervalSinceReferenceDate;\n\n\t\t\t\t// Uniformly distribute the expected interval for all\n\t\t\t\t// received values. We do this instead of saving a timestamp\n\t\t\t\t// because a delayed interval may cause the _next_ value to\n\t\t\t\t// send sooner than the interval.\n\t\t\t\tNSTimeInterval expectedMinInterval = minInterval.doubleValue * nextsReceived;\n\t\t\t\tNSTimeInterval expectedMaxInterval = expectedMinInterval + leeway.doubleValue * 3 + 0.1;\n\n\t\t\t\texpect(@(currentTime - startTime)).to(beGreaterThanOrEqualTo(@(expectedMinInterval)));\n\t\t\t\texpect(@(currentTime - startTime)).to(beLessThanOrEqualTo(@(expectedMaxInterval)));\n\t\t\t}];\n\n\t\t\texpect(@(nextsReceived)).toEventually(equal(@3));\n\t\t} copy];\n\t});\n\n\tqck_describe(@\"+interval:onScheduler:\", ^{\n\t\tqck_it(@\"should work on the main thread scheduler\", ^{\n\t\t\ttestTimer([RACSignal interval:interval onScheduler:RACScheduler.mainThreadScheduler], @(interval), @0);\n\t\t});\n\n\t\tqck_it(@\"should work on a background scheduler\", ^{\n\t\t\ttestTimer([RACSignal interval:interval onScheduler:[RACScheduler scheduler]], @(interval), @0);\n\t\t});\n\t});\n\n\tqck_describe(@\"+interval:onScheduler:withLeeway:\", ^{\n\t\tqck_it(@\"should work on the main thread scheduler\", ^{\n\t\t\ttestTimer([RACSignal interval:interval onScheduler:RACScheduler.mainThreadScheduler withLeeway:leeway], @(interval), @(leeway));\n\t\t});\n\n\t\tqck_it(@\"should work on a background scheduler\", ^{\n\t\t\ttestTimer([RACSignal interval:interval onScheduler:[RACScheduler scheduler] withLeeway:leeway], @(interval), @(leeway));\n\t\t});\n\t});\n});\n\nqck_describe(@\"-timeout:onScheduler:\", ^{\n\t__block RACSubject *subject;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t});\n\n\tqck_it(@\"should time out\", ^{\n\t\tRACTestScheduler *scheduler = [[RACTestScheduler alloc] init];\n\n\t\t__block NSError *receivedError = nil;\n\t\t[[subject timeout:1 onScheduler:scheduler] subscribeError:^(NSError *e) {\n\t\t\treceivedError = e;\n\t\t}];\n\n\t\texpect(receivedError).to(beNil());\n\n\t\t[scheduler stepAll];\n\t\texpect(receivedError).toEventuallyNot(beNil());\n\t\texpect(receivedError.domain).to(equal(RACSignalErrorDomain));\n\t\texpect(@(receivedError.code)).to(equal(@(RACSignalErrorTimedOut)));\n\t});\n\n\tqck_it(@\"should pass through events while not timed out\", ^{\n\t\t__block id next = nil;\n\t\t__block BOOL completed = NO;\n\t\t[[subject timeout:1 onScheduler:RACScheduler.mainThreadScheduler] subscribeNext:^(id x) {\n\t\t\tnext = x;\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\t[subject sendNext:RACUnit.defaultUnit];\n\t\texpect(next).to(equal(RACUnit.defaultUnit));\n\n\t\t[subject sendCompleted];\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should not time out after disposal\", ^{\n\t\tRACTestScheduler *scheduler = [[RACTestScheduler alloc] init];\n\n\t\t__block NSError *receivedError = nil;\n\t\tRACDisposable *disposable = [[subject timeout:1 onScheduler:scheduler] subscribeError:^(NSError *e) {\n\t\t\treceivedError = e;\n\t\t}];\n\n\t\t[disposable dispose];\n\t\t[scheduler stepAll];\n\t\texpect(receivedError).to(beNil());\n\t});\n});\n\nqck_describe(@\"-delay:\", ^{\n\t__block RACSubject *subject;\n\t__block RACSignal *delayedSignal;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t\tdelayedSignal = [subject delay:0];\n\t});\n\n\tqck_it(@\"should delay nexts\", ^{\n\t\t__block id next = nil;\n\t\t[delayedSignal subscribeNext:^(id x) {\n\t\t\tnext = x;\n\t\t}];\n\n\t\t[subject sendNext:@\"foo\"];\n\t\texpect(next).to(beNil());\n\t\texpect(next).toEventually(equal(@\"foo\"));\n\t});\n\n\tqck_it(@\"should delay completed\", ^{\n\t\t__block BOOL completed = NO;\n\t\t[delayedSignal subscribeCompleted:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\n\t\t[subject sendCompleted];\n\t\texpect(@(completed)).to(beFalsy());\n\t\texpect(@(completed)).toEventually(beTruthy());\n\t});\n\n\tqck_it(@\"should not delay errors\", ^{\n\t\t__block NSError *error = nil;\n\t\t[delayedSignal subscribeError:^(NSError *e) {\n\t\t\terror = e;\n\t\t}];\n\n\t\t[subject sendError:RACSignalTestError];\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should cancel delayed events when disposed\", ^{\n\t\t__block id next = nil;\n\t\tRACDisposable *disposable = [delayedSignal subscribeNext:^(id x) {\n\t\t\tnext = x;\n\t\t}];\n\n\t\t[subject sendNext:@\"foo\"];\n\n\t\t__block BOOL done = NO;\n\t\t[RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\tdone = YES;\n\t\t}];\n\n\t\t[disposable dispose];\n\n\t\texpect(@(done)).toEventually(beTruthy());\n\t\texpect(next).to(beNil());\n\t});\n});\n\nqck_describe(@\"-catch:\", ^{\n\tqck_it(@\"should subscribe to ensuing signal on error\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\tRACSignal *signal = [subject catch:^(NSError *error) {\n\t\t\treturn [RACSignal return:@41];\n\t\t}];\n\n\t\t__block id value = nil;\n\t\t[signal subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\t[subject sendError:RACSignalTestError];\n\t\texpect(value).to(equal(@41));\n\t});\n\n\tqck_it(@\"should prevent source error from propagating\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\tRACSignal *signal = [subject catch:^(NSError *error) {\n\t\t\treturn [RACSignal empty];\n\t\t}];\n\n\t\t__block BOOL errorReceived = NO;\n\t\t[signal subscribeError:^(NSError *error) {\n\t\t\terrorReceived = YES;\n\t\t}];\n\n\t\t[subject sendError:RACSignalTestError];\n\t\texpect(@(errorReceived)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should propagate error from ensuing signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\tNSError *secondaryError = [NSError errorWithDomain:@\"bubs\" code:41 userInfo:nil];\n\t\tRACSignal *signal = [subject catch:^(NSError *error) {\n\t\t\treturn [RACSignal error:secondaryError];\n\t\t}];\n\n\t\t__block NSError *errorReceived = nil;\n\t\t[signal subscribeError:^(NSError *error) {\n\t\t\terrorReceived = error;\n\t\t}];\n\n\t\t[subject sendError:RACSignalTestError];\n\t\texpect(errorReceived).to(equal(secondaryError));\n\t});\n\n\tqck_it(@\"should dispose ensuing signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\t__block BOOL disposed = NO;\n\t\tRACSignal *signal = [subject catch:^(NSError *error) {\n\t\t\treturn [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t\tdisposed = YES;\n\t\t\t\t}];\n\t\t\t}];\n\t\t}];\n\n\t\tRACDisposable *disposable = [signal subscribeCompleted:^{}];\n\t\t[subject sendError:RACSignalTestError];\n\t\t[disposable dispose];\n\n\t\texpect(@(disposed)).toEventually(beTruthy());\n\t});\n});\n\nqck_describe(@\"+try:\", ^{\n\t__block id value;\n\t__block NSError *receivedError;\n\n\tqck_beforeEach(^{\n\t\tvalue = nil;\n\t\treceivedError = nil;\n\t});\n\n\tqck_it(@\"should pass the value if it is non-nil\", ^{\n\t\tRACSignal *signal = [RACSignal try:^(NSError **error) {\n\t\t\treturn @\"foo\";\n\t\t}];\n\n\t\t[signal subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t}];\n\n\t\texpect(value).to(equal(@\"foo\"));\n\t\texpect(receivedError).to(beNil());\n\t});\n\n\tqck_it(@\"should ignore the error if the value is non-nil\", ^{\n\t\tRACSignal *signal = [RACSignal try:^(NSError **error) {\n\t\t\tif (error != nil) *error = RACSignalTestError;\n\n\t\t\treturn @\"foo\";\n\t\t}];\n\n\t\t[signal subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t}];\n\n\t\texpect(receivedError).to(beNil());\n\t\texpect(value).to(equal(@\"foo\"));\n\t});\n\n\tqck_it(@\"should send the error if the return value is nil\", ^{\n\t\tRACSignal *signal = [RACSignal try:^id(NSError **error) {\n\t\t\tif (error) *error = RACSignalTestError;\n\n\t\t\treturn nil;\n\t\t}];\n\n\t\t[signal subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t}];\n\n\t\texpect(value).to(beNil());\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t});\n});\n\nqck_describe(@\"-try:\", ^{\n\t__block RACSubject *subject;\n\t__block NSError *receivedError;\n\t__block NSMutableArray *nextValues;\n\t__block BOOL completed;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t\tnextValues = [NSMutableArray array];\n\t\tcompleted = NO;\n\t\treceivedError = nil;\n\n\t\t[[subject try:^(NSString *value, NSError **error) {\n\t\t\tif (value != nil) return YES;\n\n\t\t\tif (error != nil) *error = RACSignalTestError;\n\n\t\t\treturn NO;\n\t\t}] subscribeNext:^(id x) {\n\t\t\t[nextValues addObject:x];\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should pass values while YES is returned from the tryBlock\", ^{\n\t\t[subject sendNext:@\"foo\"];\n\t\t[subject sendNext:@\"bar\"];\n\t\t[subject sendNext:@\"baz\"];\n\t\t[subject sendNext:@\"buzz\"];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *receivedValues = [nextValues copy];\n\t\tNSArray *expectedValues = @[ @\"foo\", @\"bar\", @\"baz\", @\"buzz\" ];\n\n\t\texpect(receivedError).to(beNil());\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should pass values until NO is returned from the tryBlock\", ^{\n\t\t[subject sendNext:@\"foo\"];\n\t\t[subject sendNext:@\"bar\"];\n\t\t[subject sendNext:nil];\n\t\t[subject sendNext:@\"buzz\"];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *receivedValues = [nextValues copy];\n\t\tNSArray *expectedValues = @[ @\"foo\", @\"bar\" ];\n\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n});\n\nqck_describe(@\"-tryMap:\", ^{\n\t__block RACSubject *subject;\n\t__block NSError *receivedError;\n\t__block NSMutableArray *nextValues;\n\t__block BOOL completed;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t\tnextValues = [NSMutableArray array];\n\t\tcompleted = NO;\n\t\treceivedError = nil;\n\n\t\t[[subject tryMap:^ id (NSString *value, NSError **error) {\n\t\t\tif (value != nil) return [NSString stringWithFormat:@\"%@_a\", value];\n\n\t\t\tif (error != nil) *error = RACSignalTestError;\n\n\t\t\treturn nil;\n\t\t}] subscribeNext:^(id x) {\n\t\t\t[nextValues addObject:x];\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t} completed:^{\n\t\t\tcompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should map values with the mapBlock\", ^{\n\t\t[subject sendNext:@\"foo\"];\n\t\t[subject sendNext:@\"bar\"];\n\t\t[subject sendNext:@\"baz\"];\n\t\t[subject sendNext:@\"buzz\"];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *receivedValues = [nextValues copy];\n\t\tNSArray *expectedValues = @[ @\"foo_a\", @\"bar_a\", @\"baz_a\", @\"buzz_a\" ];\n\n\t\texpect(receivedError).to(beNil());\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(@(completed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should map values with the mapBlock, until the mapBlock returns nil\", ^{\n\t\t[subject sendNext:@\"foo\"];\n\t\t[subject sendNext:@\"bar\"];\n\t\t[subject sendNext:nil];\n\t\t[subject sendNext:@\"buzz\"];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *receivedValues = [nextValues copy];\n\t\tNSArray *expectedValues = @[ @\"foo_a\", @\"bar_a\" ];\n\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(@(completed)).to(beFalsy());\n\t});\n});\n\nqck_describe(@\"throttling\", ^{\n\t__block RACSubject *subject;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t});\n\n\tqck_describe(@\"-throttle:\", ^{\n\t\t__block RACSignal *throttledSignal;\n\n\t\tqck_beforeEach(^{\n\t\t\tthrottledSignal = [subject throttle:0];\n\t\t});\n\n\t\tqck_it(@\"should throttle nexts\", ^{\n\t\t\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\t\t\t[throttledSignal subscribeNext:^(id x) {\n\t\t\t\t[valuesReceived addObject:x];\n\t\t\t}];\n\n\t\t\t[subject sendNext:@\"foo\"];\n\t\t\t[subject sendNext:@\"bar\"];\n\t\t\texpect(valuesReceived).to(equal(@[]));\n\n\t\t\tNSArray *expected = @[ @\"bar\" ];\n\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\n\t\t\t[subject sendNext:@\"buzz\"];\n\t\t\texpect(valuesReceived).to(equal(expected));\n\n\t\t\texpected = @[ @\"bar\", @\"buzz\" ];\n\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\t\t});\n\n\t\tqck_it(@\"should forward completed immediately\", ^{\n\t\t\t__block BOOL completed = NO;\n\t\t\t[throttledSignal subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\t\t[subject sendCompleted];\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should forward errors immediately\", ^{\n\t\t\t__block NSError *error = nil;\n\t\t\t[throttledSignal subscribeError:^(NSError *e) {\n\t\t\t\terror = e;\n\t\t\t}];\n\n\t\t\t[subject sendError:RACSignalTestError];\n\t\t\texpect(error).to(equal(RACSignalTestError));\n\t\t});\n\n\t\tqck_it(@\"should cancel future nexts when disposed\", ^{\n\t\t\t__block id next = nil;\n\t\t\tRACDisposable *disposable = [throttledSignal subscribeNext:^(id x) {\n\t\t\t\tnext = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@\"foo\"];\n\n\t\t\t__block BOOL done = NO;\n\t\t\t[RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\t\tdone = YES;\n\t\t\t}];\n\n\t\t\t[disposable dispose];\n\n\t\t\texpect(@(done)).toEventually(beTruthy());\n\t\t\texpect(next).to(beNil());\n\t\t});\n\t});\n\n\tqck_describe(@\"-throttle:valuesPassingTest:\", ^{\n\t\t__block RACSignal *throttledSignal;\n\t\t__block BOOL shouldThrottle;\n\n\t\tqck_beforeEach(^{\n\t\t\tshouldThrottle = YES;\n\n\t\t\t__block id value = nil;\n\t\t\tthrottledSignal = [[subject\n\t\t\t\tdoNext:^(id x) {\n\t\t\t\t\tvalue = x;\n\t\t\t\t}]\n\t\t\t\tthrottle:0 valuesPassingTest:^(id x) {\n\t\t\t\t\t// Make sure that we're given the latest value.\n\t\t\t\t\texpect(x).to(beIdenticalTo(value));\n\n\t\t\t\t\treturn shouldThrottle;\n\t\t\t\t}];\n\n\t\t\texpect(throttledSignal).notTo(beNil());\n\t\t});\n\n\t\tqck_describe(@\"nexts\", ^{\n\t\t\t__block NSMutableArray *valuesReceived;\n\t\t\t__block NSMutableArray *expected;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\texpected = [[NSMutableArray alloc] init];\n\t\t\t\tvaluesReceived = [[NSMutableArray alloc] init];\n\n\t\t\t\t[throttledSignal subscribeNext:^(id x) {\n\t\t\t\t\t[valuesReceived addObject:x];\n\t\t\t\t}];\n\t\t\t});\n\n\t\t\tqck_it(@\"should forward unthrottled values immediately\", ^{\n\t\t\t\tshouldThrottle = NO;\n\t\t\t\t[subject sendNext:@\"foo\"];\n\n\t\t\t\t[expected addObject:@\"foo\"];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should delay throttled values\", ^{\n\t\t\t\t[subject sendNext:@\"bar\"];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\n\t\t\t\t[expected addObject:@\"bar\"];\n\t\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should drop buffered values when a throttled value arrives\", ^{\n\t\t\t\t[subject sendNext:@\"foo\"];\n\t\t\t\t[subject sendNext:@\"bar\"];\n\t\t\t\t[subject sendNext:@\"buzz\"];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\n\t\t\t\t[expected addObject:@\"buzz\"];\n\t\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should drop buffered values when an immediate value arrives\", ^{\n\t\t\t\t[subject sendNext:@\"foo\"];\n\t\t\t\t[subject sendNext:@\"bar\"];\n\n\t\t\t\tshouldThrottle = NO;\n\t\t\t\t[subject sendNext:@\"buzz\"];\n\t\t\t\t[expected addObject:@\"buzz\"];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\n\t\t\t\t// Make sure that nothing weird happens when sending another\n\t\t\t\t// throttled value.\n\t\t\t\tshouldThrottle = YES;\n\t\t\t\t[subject sendNext:@\"baz\"];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\n\t\t\t\t[expected addObject:@\"baz\"];\n\t\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should not be resent upon completion\", ^{\n\t\t\t\t[subject sendNext:@\"bar\"];\n\t\t\t\t[expected addObject:@\"bar\"];\n\t\t\t\texpect(valuesReceived).toEventually(equal(expected));\n\n\t\t\t\t[subject sendCompleted];\n\t\t\t\texpect(valuesReceived).to(equal(expected));\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should forward completed immediately\", ^{\n\t\t\t__block BOOL completed = NO;\n\t\t\t[throttledSignal subscribeCompleted:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\t\t[subject sendCompleted];\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should forward errors immediately\", ^{\n\t\t\t__block NSError *error = nil;\n\t\t\t[throttledSignal subscribeError:^(NSError *e) {\n\t\t\t\terror = e;\n\t\t\t}];\n\n\t\t\t[subject sendError:RACSignalTestError];\n\t\t\texpect(error).to(equal(RACSignalTestError));\n\t\t});\n\n\t\tqck_it(@\"should cancel future nexts when disposed\", ^{\n\t\t\t__block id next = nil;\n\t\t\tRACDisposable *disposable = [throttledSignal subscribeNext:^(id x) {\n\t\t\t\tnext = x;\n\t\t\t}];\n\n\t\t\t[subject sendNext:@\"foo\"];\n\n\t\t\t__block BOOL done = NO;\n\t\t\t[RACScheduler.mainThreadScheduler after:[NSDate date] schedule:^{\n\t\t\t\tdone = YES;\n\t\t\t}];\n\n\t\t\t[disposable dispose];\n\n\t\t\texpect(@(done)).toEventually(beTruthy());\n\t\t\texpect(next).to(beNil());\n\t\t});\n\t});\n});\n\nqck_describe(@\"-then:\", ^{\n\tqck_it(@\"should continue onto returned signal\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\t__block id value = nil;\n\t\t[[subject then:^{\n\t\t\treturn [RACSignal return:@2];\n\t\t}] subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\t[subject sendNext:@1];\n\n\t\t// The value shouldn't change until the first signal completes.\n\t\texpect(value).to(beNil());\n\n\t\t[subject sendCompleted];\n\n\t\texpect(value).to(equal(@2));\n\t});\n\n\tqck_it(@\"should sequence even if no next value is sent\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\n\t\t__block id value = nil;\n\t\t[[subject then:^{\n\t\t\treturn [RACSignal return:RACUnit.defaultUnit];\n\t\t}] subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t}];\n\n\t\t[subject sendCompleted];\n\n\t\texpect(value).to(equal(RACUnit.defaultUnit));\n\t});\n});\n\nqck_describe(@\"-sequence\", ^{\n\tRACSignal *signal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t[subscriber sendNext:@1];\n\t\t[subscriber sendNext:@2];\n\t\t[subscriber sendNext:@3];\n\t\t[subscriber sendNext:@4];\n\t\t[subscriber sendCompleted];\n\t\treturn nil;\n\t}];\n\n\tqck_itBehavesLike(RACSequenceExamples, ^{\n\t\treturn @{\n\t\t\tRACSequenceExampleSequence: signal.sequence,\n\t\t\tRACSequenceExampleExpectedValues: @[ @1, @2, @3, @4 ]\n\t\t};\n\t});\n});\n\nqck_it(@\"should complete take: even if the original signal doesn't\", ^{\n\tRACSignal *sendOne = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\treturn nil;\n\t}];\n\n\t__block id value = nil;\n\t__block BOOL completed = NO;\n\t[[sendOne take:1] subscribeNext:^(id received) {\n\t\tvalue = received;\n\t} completed:^{\n\t\tcompleted = YES;\n\t}];\n\n\texpect(value).to(equal(RACUnit.defaultUnit));\n\texpect(@(completed)).to(beTruthy());\n});\n\nqck_it(@\"should complete take: even if the signal is recursive\", ^{\n\tRACSubject *subject = [RACSubject subject];\n\tconst NSUInteger number = 3;\n\tconst NSUInteger guard = number + 1;\n\n\tNSMutableArray *values = NSMutableArray.array;\n\t__block BOOL completed = NO;\n\n\t[[subject take:number] subscribeNext:^(NSNumber* received) {\n\t\t[values addObject:received];\n\t\tif (values.count >= guard) {\n\t\t\t[subject sendError:RACSignalTestError];\n\t\t}\n\t\t[subject sendNext:@(received.integerValue + 1)];\n\t} completed:^{\n\t\tcompleted = YES;\n\t}];\n\t[subject sendNext:@0];\n\n\tNSMutableArray* expectedValues = [NSMutableArray arrayWithCapacity:number];\n\tfor (NSUInteger i = 0 ; i < number ; ++i) {\n\t\t[expectedValues addObject:@(i)];\n\t}\n\n\texpect(values).to(equal(expectedValues));\n\texpect(@(completed)).to(beTruthy());\n});\n\nqck_describe(@\"+zip:\", ^{\n\t__block RACSubject *subject1 = nil;\n\t__block RACSubject *subject2 = nil;\n\t__block BOOL hasSentError = NO;\n\t__block BOOL hasSentCompleted = NO;\n\t__block RACDisposable *disposable = nil;\n\t__block void (^send2NextAndErrorTo1)(void) = nil;\n\t__block void (^send3NextAndErrorTo1)(void) = nil;\n\t__block void (^send2NextAndCompletedTo2)(void) = nil;\n\t__block void (^send3NextAndCompletedTo2)(void) = nil;\n\n\tqck_beforeEach(^{\n\t\tsend2NextAndErrorTo1 = [^{\n\t\t\t[subject1 sendNext:@1];\n\t\t\t[subject1 sendNext:@2];\n\t\t\t[subject1 sendError:RACSignalTestError];\n\t\t} copy];\n\t\tsend3NextAndErrorTo1 = [^{\n\t\t\t[subject1 sendNext:@1];\n\t\t\t[subject1 sendNext:@2];\n\t\t\t[subject1 sendNext:@3];\n\t\t\t[subject1 sendError:RACSignalTestError];\n\t\t} copy];\n\t\tsend2NextAndCompletedTo2 = [^{\n\t\t\t[subject2 sendNext:@1];\n\t\t\t[subject2 sendNext:@2];\n\t\t\t[subject2 sendCompleted];\n\t\t} copy];\n\t\tsend3NextAndCompletedTo2 = [^{\n\t\t\t[subject2 sendNext:@1];\n\t\t\t[subject2 sendNext:@2];\n\t\t\t[subject2 sendNext:@3];\n\t\t\t[subject2 sendCompleted];\n\t\t} copy];\n\t\tsubject1 = [RACSubject subject];\n\t\tsubject2 = [RACSubject subject];\n\t\thasSentError = NO;\n\t\thasSentCompleted = NO;\n\t\tdisposable = [[RACSignal zip:@[ subject1, subject2 ]] subscribeError:^(NSError *error) {\n\t\t\thasSentError = YES;\n\t\t} completed:^{\n\t\t\thasSentCompleted = YES;\n\t\t}];\n\t});\n\n\tqck_afterEach(^{\n\t\t[disposable dispose];\n\t});\n\n\tqck_it(@\"should complete as soon as no new zipped values are possible\", ^{\n\t\t[subject1 sendNext:@1];\n\t\t[subject2 sendNext:@1];\n\t\texpect(@(hasSentCompleted)).to(beFalsy());\n\n\t\t[subject1 sendNext:@2];\n\t\t[subject1 sendCompleted];\n\t\texpect(@(hasSentCompleted)).to(beFalsy());\n\n\t\t[subject2 sendNext:@2];\n\t\texpect(@(hasSentCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"outcome should not be dependent on order of signals\", ^{\n\t\t[subject2 sendCompleted];\n\t\texpect(@(hasSentCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should forward errors sent earlier than (time-wise) and before (position-wise) a complete\", ^{\n\t\tsend2NextAndErrorTo1();\n\t\tsend3NextAndCompletedTo2();\n\t\texpect(@(hasSentError)).to(beTruthy());\n\t\texpect(@(hasSentCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should forward errors sent earlier than (time-wise) and after (position-wise) a complete\", ^{\n\t\tsend3NextAndErrorTo1();\n\t\tsend2NextAndCompletedTo2();\n\t\texpect(@(hasSentError)).to(beTruthy());\n\t\texpect(@(hasSentCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should forward errors sent later than (time-wise) and before (position-wise) a complete\", ^{\n\t\tsend3NextAndCompletedTo2();\n\t\tsend2NextAndErrorTo1();\n\t\texpect(@(hasSentError)).to(beTruthy());\n\t\texpect(@(hasSentCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should ignore errors sent later than (time-wise) and after (position-wise) a complete\", ^{\n\t\tsend2NextAndCompletedTo2();\n\t\tsend3NextAndErrorTo1();\n\t\texpect(@(hasSentError)).to(beFalsy());\n\t\texpect(@(hasSentCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should handle signals sending values unevenly\", ^{\n\t\t__block NSError *receivedError = nil;\n\t\t__block BOOL hasCompleted = NO;\n\n\t\tRACSubject *a = [RACSubject subject];\n\t\tRACSubject *b = [RACSubject subject];\n\t\tRACSubject *c = [RACSubject subject];\n\n\t\tNSMutableArray *receivedValues = NSMutableArray.array;\n\t\tNSArray *expectedValues = nil;\n\n\t\t[[RACSignal zip:@[ a, b, c ] reduce:^(NSNumber *a, NSNumber *b, NSNumber *c) {\n\t\t\treturn [NSString stringWithFormat:@\"%@%@%@\", a, b, c];\n\t\t}] subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t} completed:^{\n\t\t\thasCompleted = YES;\n\t\t}];\n\n\t\t[a sendNext:@1];\n\t\t[a sendNext:@2];\n\t\t[a sendNext:@3];\n\n\t\t[b sendNext:@1];\n\n\t\t[c sendNext:@1];\n\t\t[c sendNext:@2];\n\n\t\t// a: [===......]\n\t\t// b: [=........]\n\t\t// c: [==.......]\n\n\t\texpectedValues = @[ @\"111\" ];\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(receivedError).to(beNil());\n\t\texpect(@(hasCompleted)).to(beFalsy());\n\n\t\t[b sendNext:@2];\n\t\t[b sendNext:@3];\n\t\t[b sendNext:@4];\n\t\t[b sendCompleted];\n\n\t\t// a: [===......]\n\t\t// b: [====C....]\n\t\t// c: [==.......]\n\n\t\texpectedValues = @[ @\"111\", @\"222\" ];\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(receivedError).to(beNil());\n\t\texpect(@(hasCompleted)).to(beFalsy());\n\n\t\t[c sendNext:@3];\n\t\t[c sendNext:@4];\n\t\t[c sendNext:@5];\n\t\t[c sendError:RACSignalTestError];\n\n\t\t// a: [===......]\n\t\t// b: [====C....]\n\t\t// c: [=====E...]\n\n\t\texpectedValues = @[ @\"111\", @\"222\", @\"333\" ];\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t\texpect(@(hasCompleted)).to(beFalsy());\n\n\t\t[a sendNext:@4];\n\t\t[a sendNext:@5];\n\t\t[a sendNext:@6];\n\t\t[a sendNext:@7];\n\n\t\t// a: [=======..]\n\t\t// b: [====C....]\n\t\t// c: [=====E...]\n\n\t\texpectedValues = @[ @\"111\", @\"222\", @\"333\" ];\n\t\texpect(receivedValues).to(equal(expectedValues));\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t\texpect(@(hasCompleted)).to(beFalsy());\n\t});\n\n\tqck_it(@\"should handle multiples of the same side-effecting signal\", ^{\n\t\t__block NSUInteger counter = 0;\n\t\tRACSignal *sideEffectingSignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\t++counter;\n\t\t\t[subscriber sendNext:@1];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\t\tRACSignal *combined = [RACSignal zip:@[ sideEffectingSignal, sideEffectingSignal ] reduce:^ NSString * (id x, id y) {\n\t\t\treturn [NSString stringWithFormat:@\"%@%@\", x, y];\n\t\t}];\n\t\tNSMutableArray *receivedValues = NSMutableArray.array;\n\n\t\texpect(@(counter)).to(equal(@0));\n\n\t\t[combined subscribeNext:^(id x) {\n\t\t\t[receivedValues addObject:x];\n\t\t}];\n\n\t\texpect(@(counter)).to(equal(@2));\n\t\texpect(receivedValues).to(equal(@[ @\"11\" ]));\n\t});\n});\n\nqck_describe(@\"-sample:\", ^{\n\tqck_it(@\"should send the latest value when the sampler signal fires\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tRACSubject *sampleSubject = [RACSubject subject];\n\t\tRACSignal *sampled = [subject sample:sampleSubject];\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t[sampled subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t}];\n\n\t\t[sampleSubject sendNext:RACUnit.defaultUnit];\n\t\texpect(values).to(equal(@[]));\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\texpect(values).to(equal(@[]));\n\n\t\t[sampleSubject sendNext:RACUnit.defaultUnit];\n\t\tNSArray *expected = @[ @2 ];\n\t\texpect(values).to(equal(expected));\n\n\t\t[subject sendNext:@3];\n\t\texpect(values).to(equal(expected));\n\n\t\t[sampleSubject sendNext:RACUnit.defaultUnit];\n\t\texpected = @[ @2, @3 ];\n\t\texpect(values).to(equal(expected));\n\n\t\t[sampleSubject sendNext:RACUnit.defaultUnit];\n\t\texpected = @[ @2, @3, @3 ];\n\t\texpect(values).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-collect\", ^{\n\t__block RACSubject *subject;\n\t__block RACSignal *collected;\n\n\t__block id value;\n\t__block BOOL hasCompleted;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\t\tcollected = [subject collect];\n\n\t\tvalue = nil;\n\t\thasCompleted = NO;\n\n\t\t[collected subscribeNext:^(id x) {\n\t\t\tvalue = x;\n\t\t} completed:^{\n\t\t\thasCompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should send a single array when the original signal completes\", ^{\n\t\tNSArray *expected = @[ @1, @2, @3 ];\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\t[subject sendNext:@3];\n\t\texpect(value).to(beNil());\n\n\t\t[subject sendCompleted];\n\t\texpect(value).to(equal(expected));\n\t\texpect(@(hasCompleted)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should add NSNull to an array for nil values\", ^{\n\t\tNSArray *expected = @[ NSNull.null, @1, NSNull.null ];\n\n\t\t[subject sendNext:nil];\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:nil];\n\t\texpect(value).to(beNil());\n\n\t\t[subject sendCompleted];\n\t\texpect(value).to(equal(expected));\n\t\texpect(@(hasCompleted)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-bufferWithTime:onScheduler:\", ^{\n\t__block RACTestScheduler *scheduler;\n\n\t__block RACSubject *input;\n\t__block RACSignal *bufferedInput;\n\t__block RACTuple *latestValue;\n\n\tqck_beforeEach(^{\n\t\tscheduler = [[RACTestScheduler alloc] init];\n\n\t\tinput = [RACSubject subject];\n\t\tbufferedInput = [input bufferWithTime:1 onScheduler:scheduler];\n\t\tlatestValue = nil;\n\n\t\t[bufferedInput subscribeNext:^(RACTuple *x) {\n\t\t\tlatestValue = x;\n\t\t}];\n\t});\n\n\tqck_it(@\"should buffer nexts\", ^{\n\t\t[input sendNext:@1];\n\t\t[input sendNext:@2];\n\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@1, @2)));\n\n\t\t[input sendNext:@3];\n\t\t[input sendNext:@4];\n\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@3, @4)));\n\t});\n\n\tqck_it(@\"should not perform buffering until a value is sent\", ^{\n\t\t[input sendNext:@1];\n\t\t[input sendNext:@2];\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@1, @2)));\n\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@1, @2)));\n\n\t\t[input sendNext:@3];\n\t\t[input sendNext:@4];\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@3, @4)));\n\t});\n\n\tqck_it(@\"should flush any buffered nexts upon completion\", ^{\n\t\t[input sendNext:@1];\n\t\t[input sendCompleted];\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(@1)));\n\t});\n\n\tqck_it(@\"should support NSNull values\", ^{\n\t\t[input sendNext:NSNull.null];\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(NSNull.null)));\n\t});\n\n\tqck_it(@\"should buffer nil values\", ^{\n\t\t[input sendNext:nil];\n\t\t[scheduler stepAll];\n\t\texpect(latestValue).to(equal(RACTuplePack(nil)));\n\t});\n});\n\nqck_describe(@\"-concat\", ^{\n\t__block RACSubject *subject;\n\n\t__block RACSignal *oneSignal;\n\t__block RACSignal *twoSignal;\n\t__block RACSignal *threeSignal;\n\n\t__block RACSignal *errorSignal;\n\t__block RACSignal *completedSignal;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACReplaySubject subject];\n\n\t\toneSignal = [RACSignal return:@1];\n\t\ttwoSignal = [RACSignal return:@2];\n\t\tthreeSignal = [RACSignal return:@3];\n\n\t\terrorSignal = [RACSignal error:RACSignalTestError];\n\t\tcompletedSignal = RACSignal.empty;\n\t});\n\n\tqck_it(@\"should concatenate the values of inner signals\", ^{\n\t\t[subject sendNext:oneSignal];\n\t\t[subject sendNext:twoSignal];\n\t\t[subject sendNext:completedSignal];\n\t\t[subject sendNext:threeSignal];\n\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t[[subject concat] subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t}];\n\n\t\tNSArray *expected = @[ @1, @2, @3 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should complete only after all signals complete\", ^{\n\t\tRACReplaySubject *valuesSubject = [RACReplaySubject subject];\n\n\t\t[subject sendNext:valuesSubject];\n\t\t[subject sendCompleted];\n\n\t\t[valuesSubject sendNext:@1];\n\t\t[valuesSubject sendNext:@2];\n\t\t[valuesSubject sendCompleted];\n\n\t\tNSArray *expected = @[ @1, @2 ];\n\t\texpect([[subject concat] toArray]).to(equal(expected));\n\t});\n\n\tqck_it(@\"should pass through errors\", ^{\n\t\t[subject sendNext:errorSignal];\n\n\t\tNSError *error = nil;\n\t\t[[subject concat] firstOrDefault:nil success:NULL error:&error];\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n\n\tqck_it(@\"should concat signals sent later\", ^{\n\t\t[subject sendNext:oneSignal];\n\n\t\tNSMutableArray *values = [NSMutableArray array];\n\t\t[[subject concat] subscribeNext:^(id x) {\n\t\t\t[values addObject:x];\n\t\t}];\n\n\t\tNSArray *expected = @[ @1 ];\n\t\texpect(values).to(equal(expected));\n\n\t\t[subject sendNext:[twoSignal delay:0]];\n\n\t\texpected = @[ @1, @2 ];\n\t\texpect(values).toEventually(equal(expected));\n\n\t\t[subject sendNext:threeSignal];\n\n\t\texpected = @[ @1, @2, @3 ];\n\t\texpect(values).to(equal(expected));\n\t});\n\n\tqck_it(@\"should dispose the current signal\", ^{\n\t\t__block BOOL disposed = NO;\n\t\t__block id<RACSubscriber> innerSubscriber = nil;\n\t\tRACSignal *innerSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t// Keep the subscriber alive so it doesn't trigger disposal on dealloc\n\t\t\tinnerSubscriber = subscriber;\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\tRACDisposable *concatDisposable = [[subject concat] subscribeCompleted:^{}];\n\n\t\t[subject sendNext:innerSignal];\n\t\texpect(@(disposed)).notTo(beTruthy());\n\n\t\t[concatDisposable dispose];\n\t\texpect(@(disposed)).to(beTruthy());\n\t});\n\n\tqck_it(@\"should dispose later signals\", ^{\n\t\t__block BOOL disposed = NO;\n\t\t__block id<RACSubscriber> laterSubscriber = nil;\n\t\tRACSignal *laterSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t// Keep the subscriber alive so it doesn't trigger disposal on dealloc\n\t\t\tlaterSubscriber = subscriber;\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\tRACSubject *firstSignal = [RACSubject subject];\n\t\tRACSignal *outerSignal = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:firstSignal];\n\t\t\t[subscriber sendNext:laterSignal];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tRACDisposable *concatDisposable = [[outerSignal concat] subscribeCompleted:^{}];\n\n\t\t[firstSignal sendCompleted];\n\t\texpect(@(disposed)).notTo(beTruthy());\n\n\t\t[concatDisposable dispose];\n\t\texpect(@(disposed)).to(beTruthy());\n\t});\n});\n\nqck_describe(@\"-initially:\", ^{\n\t__block RACSubject *subject;\n\n\t__block NSUInteger initiallyInvokedCount;\n\t__block RACSignal *signal;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\n\t\tinitiallyInvokedCount = 0;\n\t\tsignal = [subject initially:^{\n\t\t\t++initiallyInvokedCount;\n\t\t}];\n\t});\n\n\tqck_it(@\"should not run without a subscription\", ^{\n\t\t[subject sendCompleted];\n\t\texpect(@(initiallyInvokedCount)).to(equal(@0));\n\t});\n\n\tqck_it(@\"should run on subscription\", ^{\n\t\t[signal subscribe:[RACSubscriber new]];\n\t\texpect(@(initiallyInvokedCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should re-run for each subscription\", ^{\n\t\t[signal subscribe:[RACSubscriber new]];\n\t\t[signal subscribe:[RACSubscriber new]];\n\t\texpect(@(initiallyInvokedCount)).to(equal(@2));\n\t});\n});\n\nqck_describe(@\"-finally:\", ^{\n\t__block RACSubject *subject;\n\n\t__block BOOL finallyInvoked;\n\t__block RACSignal *signal;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\n\t\tfinallyInvoked = NO;\n\t\tsignal = [subject finally:^{\n\t\t\tfinallyInvoked = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should not run finally without a subscription\", ^{\n\t\t[subject sendCompleted];\n\t\texpect(@(finallyInvoked)).to(beFalsy());\n\t});\n\n\tqck_describe(@\"with a subscription\", ^{\n\t\t__block RACDisposable *disposable;\n\n\t\tqck_beforeEach(^{\n\t\t\tdisposable = [signal subscribeCompleted:^{}];\n\t\t});\n\n\t\tqck_afterEach(^{\n\t\t\t[disposable dispose];\n\t\t});\n\n\t\tqck_it(@\"should not run finally upon next\", ^{\n\t\t\t[subject sendNext:RACUnit.defaultUnit];\n\t\t\texpect(@(finallyInvoked)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should run finally upon completed\", ^{\n\t\t\t[subject sendCompleted];\n\t\t\texpect(@(finallyInvoked)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should run finally upon error\", ^{\n\t\t\t[subject sendError:nil];\n\t\t\texpect(@(finallyInvoked)).to(beTruthy());\n\t\t});\n\t});\n});\n\nqck_describe(@\"-ignoreValues\", ^{\n\t__block RACSubject *subject;\n\n\t__block BOOL gotNext;\n\t__block BOOL gotCompleted;\n\t__block NSError *receivedError;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACSubject subject];\n\n\t\tgotNext = NO;\n\t\tgotCompleted = NO;\n\t\treceivedError = nil;\n\n\t\t[[subject ignoreValues] subscribeNext:^(id _) {\n\t\t\tgotNext = YES;\n\t\t} error:^(NSError *error) {\n\t\t\treceivedError = error;\n\t\t} completed:^{\n\t\t\tgotCompleted = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should skip nexts and pass through completed\", ^{\n\t\t[subject sendNext:RACUnit.defaultUnit];\n\t\t[subject sendCompleted];\n\n\t\texpect(@(gotNext)).to(beFalsy());\n\t\texpect(@(gotCompleted)).to(beTruthy());\n\t\texpect(receivedError).to(beNil());\n\t});\n\n\tqck_it(@\"should skip nexts and pass through errors\", ^{\n\t\t[subject sendNext:RACUnit.defaultUnit];\n\t\t[subject sendError:RACSignalTestError];\n\n\t\texpect(@(gotNext)).to(beFalsy());\n\t\texpect(@(gotCompleted)).to(beFalsy());\n\t\texpect(receivedError).to(equal(RACSignalTestError));\n\t});\n});\n\nqck_describe(@\"-materialize\", ^{\n\tqck_it(@\"should convert nexts and completed into RACEvents\", ^{\n\t\tNSArray *events = [[[RACSignal return:RACUnit.defaultUnit] materialize] toArray];\n\t\tNSArray *expected = @[\n\t\t\t[RACEvent eventWithValue:RACUnit.defaultUnit],\n\t\t\tRACEvent.completedEvent\n\t\t];\n\n\t\texpect(events).to(equal(expected));\n\t});\n\n\tqck_it(@\"should convert errors into RACEvents and complete\", ^{\n\t\tNSArray *events = [[[RACSignal error:RACSignalTestError] materialize] toArray];\n\t\tNSArray *expected = @[ [RACEvent eventWithError:RACSignalTestError] ];\n\t\texpect(events).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-dematerialize\", ^{\n\tqck_it(@\"should convert nexts from RACEvents\", ^{\n\t\tRACSignal *events = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:@1]];\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:@2]];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tNSArray *expected = @[ @1, @2 ];\n\t\texpect([[events dematerialize] toArray]).to(equal(expected));\n\t});\n\n\tqck_it(@\"should convert completed from a RACEvent\", ^{\n\t\tRACSignal *events = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:@1]];\n\t\t\t[subscriber sendNext:RACEvent.completedEvent];\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:@2]];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\tNSArray *expected = @[ @1 ];\n\t\texpect([[events dematerialize] toArray]).to(equal(expected));\n\t});\n\n\tqck_it(@\"should convert error from a RACEvent\", ^{\n\t\tRACSignal *events = [RACSignal createSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t[subscriber sendNext:[RACEvent eventWithError:RACSignalTestError]];\n\t\t\t[subscriber sendNext:[RACEvent eventWithValue:@1]];\n\t\t\t[subscriber sendCompleted];\n\t\t\treturn nil;\n\t\t}];\n\n\t\t__block NSError *error = nil;\n\t\texpect([[events dematerialize] firstOrDefault:nil success:NULL error:&error]).to(beNil());\n\t\texpect(error).to(equal(RACSignalTestError));\n\t});\n});\n\nqck_describe(@\"-not\", ^{\n\tqck_it(@\"should invert every BOOL sent\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\t\t[subject sendNext:@NO];\n\t\t[subject sendNext:@YES];\n\t\t[subject sendCompleted];\n\t\tNSArray *results = [[subject not] toArray];\n\t\tNSArray *expected = @[ @YES, @NO ];\n\t\texpect(results).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-and\", ^{\n\tqck_it(@\"should return YES if all YES values are sent\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\t[subject sendNext:RACTuplePack(@YES, @NO, @YES)];\n\t\t[subject sendNext:RACTuplePack(@NO, @NO, @NO)];\n\t\t[subject sendNext:RACTuplePack(@YES, @YES, @YES)];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *results = [[subject and] toArray];\n\t\tNSArray *expected = @[ @NO, @NO, @YES ];\n\n\t\texpect(results).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-or\", ^{\n\tqck_it(@\"should return YES for any YES values sent\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\t[subject sendNext:RACTuplePack(@YES, @NO, @YES)];\n\t\t[subject sendNext:RACTuplePack(@NO, @NO, @NO)];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *results = [[subject or] toArray];\n\t\tNSArray *expected = @[ @YES, @NO ];\n\n\t\texpect(results).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-groupBy:\", ^{\n\tqck_it(@\"should send completed to all grouped signals.\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\t__block NSUInteger groupedSignalCount = 0;\n\t\t__block NSUInteger completedGroupedSignalCount = 0;\n\t\t[[subject groupBy:^(NSNumber *number) {\n\t\t\treturn @(floorf(number.floatValue));\n\t\t}] subscribeNext:^(RACGroupedSignal *groupedSignal) {\n\t\t\t++groupedSignalCount;\n\n\t\t\t[groupedSignal subscribeCompleted:^{\n\t\t\t\t++completedGroupedSignalCount;\n\t\t\t}];\n\t\t}];\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\t[subject sendCompleted];\n\n\t\texpect(@(completedGroupedSignalCount)).to(equal(@(groupedSignalCount)));\n\t});\n\n\tqck_it(@\"should send error to all grouped signals.\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\t__block NSUInteger groupedSignalCount = 0;\n\t\t__block NSUInteger erroneousGroupedSignalCount = 0;\n\t\t[[subject groupBy:^(NSNumber *number) {\n\t\t\treturn @(floorf(number.floatValue));\n\t\t}] subscribeNext:^(RACGroupedSignal *groupedSignal) {\n\t\t\t++groupedSignalCount;\n\n\t\t\t[groupedSignal subscribeError:^(NSError *error) {\n\t\t\t\t++erroneousGroupedSignalCount;\n\n\t\t\t\texpect(error.domain).to(equal(@\"TestDomain\"));\n\t\t\t\texpect(@(error.code)).to(equal(@123));\n\t\t\t}];\n\t\t}];\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\t[subject sendError:[NSError errorWithDomain:@\"TestDomain\" code:123 userInfo:nil]];\n\n\t\texpect(@(erroneousGroupedSignalCount)).to(equal(@(groupedSignalCount)));\n\t});\n\n\n\tqck_it(@\"should send completed in the order grouped signals were created.\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\tNSMutableArray *startedSignals = [NSMutableArray array];\n\t\tNSMutableArray *completedSignals = [NSMutableArray array];\n\t\t[[subject groupBy:^(NSNumber *number) {\n\t\t\treturn @(number.integerValue % 4);\n\t\t}] subscribeNext:^(RACGroupedSignal *groupedSignal) {\n\t\t\t[startedSignals addObject:groupedSignal];\n\n\t\t\t[groupedSignal subscribeCompleted:^{\n\t\t\t\t[completedSignals addObject:groupedSignal];\n\t\t\t}];\n\t\t}];\n\n\t\tfor (NSInteger i = 0; i < 20; i++)\n\t\t{\n\t\t\t[subject sendNext:@(i)];\n\t\t}\n\t\t[subject sendCompleted];\n\n\t\texpect(completedSignals).to(equal(startedSignals));\n\t});\n});\n\nqck_describe(@\"starting signals\", ^{\n\tqck_describe(@\"+startLazilyWithScheduler:block:\", ^{\n\t\t__block NSUInteger invokedCount = 0;\n\t\t__block void (^subscribe)(void);\n\n\t\tqck_beforeEach(^{\n\t\t\tinvokedCount = 0;\n\n\t\t\tRACSignal *signal = [RACSignal startLazilyWithScheduler:RACScheduler.immediateScheduler block:^(id<RACSubscriber> subscriber) {\n\t\t\t\tinvokedCount++;\n\t\t\t\t[subscriber sendNext:@42];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}];\n\n\t\t\tsubscribe = [^{\n\t\t\t\t[signal subscribe:[RACSubscriber subscriberWithNext:nil error:nil completed:nil]];\n\t\t\t} copy];\n\t\t});\n\n\t\tqck_it(@\"should only invoke the block on subscription\", ^{\n\t\t\texpect(@(invokedCount)).to(equal(@0));\n\t\t\tsubscribe();\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should only invoke the block once\", ^{\n\t\t\texpect(@(invokedCount)).to(equal(@0));\n\t\t\tsubscribe();\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\t\t\tsubscribe();\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\t\t\tsubscribe();\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should invoke the block on the given scheduler\", ^{\n\t\t\tRACScheduler *scheduler = [RACScheduler scheduler];\n\t\t\t__block RACScheduler *currentScheduler;\n\t\t\t[[[RACSignal\n\t\t\t\tstartLazilyWithScheduler:scheduler block:^(id<RACSubscriber> subscriber) {\n\t\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}]\n\t\t\t\tpublish]\n\t\t\t\tconnect];\n\n\t\t\texpect(currentScheduler).toEventually(equal(scheduler));\n\t\t});\n\t});\n\n\tqck_describe(@\"+startEagerlyWithScheduler:block:\", ^{\n\t\tqck_it(@\"should immediately invoke the block\", ^{\n\t\t\t__block BOOL blockInvoked = NO;\n\t\t\t[RACSignal startEagerlyWithScheduler:[RACScheduler scheduler] block:^(id<RACSubscriber> subscriber) {\n\t\t\t\tblockInvoked = YES;\n\t\t\t}];\n\n\t\t\texpect(@(blockInvoked)).toEventually(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should only invoke the block once\", ^{\n\t\t\t__block NSUInteger invokedCount = 0;\n\t\t\tRACSignal *signal = [RACSignal startEagerlyWithScheduler:RACScheduler.immediateScheduler block:^(id<RACSubscriber> subscriber) {\n\t\t\t\tinvokedCount++;\n\t\t\t}];\n\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\n\t\t\t[[signal publish] connect];\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\n\t\t\t[[signal publish] connect];\n\t\t\texpect(@(invokedCount)).to(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should invoke the block on the given scheduler\", ^{\n\t\t\tRACScheduler *scheduler = [RACScheduler scheduler];\n\t\t\t__block RACScheduler *currentScheduler;\n\t\t\t[RACSignal startEagerlyWithScheduler:scheduler block:^(id<RACSubscriber> subscriber) {\n\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t}];\n\n\t\t\texpect(currentScheduler).toEventually(equal(scheduler));\n\t\t});\n\t});\n});\n\nqck_describe(@\"-toArray\", ^{\n\t__block RACSubject *subject;\n\n\tqck_beforeEach(^{\n\t\tsubject = [RACReplaySubject subject];\n\t});\n\n\tqck_it(@\"should return an array which contains NSNulls for nil values\", ^{\n\t\tNSArray *expected = @[ NSNull.null, @1, NSNull.null ];\n\n\t\t[subject sendNext:nil];\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:nil];\n\t\t[subject sendCompleted];\n\n\t\texpect([subject toArray]).to(equal(expected));\n\t});\n\n\tqck_it(@\"should return nil upon error\", ^{\n\t\t[subject sendError:nil];\n\t\texpect([subject toArray]).to(beNil());\n\t});\n\n\tqck_it(@\"should return nil upon error even if some nexts were sent\", ^{\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\t[subject sendError:nil];\n\n\t\texpect([subject toArray]).to(beNil());\n\t});\n});\n\nqck_describe(@\"-ignore:\", ^{\n\tqck_it(@\"should ignore nil\", ^{\n\t\tRACSignal *signal = [[RACSignal\n\t\t\tcreateSignal:^ id (id<RACSubscriber> subscriber) {\n\t\t\t\t[subscriber sendNext:@1];\n\t\t\t\t[subscriber sendNext:nil];\n\t\t\t\t[subscriber sendNext:@3];\n\t\t\t\t[subscriber sendNext:@4];\n\t\t\t\t[subscriber sendNext:nil];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t\treturn nil;\n\t\t\t}]\n\t\t\tignore:nil];\n\n\t\tNSArray *expected = @[ @1, @3, @4 ];\n\t\texpect([signal toArray]).to(equal(expected));\n\t});\n});\n\nqck_describe(@\"-replayLazily\", ^{\n\t__block NSUInteger subscriptionCount;\n\t__block BOOL disposed;\n\n\t__block RACSignal *signal;\n\t__block RACSubject *disposeSubject;\n\t__block RACSignal *replayedSignal;\n\n\tqck_beforeEach(^{\n\t\tsubscriptionCount = 0;\n\t\tdisposed = NO;\n\n\t\tsignal = [RACSignal createSignal:^ RACDisposable * (id<RACSubscriber> subscriber) {\n\t\t\tsubscriptionCount++;\n\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\n\t\t\tRACDisposable *schedulingDisposable = [RACScheduler.mainThreadScheduler schedule:^{\n\t\t\t\t[subscriber sendNext:RACUnit.defaultUnit];\n\t\t\t\t[subscriber sendCompleted];\n\t\t\t}];\n\n\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t[schedulingDisposable dispose];\n\t\t\t\tdisposed = YES;\n\t\t\t}];\n\t\t}];\n\n\t\tdisposeSubject = [RACSubject subject];\n\t\treplayedSignal = [[signal takeUntil:disposeSubject] replayLazily];\n\t});\n\n\tqck_it(@\"should forward the input signal upon subscription\", ^{\n\t\texpect(@(subscriptionCount)).to(equal(@0));\n\n\t\texpect(@([replayedSignal asynchronouslyWaitUntilCompleted:NULL])).to(beTruthy());\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should replay the input signal for future subscriptions\", ^{\n\t\tNSArray *events = [[[replayedSignal materialize] collect] asynchronousFirstOrDefault:nil success:NULL error:NULL];\n\t\texpect(events).notTo(beNil());\n\n\t\texpect([[[replayedSignal materialize] collect] asynchronousFirstOrDefault:nil success:NULL error:NULL]).to(equal(events));\n\t\texpect(@(subscriptionCount)).to(equal(@1));\n\t});\n\n\tqck_it(@\"should replay even after disposal\", ^{\n\t\t__block NSUInteger valueCount = 0;\n\t\t[replayedSignal subscribeNext:^(id x) {\n\t\t\tvalueCount++;\n\t\t}];\n\n\t\t[disposeSubject sendCompleted];\n\t\texpect(@(valueCount)).to(equal(@1));\n\t\texpect(@([[replayedSignal toArray] count])).to(equal(@(valueCount)));\n\t});\n});\n\nqck_describe(@\"-reduceApply\", ^{\n\tqck_it(@\"should apply a block to the rest of a tuple\", ^{\n\t\tRACSubject *subject = [RACReplaySubject subject];\n\n\t\tid sum = ^(NSNumber *a, NSNumber *b) {\n\t\t\treturn @(a.intValue + b.intValue);\n\t\t};\n\t\tid madd = ^(NSNumber *a, NSNumber *b, NSNumber *c) {\n\t\t\treturn @(a.intValue * b.intValue + c.intValue);\n\t\t};\n\n\t\t[subject sendNext:RACTuplePack(sum, @1, @2)];\n\t\t[subject sendNext:RACTuplePack(madd, @2, @3, @1)];\n\t\t[subject sendCompleted];\n\n\t\tNSArray *results = [[subject reduceApply] toArray];\n\t\tNSArray *expected = @[ @3, @7 ];\n\n\t\texpect(results).to(equal(expected));\n\t});\n});\n\ndescribe(@\"-deliverOnMainThread\", ^{\n\tvoid (^dispatchSyncInBackground)(dispatch_block_t) = ^(dispatch_block_t block) {\n\t\tdispatch_group_t group = dispatch_group_create();\n\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), block);\n\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER);\n\t};\n\n\tbeforeEach(^{\n\t\texpect(@(NSThread.isMainThread)).to(beTruthy());\n\t});\n\n\tit(@\"should deliver events immediately when on the main thread\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t[[subject deliverOnMainThread] subscribeNext:^(id value) {\n\t\t\t[values addObject:value];\n\t\t}];\n\n\t\t[subject sendNext:@0];\n\t\texpect(values).to(equal(@[ @0 ]));\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\t\texpect(values).to(equal(@[ @0, @1, @2 ]));\n\t});\n\n\tit(@\"should enqueue events sent from the background\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t[[subject deliverOnMainThread] subscribeNext:^(id value) {\n\t\t\t[values addObject:value];\n\t\t}];\n\n\t\tdispatchSyncInBackground(^{\n\t\t\t[subject sendNext:@0];\n\t\t});\n\n\t\texpect(values).to(equal(@[]));\n\t\texpect(values).toEventually(equal(@[ @0 ]));\n\n\t\tdispatchSyncInBackground(^{\n\t\t\t[subject sendNext:@1];\n\t\t\t[subject sendNext:@2];\n\t\t});\n\n\t\texpect(values).to(equal(@[ @0 ]));\n\t\texpect(values).toEventually(equal(@[ @0, @1, @2 ]));\n\t});\n\n\tit(@\"should enqueue events sent from the main thread after events from the background\", ^{\n\t\tRACSubject *subject = [RACSubject subject];\n\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t[[subject deliverOnMainThread] subscribeNext:^(id value) {\n\t\t\t[values addObject:value];\n\t\t}];\n\n\t\tdispatchSyncInBackground(^{\n\t\t\t[subject sendNext:@0];\n\t\t});\n\n\t\t[subject sendNext:@1];\n\t\t[subject sendNext:@2];\n\n\t\texpect(values).to(equal(@[]));\n\t\texpect(values).toEventually(equal(@[ @0, @1, @2 ]));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACStreamExamples.h",
    "content": "//\n//  RACStreamExamples.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for a RACStream subclass.\nextern NSString * const RACStreamExamples;\n\n// The RACStream subclass to test.\nextern NSString * const RACStreamExamplesClass;\n\n// An infinite RACStream to test, making sure that certain operations\n// terminate.\n//\n// The stream should contain infinite RACUnit values.\nextern NSString * const RACStreamExamplesInfiniteStream;\n\n// A block with the signature:\n//\n// void (^)(RACStream *stream, NSArray *expectedValues)\n//\n// … used to verify that a stream contains the expected values.\nextern NSString * const RACStreamExamplesVerifyValuesBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACStreamExamples.m",
    "content": "//\n//  RACStreamExamples.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-01.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACStreamExamples.h\"\n\n#import \"RACStream.h\"\n#import \"RACUnit.h\"\n#import \"RACTuple.h\"\n\nNSString * const RACStreamExamples = @\"RACStreamExamples\";\nNSString * const RACStreamExamplesClass = @\"RACStreamExamplesClass\";\nNSString * const RACStreamExamplesInfiniteStream = @\"RACStreamExamplesInfiniteStream\";\nNSString * const RACStreamExamplesVerifyValuesBlock = @\"RACStreamExamplesVerifyValuesBlock\";\n\nQuickConfigurationBegin(RACStreamExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACStreamExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block Class streamClass;\n\t\t__block void (^verifyValues)(RACStream *, NSArray *);\n\t\t__block RACStream *infiniteStream;\n\n\t\t__block RACStream *(^streamWithValues)(NSArray *);\n\n\t\tqck_beforeEach(^{\n\t\t\tstreamClass = exampleContext()[RACStreamExamplesClass];\n\t\t\tverifyValues = exampleContext()[RACStreamExamplesVerifyValuesBlock];\n\t\t\tinfiniteStream = exampleContext()[RACStreamExamplesInfiniteStream];\n\t\t\tstreamWithValues = [^(NSArray *values) {\n\t\t\t\tRACStream *stream = [streamClass empty];\n\n\t\t\t\tfor (id value in values) {\n\t\t\t\t\tstream = [stream concat:[streamClass return:value]];\n\t\t\t\t}\n\n\t\t\t\treturn stream;\n\t\t\t} copy];\n\t\t});\n\n\t\tqck_it(@\"should return an empty stream\", ^{\n\t\t\tRACStream *stream = [streamClass empty];\n\t\t\tverifyValues(stream, @[]);\n\t\t});\n\n\t\tqck_it(@\"should lift a value into a stream\", ^{\n\t\t\tRACStream *stream = [streamClass return:RACUnit.defaultUnit];\n\t\t\tverifyValues(stream, @[ RACUnit.defaultUnit ]);\n\t\t});\n\n\t\tqck_describe(@\"-concat:\", ^{\n\t\t\tqck_it(@\"should concatenate two streams\", ^{\n\t\t\t\tRACStream *stream = [[streamClass return:@0] concat:[streamClass return:@1]];\n\t\t\t\tverifyValues(stream, @[ @0, @1 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate three streams\", ^{\n\t\t\t\tRACStream *stream = [[[streamClass return:@0] concat:[streamClass return:@1]] concat:[streamClass return:@2]];\n\t\t\t\tverifyValues(stream, @[ @0, @1, @2 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate around an empty stream\", ^{\n\t\t\t\tRACStream *stream = [[[streamClass return:@0] concat:[streamClass empty]] concat:[streamClass return:@2]];\n\t\t\t\tverifyValues(stream, @[ @0, @2 ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should flatten\", ^{\n\t\t\tRACStream *stream = [[streamClass return:[streamClass return:RACUnit.defaultUnit]] flatten];\n\t\t\tverifyValues(stream, @[ RACUnit.defaultUnit ]);\n\t\t});\n\n\t\tqck_describe(@\"-bind:\", ^{\n\t\t\tqck_it(@\"should return the result of binding a single value\", ^{\n\t\t\t\tRACStream *stream = [[streamClass return:@0] bind:^{\n\t\t\t\t\treturn ^(NSNumber *value, BOOL *stop) {\n\t\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate the result of binding multiple values\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1 ]);\n\t\t\t\tRACStream *stream = [baseStream bind:^{\n\t\t\t\t\treturn ^(NSNumber *value, BOOL *stop) {\n\t\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1, @2 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate with an empty result from binding a value\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2 ]);\n\t\t\t\tRACStream *stream = [baseStream bind:^{\n\t\t\t\t\treturn ^(NSNumber *value, BOOL *stop) {\n\t\t\t\t\t\tif (value.integerValue == 1) return [streamClass empty];\n\n\t\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1, @3 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate immediately when returning nil\", ^{\n\t\t\t\tRACStream *stream = [infiniteStream bind:^{\n\t\t\t\t\treturn ^ id (id _, BOOL *stop) {\n\t\t\t\t\t\treturn nil;\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate after one value when setting 'stop'\", ^{\n\t\t\t\tRACStream *stream = [infiniteStream bind:^{\n\t\t\t\t\treturn ^ id (id value, BOOL *stop) {\n\t\t\t\t\t\t*stop = YES;\n\t\t\t\t\t\treturn [streamClass return:value];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ RACUnit.defaultUnit ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate immediately when returning nil and setting 'stop'\", ^{\n\t\t\t\tRACStream *stream = [infiniteStream bind:^{\n\t\t\t\t\treturn ^ id (id _, BOOL *stop) {\n\t\t\t\t\t\t*stop = YES;\n\t\t\t\t\t\treturn nil;\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should be restartable even with block state\", ^{\n\t\t\t\tNSArray *values = @[ @0, @1, @2 ];\n\t\t\t\tRACStream *baseStream = streamWithValues(values);\n\n\t\t\t\tRACStream *countingStream = [baseStream bind:^{\n\t\t\t\t\t__block NSUInteger counter = 0;\n\n\t\t\t\t\treturn ^(id x, BOOL *stop) {\n\t\t\t\t\t\treturn [streamClass return:@(counter++)];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(countingStream, @[ @0, @1, @2 ]);\n\t\t\t\tverifyValues(countingStream, @[ @0, @1, @2 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should be interleavable even with block state\", ^{\n\t\t\t\tNSArray *values = @[ @0, @1, @2 ];\n\t\t\t\tRACStream *baseStream = streamWithValues(values);\n\n\t\t\t\tRACStream *countingStream = [baseStream bind:^{\n\t\t\t\t\t__block NSUInteger counter = 0;\n\n\t\t\t\t\treturn ^(id x, BOOL *stop) {\n\t\t\t\t\t\treturn [streamClass return:@(counter++)];\n\t\t\t\t\t};\n\t\t\t\t}];\n\n\t\t\t\t// Just so +zip:reduce: thinks this is a unique stream.\n\t\t\t\tRACStream *anotherStream = [[streamClass empty] concat:countingStream];\n\n\t\t\t\tRACStream *zipped = [streamClass zip:@[ countingStream, anotherStream ] reduce:^(NSNumber *v1, NSNumber *v2) {\n\t\t\t\t\treturn @(v1.integerValue + v2.integerValue);\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(zipped, @[ @0, @2, @4 ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"-flattenMap:\", ^{\n\t\t\tqck_it(@\"should return a single mapped result\", ^{\n\t\t\t\tRACStream *stream = [[streamClass return:@0] flattenMap:^(NSNumber *value) {\n\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate the results of mapping multiple values\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1 ]);\n\t\t\t\tRACStream *stream = [baseStream flattenMap:^(NSNumber *value) {\n\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1, @2 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate with an empty result from mapping a value\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2 ]);\n\t\t\t\tRACStream *stream = [baseStream flattenMap:^(NSNumber *value) {\n\t\t\t\t\tif (value.integerValue == 1) return [streamClass empty];\n\n\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1, @3 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should treat nil streams like empty streams\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2 ]);\n\t\t\t\tRACStream *stream = [baseStream flattenMap:^ RACStream * (NSNumber *value) {\n\t\t\t\t\tif (value.integerValue == 1) return nil;\n\n\t\t\t\t\tNSNumber *newValue = @(value.integerValue + 1);\n\t\t\t\t\treturn [streamClass return:newValue];\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(stream, @[ @1, @3 ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should map\", ^{\n\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2 ]);\n\t\t\tRACStream *stream = [baseStream map:^(NSNumber *value) {\n\t\t\t\treturn @(value.integerValue + 1);\n\t\t\t}];\n\n\t\t\tverifyValues(stream, @[ @1, @2, @3 ]);\n\t\t});\n\n\t\tqck_it(@\"should map and replace\", ^{\n\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2 ]);\n\t\t\tRACStream *stream = [baseStream mapReplace:RACUnit.defaultUnit];\n\n\t\t\tverifyValues(stream, @[ RACUnit.defaultUnit, RACUnit.defaultUnit, RACUnit.defaultUnit ]);\n\t\t});\n\n\t\tqck_it(@\"should filter\", ^{\n\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2, @3, @4, @5, @6 ]);\n\t\t\tRACStream *stream = [baseStream filter:^ BOOL (NSNumber *value) {\n\t\t\t\treturn value.integerValue % 2 == 0;\n\t\t\t}];\n\n\t\t\tverifyValues(stream, @[ @0, @2, @4, @6 ]);\n\t\t});\n\n\t\tqck_describe(@\"-ignore:\", ^{\n\t\t\tqck_it(@\"should ignore a value\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @0, @1, @2, @3, @4, @5, @6 ]);\n\t\t\t\tRACStream *stream = [baseStream ignore:@1];\n\n\t\t\t\tverifyValues(stream, @[ @0, @2, @3, @4, @5, @6 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should ignore based on object equality\", ^{\n\t\t\t\tRACStream *baseStream = streamWithValues(@[ @\"0\", @\"1\", @\"2\", @\"3\", @\"4\", @\"5\", @\"6\" ]);\n\n\t\t\t\tNSMutableString *valueToIgnore = [[NSMutableString alloc] init];\n\t\t\t\t[valueToIgnore appendString:@\"1\"];\n\t\t\t\tRACStream *stream = [baseStream ignore:valueToIgnore];\n\n\t\t\t\tverifyValues(stream, @[ @\"0\", @\"2\", @\"3\", @\"4\", @\"5\", @\"6\" ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should start with a value\", ^{\n\t\t\tRACStream *stream = [[streamClass return:@1] startWith:@0];\n\t\t\tverifyValues(stream, @[ @0, @1 ]);\n\t\t});\n\n\t\tqck_describe(@\"-skip:\", ^{\n\t\t\t__block NSArray *values;\n\t\t\t__block RACStream *stream;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tvalues = @[ @0, @1, @2 ];\n\t\t\t\tstream = streamWithValues(values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should skip any valid number of values\", ^{\n\t\t\t\tfor (NSUInteger i = 0; i < values.count; i++) {\n\t\t\t\t\tverifyValues([stream skip:i], [values subarrayWithRange:NSMakeRange(i, values.count - i)]);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tqck_it(@\"should return an empty stream when skipping too many values\", ^{\n\t\t\t\tverifyValues([stream skip:4], @[]);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"-take:\", ^{\n\t\t\tqck_describe(@\"with three values\", ^{\n\t\t\t\t__block NSArray *values;\n\t\t\t\t__block RACStream *stream;\n\n\t\t\t\tqck_beforeEach(^{\n\t\t\t\t\tvalues = @[ @0, @1, @2 ];\n\t\t\t\t\tstream = streamWithValues(values);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should take any valid number of values\", ^{\n\t\t\t\t\tfor (NSUInteger i = 0; i < values.count; i++) {\n\t\t\t\t\t\tverifyValues([stream take:i], [values subarrayWithRange:NSMakeRange(0, i)]);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should return the same stream when taking too many values\", ^{\n\t\t\t\t\tverifyValues([stream take:4], values);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tqck_it(@\"should take and terminate from an infinite stream\", ^{\n\t\t\t\tverifyValues([infiniteStream take:0], @[]);\n\t\t\t\tverifyValues([infiniteStream take:1], @[ RACUnit.defaultUnit ]);\n\t\t\t\tverifyValues([infiniteStream take:2], @[ RACUnit.defaultUnit, RACUnit.defaultUnit ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should take and terminate from a single-item stream\", ^{\n\t\t\t\tNSArray *values = @[ RACUnit.defaultUnit ];\n\t\t\t\tRACStream *stream = streamWithValues(values);\n\t\t\t\tverifyValues([stream take:1], values);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"zip stream creation methods\", ^{\n\t\t\t__block NSArray *valuesOne;\n\n\t\t\t__block RACStream *streamOne;\n\t\t\t__block RACStream *streamTwo;\n\t\t\t__block RACStream *streamThree;\n\t\t\t__block NSArray *threeStreams;\n\n\t\t\t__block NSArray *oneStreamTuples;\n\t\t\t__block NSArray *twoStreamTuples;\n\t\t\t__block NSArray *threeStreamTuples;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tvaluesOne = @[ @\"Ada\", @\"Bob\", @\"Dea\" ];\n\t\t\t\tNSArray *valuesTwo = @[ @\"eats\", @\"cooks\", @\"jumps\" ];\n\t\t\t\tNSArray *valuesThree = @[ @\"fish\", @\"bear\", @\"rock\" ];\n\n\t\t\t\tstreamOne = streamWithValues(valuesOne);\n\t\t\t\tstreamTwo = streamWithValues(valuesTwo);\n\t\t\t\tstreamThree = streamWithValues(valuesThree);\n\t\t\t\tthreeStreams = @[ streamOne, streamTwo, streamThree ];\n\n\t\t\t\toneStreamTuples = @[\n\t\t\t\t\tRACTuplePack(valuesOne[0]),\n\t\t\t\t\tRACTuplePack(valuesOne[1]),\n\t\t\t\t\tRACTuplePack(valuesOne[2]),\n\t\t\t\t];\n\n\t\t\t\ttwoStreamTuples = @[\n\t\t\t\t\tRACTuplePack(valuesOne[0], valuesTwo[0]),\n\t\t\t\t\tRACTuplePack(valuesOne[1], valuesTwo[1]),\n\t\t\t\t\tRACTuplePack(valuesOne[2], valuesTwo[2]),\n\t\t\t\t];\n\n\t\t\t\tthreeStreamTuples = @[\n\t\t\t\t\tRACTuplePack(valuesOne[0], valuesTwo[0], valuesThree[0]),\n\t\t\t\t\tRACTuplePack(valuesOne[1], valuesTwo[1], valuesThree[1]),\n\t\t\t\t\tRACTuplePack(valuesOne[2], valuesTwo[2], valuesThree[2]),\n\t\t\t\t];\n\t\t\t});\n\n\t\t\tqck_describe(@\"-zipWith:\", ^{\n\t\t\t\tqck_it(@\"should make a stream of tuples\", ^{\n\t\t\t\t\tRACStream *stream = [streamOne zipWith:streamTwo];\n\t\t\t\t\tverifyValues(stream, twoStreamTuples);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should truncate streams\", ^{\n\t\t\t\t\tRACStream *shortStream = streamWithValues(@[ @\"now\", @\"later\" ]);\n\t\t\t\t\tRACStream *stream = [streamOne zipWith:shortStream];\n\n\t\t\t\t\tverifyValues(stream, @[\n\t\t\t\t\t\tRACTuplePack(valuesOne[0], @\"now\"),\n\t\t\t\t\t\tRACTuplePack(valuesOne[1], @\"later\")\n\t\t\t\t\t]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should work on infinite streams\", ^{\n\t\t\t\t\tRACStream *stream = [streamOne zipWith:infiniteStream];\n\t\t\t\t\tverifyValues(stream, @[\n\t\t\t\t\t\tRACTuplePack(valuesOne[0], RACUnit.defaultUnit),\n\t\t\t\t\t\tRACTuplePack(valuesOne[1], RACUnit.defaultUnit),\n\t\t\t\t\t\tRACTuplePack(valuesOne[2], RACUnit.defaultUnit)\n\t\t\t\t\t]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should handle multiples of the same stream\", ^{\n\t\t\t\t\tRACStream *stream = [streamOne zipWith:streamOne];\n\t\t\t\t\tverifyValues(stream, @[\n\t\t\t\t\t\tRACTuplePack(valuesOne[0], valuesOne[0]),\n\t\t\t\t\t\tRACTuplePack(valuesOne[1], valuesOne[1]),\n\t\t\t\t\t\tRACTuplePack(valuesOne[2], valuesOne[2]),\n\t\t\t\t\t]);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tqck_describe(@\"+zip:reduce:\", ^{\n\t\t\t\tqck_it(@\"should reduce values\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:threeStreams reduce:^ NSString * (id x, id y, id z) {\n\t\t\t\t\t\treturn [NSString stringWithFormat:@\"%@ %@ %@\", x, y, z];\n\t\t\t\t\t}];\n\t\t\t\t\tverifyValues(stream, @[ @\"Ada eats fish\", @\"Bob cooks bear\", @\"Dea jumps rock\" ]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should truncate streams\", ^{\n\t\t\t\t\tRACStream *shortStream = streamWithValues(@[ @\"now\", @\"later\" ]);\n\t\t\t\t\tNSArray *streams = [threeStreams arrayByAddingObject:shortStream];\n\t\t\t\t\tRACStream *stream = [streamClass zip:streams reduce:^ NSString * (id w, id x, id y, id z) {\n\t\t\t\t\t\treturn [NSString stringWithFormat:@\"%@ %@ %@ %@\", w, x, y, z];\n\t\t\t\t\t}];\n\t\t\t\t\tverifyValues(stream, @[ @\"Ada eats fish now\", @\"Bob cooks bear later\" ]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should work on infinite streams\", ^{\n\t\t\t\t\tNSArray *streams = [threeStreams arrayByAddingObject:infiniteStream];\n\t\t\t\t\tRACStream *stream = [streamClass zip:streams reduce:^ NSString * (id w, id x, id y, id z) {\n\t\t\t\t\t\treturn [NSString stringWithFormat:@\"%@ %@ %@\", w, x, y];\n\t\t\t\t\t}];\n\t\t\t\t\tverifyValues(stream, @[ @\"Ada eats fish\", @\"Bob cooks bear\", @\"Dea jumps rock\" ]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should handle multiples of the same stream\", ^{\n\t\t\t\t\tNSArray *streams = @[ streamOne, streamOne, streamTwo, streamThree, streamTwo, streamThree ];\n\t\t\t\t\tRACStream *stream = [streamClass zip:streams reduce:^ NSString * (id x1, id x2, id y1, id z1, id y2, id z2) {\n\t\t\t\t\t\treturn [NSString stringWithFormat:@\"%@ %@ %@ %@ %@ %@\", x1, x2, y1, z1, y2, z2];\n\t\t\t\t\t}];\n\t\t\t\t\tverifyValues(stream, @[ @\"Ada Ada eats fish eats fish\", @\"Bob Bob cooks bear cooks bear\", @\"Dea Dea jumps rock jumps rock\" ]);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tqck_describe(@\"+zip:\", ^{\n\t\t\t\tqck_it(@\"should make a stream of tuples out of single value\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:@[ streamOne ]];\n\t\t\t\t\tverifyValues(stream, oneStreamTuples);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should make a stream of tuples out of an array of streams\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:threeStreams];\n\t\t\t\t\tverifyValues(stream, threeStreamTuples);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should make an empty stream if given an empty array\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:@[]];\n\t\t\t\t\tverifyValues(stream, @[]);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should make a stream of tuples out of an enumerator of streams\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:threeStreams.objectEnumerator];\n\t\t\t\t\tverifyValues(stream, threeStreamTuples);\n\t\t\t\t});\n\n\t\t\t\tqck_it(@\"should make an empty stream if given an empty enumerator\", ^{\n\t\t\t\t\tRACStream *stream = [streamClass zip:@[].objectEnumerator];\n\t\t\t\t\tverifyValues(stream, @[]);\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"+concat:\", ^{\n\t\t\t__block NSArray *streams = nil;\n\t\t\t__block NSArray *result = nil;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tRACStream *a = [streamClass return:@0];\n\t\t\t\tRACStream *b = [streamClass empty];\n\t\t\t\tRACStream *c = streamWithValues(@[ @1, @2, @3 ]);\n\t\t\t\tRACStream *d = [streamClass return:@4];\n\t\t\t\tRACStream *e = [streamClass return:@5];\n\t\t\t\tRACStream *f = [streamClass empty];\n\t\t\t\tRACStream *g = [streamClass empty];\n\t\t\t\tRACStream *h = streamWithValues(@[ @6, @7 ]);\n\t\t\t\tstreams = @[ a, b, c, d, e, f, g, h ];\n\t\t\t\tresult = @[ @0, @1, @2, @3, @4, @5, @6, @7 ];\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate an array of streams\", ^{\n\t\t\t\tRACStream *stream = [streamClass concat:streams];\n\t\t\t\tverifyValues(stream, result);\n\t\t\t});\n\n\t\t\tqck_it(@\"should concatenate an enumerator of streams\", ^{\n\t\t\t\tRACStream *stream = [streamClass concat:streams.objectEnumerator];\n\t\t\t\tverifyValues(stream, result);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"scanning\", ^{\n\t\t\tNSArray *values = @[ @1, @2, @3, @4 ];\n\n\t\t\t__block RACStream *stream;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tstream = streamWithValues(values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should scan\", ^{\n\t\t\t\tRACStream *scanned = [stream scanWithStart:@0 reduce:^(NSNumber *running, NSNumber *next) {\n\t\t\t\t\treturn @(running.integerValue + next.integerValue);\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(scanned, @[ @1, @3, @6, @10 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should scan with index\", ^{\n\t\t\t\tRACStream *scanned = [stream scanWithStart:@0 reduceWithIndex:^(NSNumber *running, NSNumber *next, NSUInteger index) {\n\t\t\t\t\treturn @(running.integerValue + next.integerValue + (NSInteger)index);\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(scanned, @[ @1, @4, @9, @16 ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"taking with a predicate\", ^{\n\t\t\tNSArray *values = @[ @0, @1, @2, @3, @0, @2, @4 ];\n\n\t\t\t__block RACStream *stream;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tstream = streamWithValues(values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should take until a predicate is true\", ^{\n\t\t\t\tRACStream *taken = [stream takeUntilBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue >= 3;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[ @0, @1, @2 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should take while a predicate is true\", ^{\n\t\t\t\tRACStream *taken = [stream takeWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue <= 1;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[ @0, @1 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should take a full stream\", ^{\n\t\t\t\tRACStream *taken = [stream takeWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue <= 10;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should return an empty stream\", ^{\n\t\t\t\tRACStream *taken = [stream takeWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue < 0;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate an infinite stream\", ^{\n\t\t\t\tRACStream *infiniteCounter = [infiniteStream scanWithStart:@0 reduce:^(NSNumber *running, id _) {\n\t\t\t\t\treturn @(running.unsignedIntegerValue + 1);\n\t\t\t\t}];\n\n\t\t\t\tRACStream *taken = [infiniteCounter takeWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue <= 5;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[ @1, @2, @3, @4, @5 ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"skipping with a predicate\", ^{\n\t\t\tNSArray *values = @[ @0, @1, @2, @3, @0, @2, @4 ];\n\n\t\t\t__block RACStream *stream;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tstream = streamWithValues(values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should skip until a predicate is true\", ^{\n\t\t\t\tRACStream *taken = [stream skipUntilBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue >= 3;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[ @3, @0, @2, @4 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should skip while a predicate is true\", ^{\n\t\t\t\tRACStream *taken = [stream skipWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue <= 1;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[ @2, @3, @0, @2, @4 ]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should skip a full stream\", ^{\n\t\t\t\tRACStream *taken = [stream skipWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue <= 10;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, @[]);\n\t\t\t});\n\n\t\t\tqck_it(@\"should finish skipping immediately\", ^{\n\t\t\t\tRACStream *taken = [stream skipWhileBlock:^ BOOL (NSNumber *x) {\n\t\t\t\t\treturn x.integerValue < 0;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(taken, values);\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"-combinePreviousWithStart:reduce:\", ^{\n\t\t\tNSArray *values = @[ @1, @2, @3 ];\n\t\t\t__block RACStream *stream;\n\t\t\tqck_beforeEach(^{\n\t\t\t\tstream = streamWithValues(values);\n\t\t\t});\n\n\t\t\tqck_it(@\"should pass the previous next into the reduce block\", ^{\n\t\t\t\tNSMutableArray *previouses = [NSMutableArray array];\n\t\t\t\tRACStream *mapped = [stream combinePreviousWithStart:nil reduce:^(id previous, id next) {\n\t\t\t\t\t[previouses addObject:previous ?: RACTupleNil.tupleNil];\n\t\t\t\t\treturn next;\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(mapped, @[ @1, @2, @3 ]);\n\n\t\t\t\tNSArray *expected = @[ RACTupleNil.tupleNil, @1, @2 ];\n\t\t\t\texpect(previouses).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should send the combined value\", ^{\n\t\t\t\tRACStream *mapped = [stream combinePreviousWithStart:@1 reduce:^(NSNumber *previous, NSNumber *next) {\n\t\t\t\t\treturn [NSString stringWithFormat:@\"%lu - %lu\", (unsigned long)previous.unsignedIntegerValue, (unsigned long)next.unsignedIntegerValue];\n\t\t\t\t}];\n\n\t\t\t\tverifyValues(mapped, @[ @\"1 - 1\", @\"1 - 2\", @\"2 - 3\" ]);\n\t\t\t});\n\t\t});\n\n\t\tqck_it(@\"should reduce tuples\", ^{\n\t\t\tRACStream *stream = streamWithValues(@[\n\t\t\t\tRACTuplePack(@\"foo\", @\"bar\"),\n\t\t\t\tRACTuplePack(@\"buzz\", @\"baz\"),\n\t\t\t\tRACTuplePack(@\"\", @\"_\")\n\t\t\t]);\n\n\t\t\tRACStream *reduced = [stream reduceEach:^(NSString *a, NSString *b) {\n\t\t\t\treturn [a stringByAppendingString:b];\n\t\t\t}];\n\n\t\t\tverifyValues(reduced, @[ @\"foobar\", @\"buzzbaz\", @\"_\" ]);\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubclassObject.h",
    "content": "//\n//  RACSubclassObject.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestObject.h\"\n\n@interface RACSubclassObject : RACTestObject\n\n// Set whenever -forwardInvocation: is invoked on the receiver.\n@property (nonatomic, assign) SEL forwardedSelector;\n\n// Invokes the superclass implementation with `objectValue` concatenated to\n// \"SUBCLASS\".\n- (NSString *)combineObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue;\n\n// Asynchronously invokes the superclass implementation on the current scheduler.\n- (void)setObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubclassObject.m",
    "content": "//\n//  RACSubclassObject.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 3/18/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACSubclassObject.h\"\n#import \"RACScheduler.h\"\n\n@implementation RACSubclassObject\n\n- (void)forwardInvocation:(NSInvocation *)invocation {\n\tself.forwardedSelector = invocation.selector;\n}\n\n- (NSMethodSignature *)methodSignatureForSelector:(SEL)selector {\n\tNSParameterAssert(selector != NULL);\n\n\tNSMethodSignature *signature = [super methodSignatureForSelector:selector];\n\tif (signature != nil) return signature;\n\n\treturn [super methodSignatureForSelector:@selector(description)];\n}\n\n- (NSString *)combineObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue {\n\tNSString *appended = [[objectValue description] stringByAppendingString:@\"SUBCLASS\"];\n\treturn [super combineObjectValue:appended andIntegerValue:integerValue];\n}\n\n- (void)setObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue {\n\t[RACScheduler.currentScheduler schedule:^{\n\t\t[super setObjectValue:objectValue andSecondObjectValue:secondObjectValue];\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubjectSpec.m",
    "content": "//\n//  RACSubjectSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/24/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n@import Quick;\n@import Nimble;\n\n#import \"RACSubscriberExamples.h\"\n\n#import <libkern/OSAtomic.h>\n#import <ReactiveCocoa/EXTScope.h>\n#import \"RACBehaviorSubject.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACReplaySubject.h\"\n#import \"RACScheduler.h\"\n#import \"RACSignal+Operations.h\"\n#import \"RACSubject.h\"\n#import \"RACUnit.h\"\n\n@interface RACTestSubscriber : NSObject <RACSubscriber>\n@property (nonatomic, strong, readonly) RACDisposable *disposable;\n@end\n\n@implementation RACTestSubscriber\n\n- (instancetype)init {\n\tself = [super init];\n\t_disposable = [RACDisposable new];\n\treturn self;\n}\n\n- (void)sendNext:(id)value {}\n- (void)sendError:(NSError *)error {}\n- (void)sendCompleted {}\n\n- (void)didSubscribeWithDisposable:(RACCompoundDisposable *)disposable {\n\t[disposable addDisposable:self.disposable];\n}\n\n@end\n\nQuickSpecBegin(RACSubjectSpec)\n\nqck_describe(@\"RACSubject\", ^{\n\t__block RACSubject *subject;\n\t__block NSMutableArray *values;\n\n\t__block BOOL success;\n\t__block NSError *error;\n\n\tqck_beforeEach(^{\n\t\tvalues = [NSMutableArray array];\n\n\t\tsubject = [RACSubject subject];\n\t\tsuccess = YES;\n\t\terror = nil;\n\n\t\t[subject subscribeNext:^(id value) {\n\t\t\t[values addObject:value];\n\t\t} error:^(NSError *e) {\n\t\t\terror = e;\n\t\t\tsuccess = NO;\n\t\t} completed:^{\n\t\t\tsuccess = YES;\n\t\t}];\n\t});\n\n\tqck_it(@\"should dispose the paired disposable when a subscription terminates\", ^{\n\t\tRACSubject* subject = [RACSubject new];\n\t\tRACTestSubscriber* subscriber = [RACTestSubscriber new];\n\n\t\t[[subject subscribe:subscriber] dispose];\n\n\t\texpect(@(subscriber.disposable.disposed)).to(beTruthy());\n\t});\n\n\tqck_itBehavesLike(RACSubscriberExamples, ^{\n\t\treturn @{\n\t\t\tRACSubscriberExampleSubscriber: subject,\n\t\t\tRACSubscriberExampleValuesReceivedBlock: [^{ return [values copy]; } copy],\n\t\t\tRACSubscriberExampleErrorReceivedBlock: [^{ return error; } copy],\n\t\t\tRACSubscriberExampleSuccessBlock: [^{ return success; } copy]\n\t\t};\n\t});\n});\n\nqck_describe(@\"RACReplaySubject\", ^{\n\t__block RACReplaySubject *subject = nil;\n\n\tqck_describe(@\"with a capacity of 1\", ^{\n\t\tqck_beforeEach(^{\n\t\t\tsubject = [RACReplaySubject replaySubjectWithCapacity:1];\n\t\t});\n\n\t\tqck_it(@\"should send the last value\", ^{\n\t\t\tid firstValue = @\"blah\";\n\t\t\tid secondValue = @\"more blah\";\n\n\t\t\t[subject sendNext:firstValue];\n\t\t\t[subject sendNext:secondValue];\n\n\t\t\t__block id valueReceived = nil;\n\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\tvalueReceived = x;\n\t\t\t}];\n\n\t\t\texpect(valueReceived).to(equal(secondValue));\n\t\t});\n\n\t\tqck_it(@\"should send the last value to new subscribers after completion\", ^{\n\t\t\tid firstValue = @\"blah\";\n\t\t\tid secondValue = @\"more blah\";\n\n\t\t\t__block id valueReceived = nil;\n\t\t\t__block NSUInteger nextsReceived = 0;\n\n\t\t\t[subject sendNext:firstValue];\n\t\t\t[subject sendNext:secondValue];\n\n\t\t\texpect(@(nextsReceived)).to(equal(@0));\n\t\t\texpect(valueReceived).to(beNil());\n\n\t\t\t[subject sendCompleted];\n\n\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\tvalueReceived = x;\n\t\t\t\tnextsReceived++;\n\t\t\t}];\n\n\t\t\texpect(@(nextsReceived)).to(equal(@1));\n\t\t\texpect(valueReceived).to(equal(secondValue));\n\t\t});\n\n\t\tqck_it(@\"should not send any values to new subscribers if none were sent originally\", ^{\n\t\t\t[subject sendCompleted];\n\n\t\t\t__block BOOL nextInvoked = NO;\n\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\tnextInvoked = YES;\n\t\t\t}];\n\n\t\t\texpect(@(nextInvoked)).to(beFalsy());\n\t\t});\n\n\t\tqck_it(@\"should resend errors\", ^{\n\t\t\tNSError *error = [NSError errorWithDomain:NSCocoaErrorDomain code:0 userInfo:nil];\n\t\t\t[subject sendError:error];\n\n\t\t\t__block BOOL errorSent = NO;\n\t\t\t[subject subscribeError:^(NSError *sentError) {\n\t\t\t\texpect(sentError).to(equal(error));\n\t\t\t\terrorSent = YES;\n\t\t\t}];\n\n\t\t\texpect(@(errorSent)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should resend nil errors\", ^{\n\t\t\t[subject sendError:nil];\n\n\t\t\t__block BOOL errorSent = NO;\n\t\t\t[subject subscribeError:^(NSError *sentError) {\n\t\t\t\texpect(sentError).to(beNil());\n\t\t\t\terrorSent = YES;\n\t\t\t}];\n\n\t\t\texpect(@(errorSent)).to(beTruthy());\n\t\t});\n\t});\n\n\tqck_describe(@\"with an unlimited capacity\", ^{\n\t\tqck_beforeEach(^{\n\t\t\tsubject = [RACReplaySubject subject];\n\t\t});\n\n\t\tqck_itBehavesLike(RACSubscriberExamples, ^{\n\t\t\treturn @{\n\t\t\t\tRACSubscriberExampleSubscriber: subject,\n\t\t\t\tRACSubscriberExampleValuesReceivedBlock: [^{\n\t\t\t\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t\t\t\t// This subscription should synchronously dump all values already\n\t\t\t\t\t// received into 'values'.\n\t\t\t\t\t[subject subscribeNext:^(id value) {\n\t\t\t\t\t\t[values addObject:value];\n\t\t\t\t\t}];\n\n\t\t\t\t\treturn values;\n\t\t\t\t} copy],\n\t\t\t\tRACSubscriberExampleErrorReceivedBlock: [^{\n\t\t\t\t\t__block NSError *error = nil;\n\n\t\t\t\t\t[subject subscribeError:^(NSError *x) {\n\t\t\t\t\t\terror = x;\n\t\t\t\t\t}];\n\n\t\t\t\t\treturn error;\n\t\t\t\t} copy],\n\t\t\t\tRACSubscriberExampleSuccessBlock: [^{\n\t\t\t\t\t__block BOOL success = YES;\n\n\t\t\t\t\t[subject subscribeError:^(NSError *x) {\n\t\t\t\t\t\tsuccess = NO;\n\t\t\t\t\t}];\n\n\t\t\t\t\treturn success;\n\t\t\t\t} copy]\n\t\t\t};\n\t\t});\n\n\t\tqck_it(@\"should send both values to new subscribers after completion\", ^{\n\t\t\tid firstValue = @\"blah\";\n\t\t\tid secondValue = @\"more blah\";\n\n\t\t\t[subject sendNext:firstValue];\n\t\t\t[subject sendNext:secondValue];\n\t\t\t[subject sendCompleted];\n\n\t\t\t__block BOOL completed = NO;\n\t\t\tNSMutableArray *valuesReceived = [NSMutableArray array];\n\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\t[valuesReceived addObject:x];\n\t\t\t} completed:^{\n\t\t\t\tcompleted = YES;\n\t\t\t}];\n\n\t\t\texpect(valuesReceived).to(haveCount(@2));\n\t\t\tNSArray *expected = [NSArray arrayWithObjects:firstValue, secondValue, nil];\n\t\t\texpect(valuesReceived).to(equal(expected));\n\t\t\texpect(@(completed)).to(beTruthy());\n\t\t});\n\n\t\tqck_it(@\"should send values in the same order live as when replaying\", ^{\n\t\t\tNSUInteger count = 49317;\n\n\t\t\t// Just leak it, ain't no thang.\n\t\t\t__unsafe_unretained volatile id *values = (__unsafe_unretained id *)calloc(count, sizeof(*values));\n\t\t\t__block volatile int32_t nextIndex = 0;\n\n\t\t\t[subject subscribeNext:^(NSNumber *value) {\n\t\t\t\tint32_t indexPlusOne = OSAtomicIncrement32(&nextIndex);\n\t\t\t\tvalues[indexPlusOne - 1] = value;\n\t\t\t}];\n\n\t\t\tdispatch_queue_t queue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.RACSubjectSpec\", DISPATCH_QUEUE_CONCURRENT);\n\t\t\tdispatch_suspend(queue);\n\n\t\t\tfor (NSUInteger i = 0; i < count; i++) {\n\t\t\t\tdispatch_async(queue, ^{\n\t\t\t\t\t[subject sendNext:@(i)];\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tdispatch_resume(queue);\n\t\t\tdispatch_barrier_sync(queue, ^{\n\t\t\t\t[subject sendCompleted];\n\t\t\t});\n\n\t\t\tOSMemoryBarrier();\n\n\t\t\tNSArray *liveValues = [NSArray arrayWithObjects:(id *)values count:(NSUInteger)nextIndex];\n\t\t\texpect(liveValues).to(haveCount(@(count)));\n\n\t\t\tNSArray *replayedValues = subject.toArray;\n\t\t\texpect(replayedValues).to(haveCount(@(count)));\n\n\t\t\t// It should return the same ordering for multiple invocations too.\n\t\t\texpect(replayedValues).to(equal(subject.toArray));\n\n\t\t\t[replayedValues enumerateObjectsUsingBlock:^(id value, NSUInteger index, BOOL *stop) {\n\t\t\t\texpect(liveValues[index]).to(equal(value));\n\t\t\t}];\n\t\t});\n\n\t\tqck_it(@\"should have a current scheduler when replaying\", ^{\n\t\t\t[subject sendNext:RACUnit.defaultUnit];\n\n\t\t\t__block RACScheduler *currentScheduler;\n\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t}];\n\n\t\t\texpect(currentScheduler).notTo(beNil());\n\n\t\t\tcurrentScheduler = nil;\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t\t\t\t}];\n\t\t\t});\n\n\t\t\texpect(currentScheduler).toEventuallyNot(beNil());\n\t\t});\n\n\t\tqck_it(@\"should stop replaying when the subscription is disposed\", ^{\n\t\t\tNSMutableArray *values = [NSMutableArray array];\n\n\t\t\t[subject sendNext:@0];\n\t\t\t[subject sendNext:@1];\n\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t__block RACDisposable *disposable = [subject subscribeNext:^(id x) {\n\t\t\t\t\texpect(disposable).notTo(beNil());\n\n\t\t\t\t\t[values addObject:x];\n\t\t\t\t\t[disposable dispose];\n\t\t\t\t}];\n\t\t\t});\n\n\t\t\texpect(values).toEventually(equal(@[ @0 ]));\n\t\t});\n\n\t\tqck_it(@\"should finish replaying before completing\", ^{\n\t\t\t[subject sendNext:@1];\n\n\t\t\t__block id received;\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\t\treceived = x;\n\t\t\t\t}];\n\n\t\t\t\t[subject sendCompleted];\n\t\t\t});\n\n\t\t\texpect(received).toEventually(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should finish replaying before erroring\", ^{\n\t\t\t[subject sendNext:@1];\n\n\t\t\t__block id received;\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\t\treceived = x;\n\t\t\t\t}];\n\n\t\t\t\t[subject sendError:[NSError errorWithDomain:@\"blah\" code:-99 userInfo:nil]];\n\t\t\t});\n\n\t\t\texpect(received).toEventually(equal(@1));\n\t\t});\n\n\t\tqck_it(@\"should finish replaying before sending new values\", ^{\n\t\t\t[subject sendNext:@1];\n\n\t\t\tNSMutableArray *received = [NSMutableArray array];\n\t\t\tdispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{\n\t\t\t\t[subject subscribeNext:^(id x) {\n\t\t\t\t\t[received addObject:x];\n\t\t\t\t}];\n\n\t\t\t\t[subject sendNext:@2];\n\t\t\t});\n\n\t\t\tNSArray *expected = @[ @1, @2 ];\n\t\t\texpect(received).toEventually(equal(expected));\n\t\t});\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubscriberExamples.h",
    "content": "//\n//  RACSubscriberExamples.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-27.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n// The name of the shared examples for implementors of <RACSubscriber>.\nextern NSString * const RACSubscriberExamples;\n\n// id<RACSubscriber>\nextern NSString * const RACSubscriberExampleSubscriber;\n\n// A block which returns an NSArray of the values received so far.\nextern NSString * const RACSubscriberExampleValuesReceivedBlock;\n\n// A block which returns any NSError received so far.\nextern NSString * const RACSubscriberExampleErrorReceivedBlock;\n\n// A block which returns a BOOL indicating whether the subscriber is successful\n// so far.\nextern NSString * const RACSubscriberExampleSuccessBlock;\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubscriberExamples.m",
    "content": "//\n//  RACSubscriberExamples.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-27.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSubscriberExamples.h\"\n\n#import \"NSObject+RACDeallocating.h\"\n#import \"RACCompoundDisposable.h\"\n#import \"RACDisposable.h\"\n#import \"RACSubject.h\"\n#import \"RACSubscriber.h\"\n\nNSString * const RACSubscriberExamples = @\"RACSubscriberExamples\";\nNSString * const RACSubscriberExampleSubscriber = @\"RACSubscriberExampleSubscriber\";\nNSString * const RACSubscriberExampleValuesReceivedBlock = @\"RACSubscriberExampleValuesReceivedBlock\";\nNSString * const RACSubscriberExampleErrorReceivedBlock = @\"RACSubscriberExampleErrorReceivedBlock\";\nNSString * const RACSubscriberExampleSuccessBlock = @\"RACSubscriberExampleSuccessBlock\";\n\nQuickConfigurationBegin(RACSubscriberExampleGroups)\n\n+ (void)configure:(Configuration *)configuration {\n\tsharedExamples(RACSubscriberExamples, ^(QCKDSLSharedExampleContext exampleContext) {\n\t\t__block NSArray * (^valuesReceived)(void);\n\t\t__block NSError * (^errorReceived)(void);\n\t\t__block BOOL (^success)(void);\n\t\t__block id<RACSubscriber> subscriber;\n\n\t\tqck_beforeEach(^{\n\t\t\tvaluesReceived = exampleContext()[RACSubscriberExampleValuesReceivedBlock];\n\t\t\terrorReceived = exampleContext()[RACSubscriberExampleErrorReceivedBlock];\n\t\t\tsuccess = exampleContext()[RACSubscriberExampleSuccessBlock];\n\t\t\tsubscriber = exampleContext()[RACSubscriberExampleSubscriber];\n\t\t\texpect(subscriber).notTo(beNil());\n\t\t});\n\n\t\tqck_it(@\"should accept a nil error\", ^{\n\t\t\t[subscriber sendError:nil];\n\n\t\t\texpect(@(success())).to(beFalsy());\n\t\t\texpect(errorReceived()).to(beNil());\n\t\t\texpect(valuesReceived()).to(equal(@[]));\n\t\t});\n\n\t\tqck_describe(@\"with values\", ^{\n\t\t\t__block NSSet *values;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tNSMutableSet *mutableValues = [NSMutableSet set];\n\t\t\t\tfor (NSUInteger i = 0; i < 20; i++) {\n\t\t\t\t\t[mutableValues addObject:@(i)];\n\t\t\t\t}\n\n\t\t\t\tvalues = [mutableValues copy];\n\t\t\t});\n\n\t\t\tqck_it(@\"should send nexts serially, even when delivered from multiple threads\", ^{\n\t\t\t\tNSArray *allValues = values.allObjects;\n\t\t\t\tdispatch_apply(allValues.count, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), [^(size_t index) {\n\t\t\t\t\t[subscriber sendNext:allValues[index]];\n\t\t\t\t} copy]);\n\n\t\t\t\texpect(@(success())).to(beTruthy());\n\t\t\t\texpect(errorReceived()).to(beNil());\n\n\t\t\t\tNSSet *valuesReceivedSet = [NSSet setWithArray:valuesReceived()];\n\t\t\t\texpect(valuesReceivedSet).to(equal(values));\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"multiple subscriptions\", ^{\n\t\t\t__block RACSubject *first;\n\t\t\t__block RACSubject *second;\n\n\t\t\tqck_beforeEach(^{\n\t\t\t\tfirst = [RACSubject subject];\n\t\t\t\t[first subscribe:subscriber];\n\n\t\t\t\tsecond = [RACSubject subject];\n\t\t\t\t[second subscribe:subscriber];\n\t\t\t});\n\n\t\t\tqck_it(@\"should send values from all subscriptions\", ^{\n\t\t\t\t[first sendNext:@\"foo\"];\n\t\t\t\t[second sendNext:@\"bar\"];\n\t\t\t\t[first sendNext:@\"buzz\"];\n\t\t\t\t[second sendNext:@\"baz\"];\n\n\t\t\t\texpect(@(success())).to(beTruthy());\n\t\t\t\texpect(errorReceived()).to(beNil());\n\n\t\t\t\tNSArray *expected = @[ @\"foo\", @\"bar\", @\"buzz\", @\"baz\" ];\n\t\t\t\texpect(valuesReceived()).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate after the first error from any subscription\", ^{\n\t\t\t\tNSError *error = [NSError errorWithDomain:@\"\" code:-1 userInfo:nil];\n\n\t\t\t\t[first sendNext:@\"foo\"];\n\t\t\t\t[second sendError:error];\n\t\t\t\t[first sendNext:@\"buzz\"];\n\n\t\t\t\texpect(@(success())).to(beFalsy());\n\t\t\t\texpect(errorReceived()).to(equal(error));\n\n\t\t\t\tNSArray *expected = @[ @\"foo\" ];\n\t\t\t\texpect(valuesReceived()).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should terminate after the first completed from any subscription\", ^{\n\t\t\t\t[first sendNext:@\"foo\"];\n\t\t\t\t[second sendNext:@\"bar\"];\n\t\t\t\t[first sendCompleted];\n\t\t\t\t[second sendNext:@\"baz\"];\n\n\t\t\t\texpect(@(success())).to(beTruthy());\n\t\t\t\texpect(errorReceived()).to(beNil());\n\n\t\t\t\tNSArray *expected = @[ @\"foo\", @\"bar\" ];\n\t\t\t\texpect(valuesReceived()).to(equal(expected));\n\t\t\t});\n\n\t\t\tqck_it(@\"should dispose of all current subscriptions upon termination\", ^{\n\t\t\t\t__block BOOL firstDisposed = NO;\n\t\t\t\tRACSignal *firstDisposableSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t\t\tfirstDisposed = YES;\n\t\t\t\t\t}];\n\t\t\t\t}];\n\n\t\t\t\t__block BOOL secondDisposed = NO;\n\t\t\t\tRACSignal *secondDisposableSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t\t\tsecondDisposed = YES;\n\t\t\t\t\t}];\n\t\t\t\t}];\n\n\t\t\t\t[firstDisposableSignal subscribe:subscriber];\n\t\t\t\t[secondDisposableSignal subscribe:subscriber];\n\n\t\t\t\texpect(@(firstDisposed)).to(beFalsy());\n\t\t\t\texpect(@(secondDisposed)).to(beFalsy());\n\n\t\t\t\t[first sendCompleted];\n\n\t\t\t\texpect(@(firstDisposed)).to(beTruthy());\n\t\t\t\texpect(@(secondDisposed)).to(beTruthy());\n\t\t\t});\n\n\t\t\tqck_it(@\"should dispose of future subscriptions upon termination\", ^{\n\t\t\t\t__block BOOL disposed = NO;\n\t\t\t\tRACSignal *disposableSignal = [RACSignal createSignal:^(id<RACSubscriber> subscriber) {\n\t\t\t\t\treturn [RACDisposable disposableWithBlock:^{\n\t\t\t\t\t\tdisposed = YES;\n\t\t\t\t\t}];\n\t\t\t\t}];\n\n\t\t\t\t[first sendCompleted];\n\t\t\t\texpect(@(disposed)).to(beFalsy());\n\n\t\t\t\t[disposableSignal subscribe:subscriber];\n\t\t\t\texpect(@(disposed)).to(beTruthy());\n\t\t\t});\n\t\t});\n\n\t\tqck_describe(@\"memory management\", ^{\n\t\t\tqck_it(@\"should not retain disposed disposables\", ^{\n\t\t\t\t__block BOOL disposableDeallocd = NO;\n\t\t\t\t@autoreleasepool {\n\t\t\t\t\tRACCompoundDisposable *disposable __attribute__((objc_precise_lifetime)) = [RACCompoundDisposable disposableWithBlock:^{}];\n\t\t\t\t\t[disposable.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{\n\t\t\t\t\t\tdisposableDeallocd = YES;\n\t\t\t\t\t}]];\n\n\t\t\t\t\t[subscriber didSubscribeWithDisposable:disposable];\n\t\t\t\t\t[disposable dispose];\n\t\t\t\t}\n\t\t\t\texpect(@(disposableDeallocd)).to(beTruthy());\n\t\t\t});\n\t\t});\n\t});\n}\n\nQuickConfigurationEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubscriberSpec.m",
    "content": "//\n//  RACSubscriberSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-11-27.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSubscriberExamples.h\"\n\n#import \"RACSubscriber.h\"\n#import \"RACSubscriber+Private.h\"\n#import <libkern/OSAtomic.h>\n\nQuickSpecBegin(RACSubscriberSpec)\n\n__block RACSubscriber *subscriber;\n__block NSMutableArray *values;\n\n__block volatile BOOL finished;\n__block volatile int32_t nextsAfterFinished;\n\n__block BOOL success;\n__block NSError *error;\n\nqck_beforeEach(^{\n\tvalues = [NSMutableArray array];\n\n\tfinished = NO;\n\tnextsAfterFinished = 0;\n\n\tsuccess = YES;\n\terror = nil;\n\n\tsubscriber = [RACSubscriber subscriberWithNext:^(id value) {\n\t\tif (finished) OSAtomicIncrement32Barrier(&nextsAfterFinished);\n\n\t\t[values addObject:value];\n\t} error:^(NSError *e) {\n\t\terror = e;\n\t\tsuccess = NO;\n\t} completed:^{\n\t\tsuccess = YES;\n\t}];\n});\n\nqck_itBehavesLike(RACSubscriberExamples, ^{\n\treturn @{\n\t\tRACSubscriberExampleSubscriber: subscriber,\n\t\tRACSubscriberExampleValuesReceivedBlock: [^{ return [values copy]; } copy],\n\t\tRACSubscriberExampleErrorReceivedBlock: [^{ return error; } copy],\n\t\tRACSubscriberExampleSuccessBlock: [^{ return success; } copy]\n\t};\n});\n\nqck_describe(@\"finishing\", ^{\n\t__block void (^sendValues)(void);\n\t__block BOOL expectedSuccess;\n\n\t__block dispatch_group_t dispatchGroup;\n\t__block dispatch_queue_t concurrentQueue;\n\n\tqck_beforeEach(^{\n\t\tdispatchGroup = dispatch_group_create();\n\t\texpect(dispatchGroup).notTo(beNil());\n\n\t\tconcurrentQueue = dispatch_queue_create(\"org.reactivecocoa.ReactiveCocoa.RACSubscriberSpec\", DISPATCH_QUEUE_CONCURRENT);\n\t\texpect(concurrentQueue).notTo(beNil());\n\n\t\tdispatch_suspend(concurrentQueue);\n\n\t\tsendValues = [^{\n\t\t\tfor (NSUInteger i = 0; i < 15; i++) {\n\t\t\t\tdispatch_group_async(dispatchGroup, concurrentQueue, ^{\n\t\t\t\t\t[subscriber sendNext:@(i)];\n\t\t\t\t});\n\t\t\t}\n\t\t} copy];\n\n\t\tsendValues();\n\t});\n\n\tqck_afterEach(^{\n\t\tsendValues();\n\t\tdispatch_resume(concurrentQueue);\n\n\t\t// Time out after one second.\n\t\tdispatch_time_t time = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC));\n\t\texpect(@(dispatch_group_wait(dispatchGroup, time))).to(equal(@0));\n\n\t\tdispatchGroup = NULL;\n\t\tconcurrentQueue = NULL;\n\n\t\texpect(@(nextsAfterFinished)).to(equal(@0));\n\n\t\tif (expectedSuccess) {\n\t\t\texpect(@(success)).to(beTruthy());\n\t\t\texpect(error).to(beNil());\n\t\t} else {\n\t\t\texpect(@(success)).to(beFalsy());\n\t\t}\n\t});\n\n\tqck_it(@\"should never invoke next after sending completed\", ^{\n\t\texpectedSuccess = YES;\n\n\t\tdispatch_group_async(dispatchGroup, concurrentQueue, ^{\n\t\t\t[subscriber sendCompleted];\n\n\t\t\tfinished = YES;\n\t\t\tOSMemoryBarrier();\n\t\t});\n\t});\n\n\tqck_it(@\"should never invoke next after sending error\", ^{\n\t\texpectedSuccess = NO;\n\n\t\tdispatch_group_async(dispatchGroup, concurrentQueue, ^{\n\t\t\t[subscriber sendError:nil];\n\n\t\t\tfinished = YES;\n\t\t\tOSMemoryBarrier();\n\t\t});\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACSubscriptingAssignmentTrampolineSpec.m",
    "content": "//\n//  RACSubscriptingAssignmentTrampolineSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/24/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSubscriptingAssignmentTrampoline.h\"\n#import \"RACPropertySignalExamples.h\"\n#import \"RACTestObject.h\"\n#import \"RACSubject.h\"\n\nQuickSpecBegin(RACSubscriptingAssignmentTrampolineSpec)\n\nid setupBlock = ^(RACTestObject *testObject, NSString *keyPath, id nilValue, RACSignal *signal) {\n\t[[RACSubscriptingAssignmentTrampoline alloc] initWithTarget:testObject nilValue:nilValue][keyPath] = signal;\n};\n\nqck_itBehavesLike(RACPropertySignalExamples, ^{\n\treturn @{ RACPropertySignalExamplesSetupBlock: setupBlock };\n});\n\nqck_it(@\"should expand the RAC macro properly\", ^{\n\tRACSubject *subject = [RACSubject subject];\n\tRACTestObject *testObject = [[RACTestObject alloc] init];\n\tRAC(testObject, objectValue) = subject;\n\n\t[subject sendNext:@1];\n\texpect(testObject.objectValue).to(equal(@1));\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTargetQueueSchedulerSpec.m",
    "content": "//\n//  RACTargetQueueSchedulerSpec.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/7/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTargetQueueScheduler.h\"\n#import <libkern/OSAtomic.h>\n\nQuickSpecBegin(RACTargetQueueSchedulerSpec)\n\nqck_it(@\"should have a valid current scheduler\", ^{\n\tdispatch_queue_t queue = dispatch_queue_create(\"test-queue\", DISPATCH_QUEUE_SERIAL);\n\tRACScheduler *scheduler = [[RACTargetQueueScheduler alloc] initWithName:@\"test-scheduler\" targetQueue:queue];\n\t__block RACScheduler *currentScheduler;\n\t[scheduler schedule:^{\n\t\tcurrentScheduler = RACScheduler.currentScheduler;\n\t}];\n\n\texpect(currentScheduler).toEventually(equal(scheduler));\n});\n\nqck_it(@\"should schedule blocks FIFO even when given a concurrent queue\", ^{\n\tdispatch_queue_t queue = dispatch_queue_create(\"test-queue\", DISPATCH_QUEUE_CONCURRENT);\n\tRACScheduler *scheduler = [[RACTargetQueueScheduler alloc] initWithName:@\"test-scheduler\" targetQueue:queue];\n\t__block volatile int32_t startedCount = 0;\n\t__block volatile uint32_t waitInFirst = 1;\n\t[scheduler schedule:^{\n\t\tOSAtomicIncrement32Barrier(&startedCount);\n\t\twhile (waitInFirst == 1) ;\n\t}];\n\n\t[scheduler schedule:^{\n\t\tOSAtomicIncrement32Barrier(&startedCount);\n\t}];\n\n\texpect(@(startedCount)).toEventually(equal(@1));\n\n\tOSAtomicAnd32Barrier(0, &waitInFirst);\n\n\texpect(@(startedCount)).toEventually(equal(@2));\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestExampleScheduler.h",
    "content": "//\n//  RACTestExampleScheduler.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/7/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <ReactiveCocoa/ReactiveCocoa.h>\n\n@interface RACTestExampleScheduler : RACQueueScheduler\n\n- (id)initWithQueue:(dispatch_queue_t)queue;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestExampleScheduler.m",
    "content": "//\n//  RACTestExampleScheduler.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 6/7/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTestExampleScheduler.h\"\n#import \"RACQueueScheduler+Subclass.h\"\n\n@implementation RACTestExampleScheduler\n\n#pragma mark Lifecycle\n\n- (id)initWithQueue:(dispatch_queue_t)queue {\n\treturn [super initWithName:nil queue:queue];\n}\n\n#pragma mark RACScheduler\n\n- (RACDisposable *)schedule:(void (^)(void))block {\n\tdispatch_async(self.queue, ^{\n\t\t[self performAsCurrentScheduler:block];\n\t});\n\n\treturn nil;\n}\n\n- (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {\n\tdispatch_time_t when = dispatch_time(DISPATCH_TIME_NOW, (int64_t)([date timeIntervalSinceNow] * NSEC_PER_SEC));\n\tdispatch_after(when, self.queue, ^{\n\t\t[self performAsCurrentScheduler:block];\n\t});\n\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestObject.h",
    "content": "//\n//  RACTestObject.h\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/18/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <CoreGraphics/CoreGraphics.h>\n#import <Foundation/Foundation.h>\n\ntypedef struct {\n\tlong long integerField;\n\tdouble doubleField;\n} RACTestStruct;\n\n@protocol RACTestProtocol <NSObject>\n\n@optional\n- (void)optionalProtocolMethodWithObjectValue:(id)objectValue;\n\n@end\n\n@interface RACTestObject : NSObject <RACTestProtocol>\n\n@property (nonatomic, strong) id objectValue;\n@property (nonatomic, strong) id secondObjectValue;\n@property (nonatomic, strong) RACTestObject *strongTestObjectValue;\n@property (nonatomic, weak) RACTestObject *weakTestObjectValue;\n@property (nonatomic, weak) id<RACTestProtocol> weakObjectWithProtocol;\n@property (nonatomic, assign) NSInteger integerValue;\n// Holds a copy of the string.\n@property (nonatomic, assign) char *charPointerValue;\n// Holds a copy of the string.\n@property (nonatomic, assign) const char *constCharPointerValue;\n@property (nonatomic, assign) CGRect rectValue;\n@property (nonatomic, assign) CGSize sizeValue;\n@property (nonatomic, assign) CGPoint pointValue;\n@property (nonatomic, assign) NSRange rangeValue;\n@property (nonatomic, assign) RACTestStruct structValue;\n@property (nonatomic, assign) _Bool c99BoolValue;\n@property (nonatomic, copy) NSString *stringValue;\n@property (nonatomic, copy) NSArray *arrayValue;\n@property (nonatomic, copy) NSSet *setValue;\n@property (nonatomic, copy) NSOrderedSet *orderedSetValue;\n@property (nonatomic, strong) id slowObjectValue;\n\n// Returns a new object each time, with the integerValue set to 42.\n@property (nonatomic, copy, readonly) RACTestObject *dynamicObjectProperty;\n\n// Returns a new object each time, with the integerValue set to 42.\n- (RACTestObject *)dynamicObjectMethod;\n\n// Whether to allow -setNilValueForKey: to be invoked without throwing an\n// exception.\n@property (nonatomic, assign) BOOL catchSetNilValueForKey;\n\n// Has -setObjectValue:andIntegerValue: been called?\n@property (nonatomic, assign) BOOL hasInvokedSetObjectValueAndIntegerValue;\n\n// Has -setObjectValue:andSecondObjectValue: been called?\n@property (nonatomic, assign) BOOL hasInvokedSetObjectValueAndSecondObjectValue;\n\n- (void)setObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue;\n- (void)setObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue;\n\n// Returns a string of the form \"objectValue: integerValue\".\n- (NSString *)combineObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue;\n- (NSString *)combineObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue;\n\n- (void)lifeIsGood:(id)sender;\n\n+ (void)lifeIsGood:(id)sender;\n\n- (NSRange)returnRangeValueWithObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue;\n\n// Writes 5 to the int pointed to by intPointer.\n- (void)write5ToIntPointer:(int *)intPointer;\n\n- (NSInteger)doubleInteger:(NSInteger)integer;\n- (char *)doubleString:(char *)string;\n- (const char *)doubleConstString:(const char *)string;\n- (RACTestStruct)doubleStruct:(RACTestStruct)testStruct;\n\n- (dispatch_block_t)wrapBlock:(dispatch_block_t)block;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestObject.m",
    "content": "//\n//  RACTestObject.m\n//  ReactiveCocoa\n//\n//  Created by Josh Abernathy on 9/18/12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTestObject.h\"\n\n@implementation RACTestObject\n\n- (void)dealloc {\n\tfree(_charPointerValue);\n\tfree((void *)_constCharPointerValue);\n}\n\n- (void)setNilValueForKey:(NSString *)key {\n\tif (!self.catchSetNilValueForKey) [super setNilValueForKey:key];\n}\n\n- (void)setCharPointerValue:(char *)charPointerValue {\n\tif (charPointerValue == _charPointerValue) return;\n\tfree(_charPointerValue);\n\t_charPointerValue = strdup(charPointerValue);\n}\n\n- (void)setConstCharPointerValue:(const char *)constCharPointerValue {\n\tif (constCharPointerValue == _constCharPointerValue) return;\n\tfree((void *)_constCharPointerValue);\n\t_constCharPointerValue = strdup(constCharPointerValue);\n}\n\n- (void)setObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue {\n\tself.hasInvokedSetObjectValueAndIntegerValue = YES;\n\tself.objectValue = objectValue;\n\tself.integerValue = integerValue;\n}\n\n- (void)setObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue {\n\tself.hasInvokedSetObjectValueAndSecondObjectValue = YES;\n\tself.objectValue = objectValue;\n\tself.secondObjectValue = secondObjectValue;\n}\n\n- (void)setSlowObjectValue:(id)value {\n\t[NSThread sleepForTimeInterval:0.02];\n\t_slowObjectValue = value;\n}\n\n- (NSString *)combineObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue {\n\treturn [NSString stringWithFormat:@\"%@: %ld\", objectValue, (long)integerValue];\n}\n\n- (NSString *)combineObjectValue:(id)objectValue andSecondObjectValue:(id)secondObjectValue {\n\treturn [NSString stringWithFormat:@\"%@: %@\", objectValue, secondObjectValue];\n}\n\n- (void)lifeIsGood:(id)sender {\n\t\n}\n\n+ (void)lifeIsGood:(id)sender {\n\t\n}\n\n- (NSRange)returnRangeValueWithObjectValue:(id)objectValue andIntegerValue:(NSInteger)integerValue {\n\treturn NSMakeRange((NSUInteger)[objectValue integerValue], (NSUInteger)integerValue);\n}\n\n- (RACTestObject *)dynamicObjectProperty {\n\treturn [self dynamicObjectMethod];\n}\n\n- (RACTestObject *)dynamicObjectMethod {\n\tRACTestObject *testObject = [[RACTestObject alloc] init];\n\ttestObject.integerValue = 42;\n\treturn testObject;\n}\n\n- (void)write5ToIntPointer:(int *)intPointer {\n\tNSCParameterAssert(intPointer != NULL);\n\t*intPointer = 5;\n}\n\n- (NSInteger)doubleInteger:(NSInteger)integer {\n\treturn integer * 2;\n}\n\n- (char *)doubleString:(char *)string {\n\tsize_t doubledSize = strlen(string) * 2 + 1;\n\tchar *doubledString = malloc(sizeof(char) * doubledSize);\n\n\tdoubledString[0] = '\\0';\n\tstrlcat(doubledString, string, doubledSize);\n\tstrlcat(doubledString, string, doubledSize);\n\n\tdispatch_async(dispatch_get_main_queue(), ^{\n\t\tfree(doubledString);\n\t});\n\n\treturn doubledString;\n}\n\n- (const char *)doubleConstString:(const char *)string {\n\treturn [self doubleString:(char *)string];\n}\n\n- (RACTestStruct)doubleStruct:(RACTestStruct)testStruct {\n\ttestStruct.integerField *= 2;\n\ttestStruct.doubleField *= 2;\n\treturn testStruct;\n}\n\n- (dispatch_block_t)wrapBlock:(dispatch_block_t)block {\n\treturn ^{\n\t\tblock();\n\t};\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestSchedulerSpec.m",
    "content": "//\n//  RACTestSchedulerSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-07-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTestScheduler.h\"\n\nQuickSpecBegin(RACTestSchedulerSpec)\n\n__block RACTestScheduler *scheduler;\n\nqck_beforeEach(^{\n\tscheduler = [[RACTestScheduler alloc] init];\n\texpect(scheduler).notTo(beNil());\n});\n\nqck_it(@\"should do nothing when stepping while empty\", ^{\n\t[scheduler step];\n\t[scheduler step:5];\n\t[scheduler stepAll];\n});\n\nqck_it(@\"should execute the earliest enqueued block when stepping\", ^{\n\t__block BOOL firstExecuted = NO;\n\t[scheduler schedule:^{\n\t\tfirstExecuted = YES;\n\t}];\n\n\t__block BOOL secondExecuted = NO;\n\t[scheduler schedule:^{\n\t\tsecondExecuted = YES;\n\t}];\n\n\texpect(@(firstExecuted)).to(beFalsy());\n\texpect(@(secondExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(firstExecuted)).to(beTruthy());\n\texpect(@(secondExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(secondExecuted)).to(beTruthy());\n});\n\nqck_it(@\"should step multiple times\", ^{\n\t__block BOOL firstExecuted = NO;\n\t[scheduler schedule:^{\n\t\tfirstExecuted = YES;\n\t}];\n\n\t__block BOOL secondExecuted = NO;\n\t[scheduler schedule:^{\n\t\tsecondExecuted = YES;\n\t}];\n\n\t__block BOOL thirdExecuted = NO;\n\t[scheduler schedule:^{\n\t\tthirdExecuted = YES;\n\t}];\n\n\texpect(@(firstExecuted)).to(beFalsy());\n\texpect(@(secondExecuted)).to(beFalsy());\n\texpect(@(thirdExecuted)).to(beFalsy());\n\n\t[scheduler step:2];\n\texpect(@(firstExecuted)).to(beTruthy());\n\texpect(@(secondExecuted)).to(beTruthy());\n\texpect(@(thirdExecuted)).to(beFalsy());\n\n\t[scheduler step:1];\n\texpect(@(thirdExecuted)).to(beTruthy());\n});\n\nqck_it(@\"should step through all scheduled blocks\", ^{\n\t__block NSUInteger executions = 0;\n\tfor (NSUInteger i = 0; i < 10; i++) {\n\t\t[scheduler schedule:^{\n\t\t\texecutions++;\n\t\t}];\n\t}\n\n\texpect(@(executions)).to(equal(@0));\n\n\t[scheduler stepAll];\n\texpect(@(executions)).to(equal(@10));\n});\n\nqck_it(@\"should execute blocks in date order when stepping\", ^{\n\t__block BOOL laterExecuted = NO;\n\t[scheduler after:[NSDate distantFuture] schedule:^{\n\t\tlaterExecuted = YES;\n\t}];\n\n\t__block BOOL earlierExecuted = NO;\n\t[scheduler after:[NSDate dateWithTimeIntervalSinceNow:20] schedule:^{\n\t\tearlierExecuted = YES;\n\t}];\n\n\texpect(@(earlierExecuted)).to(beFalsy());\n\texpect(@(laterExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(earlierExecuted)).to(beTruthy());\n\texpect(@(laterExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(laterExecuted)).to(beTruthy());\n});\n\nqck_it(@\"should execute delayed blocks in date order when stepping\", ^{\n\t__block BOOL laterExecuted = NO;\n\t[scheduler afterDelay:100 schedule:^{\n\t\tlaterExecuted = YES;\n\t}];\n\n\t__block BOOL earlierExecuted = NO;\n\t[scheduler afterDelay:50 schedule:^{\n\t\tearlierExecuted = YES;\n\t}];\n\n\texpect(@(earlierExecuted)).to(beFalsy());\n\texpect(@(laterExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(earlierExecuted)).to(beTruthy());\n\texpect(@(laterExecuted)).to(beFalsy());\n\n\t[scheduler step];\n\texpect(@(laterExecuted)).to(beTruthy());\n});\n\nqck_it(@\"should execute a repeating blocks in date order\", ^{\n\t__block NSUInteger firstExecutions = 0;\n\t[scheduler after:[NSDate dateWithTimeIntervalSinceNow:20] repeatingEvery:5 withLeeway:0 schedule:^{\n\t\tfirstExecutions++;\n\t}];\n\n\t__block NSUInteger secondExecutions = 0;\n\t[scheduler after:[NSDate dateWithTimeIntervalSinceNow:22] repeatingEvery:10 withLeeway:0 schedule:^{\n\t\tsecondExecutions++;\n\t}];\n\n\texpect(@(firstExecutions)).to(equal(@0));\n\texpect(@(secondExecutions)).to(equal(@0));\n\n\t// 20 ticks\n\t[scheduler step];\n\texpect(@(firstExecutions)).to(equal(@1));\n\texpect(@(secondExecutions)).to(equal(@0));\n\n\t// 22 ticks\n\t[scheduler step];\n\texpect(@(firstExecutions)).to(equal(@1));\n\texpect(@(secondExecutions)).to(equal(@1));\n\n\t// 25 ticks\n\t[scheduler step];\n\texpect(@(firstExecutions)).to(equal(@2));\n\texpect(@(secondExecutions)).to(equal(@1));\n\n\t// 30 ticks\n\t[scheduler step];\n\texpect(@(firstExecutions)).to(equal(@3));\n\texpect(@(secondExecutions)).to(equal(@1));\n\n\t// 32 ticks\n\t[scheduler step];\n\texpect(@(firstExecutions)).to(equal(@3));\n\texpect(@(secondExecutions)).to(equal(@2));\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestUIButton.h",
    "content": "//\n//  RACTestUIButton.h\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\n// Enables use of -sendActionsForControlEvents: in unit tests.\n@interface RACTestUIButton : UIButton\n\n+ (instancetype)button;\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTestUIButton.m",
    "content": "//\n//  RACTestUIButton.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2013-06-15.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import \"RACTestUIButton.h\"\n\n@implementation RACTestUIButton\n\n+ (instancetype)button {\n\tRACTestUIButton *button = [self buttonWithType:UIButtonTypeCustom];\n\treturn button;\n}\n\n// Required for unit testing – controls don't work normally\n// outside of normal apps. \n-(void)sendAction:(SEL)action to:(id)target forEvent:(UIEvent *)event {\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Warc-performSelector-leaks\"\n\t[target performSelector:action withObject:self];\n#pragma clang diagnostic pop\n}\n\n@end\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/RACTupleSpec.m",
    "content": "//\n//  RACTupleSpec.m\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2012-12-12.\n//  Copyright (c) 2012 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACTuple.h\"\n#import \"RACUnit.h\"\n\nQuickSpecBegin(RACTupleSpec)\n\nqck_describe(@\"RACTupleUnpack\", ^{\n\tqck_it(@\"should unpack a single value\", ^{\n\t\tRACTupleUnpack(RACUnit *value) = [RACTuple tupleWithObjects:RACUnit.defaultUnit, nil];\n\t\texpect(value).to(equal(RACUnit.defaultUnit));\n\t});\n\n\tqck_it(@\"should translate RACTupleNil\", ^{\n\t\tRACTupleUnpack(id value) = [RACTuple tupleWithObjects:RACTupleNil.tupleNil, nil];\n\t\texpect(value).to(beNil());\n\t});\n\n\tqck_it(@\"should unpack multiple values\", ^{\n\t\tRACTupleUnpack(NSString *str, NSNumber *num) = [RACTuple tupleWithObjects:@\"foobar\", @5, nil];\n\n\t\texpect(str).to(equal(@\"foobar\"));\n\t\texpect(num).to(equal(@5));\n\t});\n\n\tqck_it(@\"should fill in missing values with nil\", ^{\n\t\tRACTupleUnpack(NSString *str, NSNumber *num) = [RACTuple tupleWithObjects:@\"foobar\", nil];\n\n\t\texpect(str).to(equal(@\"foobar\"));\n\t\texpect(num).to(beNil());\n\t});\n\n\tqck_it(@\"should skip any values not assigned to\", ^{\n\t\tRACTupleUnpack(NSString *str, NSNumber *num) = [RACTuple tupleWithObjects:@\"foobar\", @5, RACUnit.defaultUnit, nil];\n\n\t\texpect(str).to(equal(@\"foobar\"));\n\t\texpect(num).to(equal(@5));\n\t});\n\n\tqck_it(@\"should keep an unpacked value alive when captured in a block\", ^{\n\t\t__weak id weakPtr = nil;\n\t\tid (^block)(void) = nil;\n\n\t\t@autoreleasepool {\n\t\t\tRACTupleUnpack(NSString *str) = [RACTuple tupleWithObjects:[[NSMutableString alloc] init], nil];\n\n\t\t\tweakPtr = str;\n\t\t\texpect(weakPtr).notTo(beNil());\n\n\t\t\tblock = [^{\n\t\t\t\treturn str;\n\t\t\t} copy];\n\t\t}\n\n\t\texpect(weakPtr).notTo(beNil());\n\t\texpect(block()).to(equal(weakPtr));\n\t});\n});\n\nqck_describe(@\"RACTuplePack\", ^{\n\tqck_it(@\"should pack a single value\", ^{\n\t\tRACTuple *tuple = [RACTuple tupleWithObjects:RACUnit.defaultUnit, nil];\n\t\texpect(RACTuplePack(RACUnit.defaultUnit)).to(equal(tuple));\n\t});\n\t\n\tqck_it(@\"should translate nil\", ^{\n\t\tRACTuple *tuple = [RACTuple tupleWithObjects:RACTupleNil.tupleNil, nil];\n\t\texpect(RACTuplePack(nil)).to(equal(tuple));\n\t});\n\t\n\tqck_it(@\"should pack multiple values\", ^{\n\t\tNSString *string = @\"foobar\";\n\t\tNSNumber *number = @5;\n\t\tRACTuple *tuple = [RACTuple tupleWithObjects:string, number, nil];\n\t\texpect(RACTuplePack(string, number)).to(equal(tuple));\n\t});\n});\n\nqck_describe(@\"-tupleByAddingObject:\", ^{\n\t__block RACTuple *tuple;\n\n\tqck_beforeEach(^{\n\t\ttuple = RACTuplePack(@\"foo\", nil, @\"bar\");\n\t});\n\n\tqck_it(@\"should add a non-nil object\", ^{\n\t\tRACTuple *newTuple = [tuple tupleByAddingObject:@\"buzz\"];\n\t\texpect(@(newTuple.count)).to(equal(@4));\n\t\texpect(newTuple[0]).to(equal(@\"foo\"));\n\t\texpect(newTuple[1]).to(beNil());\n\t\texpect(newTuple[2]).to(equal(@\"bar\"));\n\t\texpect(newTuple[3]).to(equal(@\"buzz\"));\n\t});\n\n\tqck_it(@\"should add nil\", ^{\n\t\tRACTuple *newTuple = [tuple tupleByAddingObject:nil];\n\t\texpect(@(newTuple.count)).to(equal(@4));\n\t\texpect(newTuple[0]).to(equal(@\"foo\"));\n\t\texpect(newTuple[1]).to(beNil());\n\t\texpect(newTuple[2]).to(equal(@\"bar\"));\n\t\texpect(newTuple[3]).to(beNil());\n\t});\n\n\tqck_it(@\"should add NSNull\", ^{\n\t\tRACTuple *newTuple = [tuple tupleByAddingObject:NSNull.null];\n\t\texpect(@(newTuple.count)).to(equal(@4));\n\t\texpect(newTuple[0]).to(equal(@\"foo\"));\n\t\texpect(newTuple[1]).to(beNil());\n\t\texpect(newTuple[2]).to(equal(@\"bar\"));\n\t\texpect(newTuple[3]).to(equal(NSNull.null));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/UIActionSheetRACSupportSpec.m",
    "content": "//\n//  UIActionSheetRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Dave Lee on 2013-06-22.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACSignal.h\"\n#import \"RACSignal+Operations.h\"\n#import \"UIActionSheet+RACSignalSupport.h\"\n\nQuickSpecBegin(UIActionSheetRACSupportSpec)\n\nqck_describe(@\"-rac_buttonClickedSignal\", ^{\n\t__block UIActionSheet *actionSheet;\n\n\tqck_beforeEach(^{\n\t\tactionSheet = [[UIActionSheet alloc] init];\n\t\t[actionSheet addButtonWithTitle:@\"Button 0\"];\n\t\t[actionSheet addButtonWithTitle:@\"Button 1\"];\n\t\texpect(actionSheet).notTo(beNil());\n\t});\n\n\tqck_it(@\"should send the index of the clicked button\", ^{\n\t\t__block NSNumber *index = nil;\n\t\t[actionSheet.rac_buttonClickedSignal subscribeNext:^(NSNumber *i) {\n\t\t\tindex = i;\n\t\t}];\n\n\t\t[actionSheet.delegate actionSheet:actionSheet clickedButtonAtIndex:1];\n\t\texpect(index).to(equal(@1));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/UIAlertViewRACSupportSpec.m",
    "content": "//\n//  UIAlertViewRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Henrik Hodne on 6/16/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import <objc/message.h>\n#import \"RACSignal.h\"\n#import \"UIAlertView+RACSignalSupport.h\"\n\nQuickSpecBegin(UIAlertViewRACSupportSpec)\n\nqck_describe(@\"UIAlertView\", ^{\n\t__block UIAlertView *alertView;\n\n\tqck_beforeEach(^{\n\t\talertView = [[UIAlertView alloc] initWithFrame:CGRectZero];\n\t\texpect(alertView).notTo(beNil());\n\t});\n\n\tqck_it(@\"sends the index of the clicked button to the buttonClickedSignal when a button is clicked\", ^{\n\t\t__block NSInteger index = -1;\n\t\t[alertView.rac_buttonClickedSignal subscribeNext:^(NSNumber *sentIndex) {\n\t\t\tindex = sentIndex.integerValue;\n\t\t}];\n\n\t\t[alertView.delegate alertView:alertView clickedButtonAtIndex:2];\n\t\texpect(@(index)).to(equal(@2));\n\t});\n\n\tqck_it(@\"sends the index of the appropriate button to the willDismissSignal when dismissed programatically\", ^{\n\t\t__block NSInteger index = -1;\n\t\t[alertView.rac_willDismissSignal subscribeNext:^(NSNumber *sentIndex) {\n\t\t\tindex = sentIndex.integerValue;\n\t\t}];\n\n\t\t[alertView.delegate alertView:alertView willDismissWithButtonIndex:2];\n\t\texpect(@(index)).to(equal(@2));\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/UIBarButtonItemRACSupportSpec.m",
    "content": "//\n//  UIBarButtonItemRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Kyle LeNeau on 4/13/13.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACControlCommandExamples.h\"\n\n#import \"UIBarButtonItem+RACCommandSupport.h\"\n#import \"RACCommand.h\"\n#import \"RACDisposable.h\"\n\nQuickSpecBegin(UIBarButtonItemRACSupportSpec)\n\nqck_describe(@\"UIBarButtonItem\", ^{\n\t__block UIBarButtonItem *button;\n\t\n\tqck_beforeEach(^{\n\t\tbutton = [[UIBarButtonItem alloc] init];\n\t\texpect(button).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACControlCommandExamples, ^{\n\t\treturn @{\n\t\t\tRACControlCommandExampleControl: button,\n\t\t\tRACControlCommandExampleActivateBlock: ^(UIBarButtonItem *button) {\n\t\t\t\tNSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[button.target methodSignatureForSelector:button.action]];\n\t\t\t\tinvocation.selector = button.action;\n\n\t\t\t\tid target = button.target;\n\t\t\t\t[invocation setArgument:&target atIndex:2];\n\t\t\t\t[invocation invokeWithTarget:target];\n\t\t\t}\n\t\t};\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/UIButtonRACSupportSpec.m",
    "content": "//\n//  UIButtonRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Ash Furrow on 2013-06-06.\n//  Copyright (c) 2013 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"RACControlCommandExamples.h\"\n#import \"RACTestUIButton.h\"\n\n#import \"UIButton+RACCommandSupport.h\"\n#import \"RACCommand.h\"\n#import \"RACDisposable.h\"\n\nQuickSpecBegin(UIButtonRACSupportSpec)\n\nqck_describe(@\"UIButton\", ^{\n\t__block UIButton *button;\n\t\n\tqck_beforeEach(^{\n\t\tbutton = [RACTestUIButton button];\n\t\texpect(button).notTo(beNil());\n\t});\n\n\tqck_itBehavesLike(RACControlCommandExamples, ^{\n\t\treturn @{\n\t\t\tRACControlCommandExampleControl: button,\n\t\t\tRACControlCommandExampleActivateBlock: ^(UIButton *button) {\n\t\t\t\t#pragma clang diagnostic push\n\t\t\t\t#pragma clang diagnostic ignored \"-Warc-performSelector-leaks\"\n\t\t\t\t[button sendActionsForControlEvents:UIControlEventTouchUpInside];\n\t\t\t\t#pragma clang diagnostic pop\n\t\t\t}\n\t\t};\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Objective-C/UIImagePickerControllerRACSupportSpec.m",
    "content": "//\n//  UIImagePickerControllerRACSupportSpec.m\n//  ReactiveCocoa\n//\n//  Created by Timur Kuchkarov on 17.04.14.\n//  Copyright (c) 2014 GitHub, Inc. All rights reserved.\n//\n\n#import <Quick/Quick.h>\n#import <Nimble/Nimble.h>\n\n#import \"UIImagePickerController+RACSignalSupport.h\"\n#import \"RACSignal.h\"\n\nQuickSpecBegin(UIImagePickerControllerRACSupportSpec)\n\nqck_describe(@\"UIImagePickerController\", ^{\n\t__block UIImagePickerController *imagePicker;\n\t\n\tqck_beforeEach(^{\n\t\timagePicker = [[UIImagePickerController alloc] init];\n\t\texpect(imagePicker).notTo(beNil());\n\t});\n\t\n\tqck_it(@\"sends the user info dictionary after confirmation\", ^{\n\t\t__block NSDictionary *selectedImageUserInfo = nil;\n\t\t[imagePicker.rac_imageSelectedSignal subscribeNext:^(NSDictionary *userInfo) {\n\t\t\tselectedImageUserInfo = userInfo;\n\t\t}];\n\t\t\n\t\tNSDictionary *info = @{\n\t\t\tUIImagePickerControllerMediaType: @\"public.image\",\n\t\t\tUIImagePickerControllerMediaMetadata: @{}\n\t\t};\n\t\t[imagePicker.delegate imagePickerController:imagePicker didFinishPickingMediaWithInfo:info];\n\t\texpect(selectedImageUserInfo).to(equal(info));\n\t});\n\t\n\tqck_it(@\"cancels image picking process\", ^{\n\t\t__block BOOL didSend = NO;\n\t\t__block BOOL didComplete = NO;\n\t\t[imagePicker.rac_imageSelectedSignal subscribeNext:^(NSDictionary *userInfo) {\n\t\t\tdidSend = YES;\n\t\t} completed:^{\n\t\t\tdidComplete = YES;\n\t\t}];\n\t\t\n\t\t[imagePicker.delegate imagePickerControllerDidCancel:imagePicker];\n\t\texpect(@(didSend)).to(beFalsy());\n\t\texpect(@(didComplete)).to(beTruthy());\n\t});\n});\n\nQuickSpecEnd\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/ActionSpec.swift",
    "content": "//\n//  ActionSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-12-11.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass ActionSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"Action\") {\n\t\t\tvar action: Action<Int, String, NSError>!\n\t\t\tvar enabled: MutableProperty<Bool>!\n\n\t\t\tvar executionCount = 0\n\t\t\tvar values: [String] = []\n\t\t\tvar errors: [NSError] = []\n\n\t\t\tvar scheduler: TestScheduler!\n\t\t\tlet testError = NSError(domain: \"ActionSpec\", code: 1, userInfo: nil)\n\n\t\t\tbeforeEach {\n\t\t\t\texecutionCount = 0\n\t\t\t\tvalues = []\n\t\t\t\terrors = []\n\t\t\t\tenabled = MutableProperty(false)\n\n\t\t\t\tscheduler = TestScheduler()\n\t\t\t\taction = Action(enabledIf: enabled) { number in\n\t\t\t\t\treturn SignalProducer { observer, disposable in\n\t\t\t\t\t\texecutionCount += 1\n\n\t\t\t\t\t\tif number % 2 == 0 {\n\t\t\t\t\t\t\tobserver.sendNext(\"\\(number)\")\n\t\t\t\t\t\t\tobserver.sendNext(\"\\(number)\\(number)\")\n\n\t\t\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\t\t\tobserver.sendFailed(testError)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\taction.values.observeNext { values.append($0) }\n\t\t\t\taction.errors.observeNext { errors.append($0) }\n\t\t\t}\n\n\t\t\tit(\"should be disabled and not executing after initialization\") {\n\t\t\t\texpect(action.enabled.value) == false\n\t\t\t\texpect(action.executing.value) == false\n\t\t\t}\n\n\t\t\tit(\"should error if executed while disabled\") {\n\t\t\t\tvar receivedError: ActionError<NSError>?\n\t\t\t\taction.apply(0).startWithFailed {\n\t\t\t\t\treceivedError = $0\n\t\t\t\t}\n\n\t\t\t\texpect(receivedError).notTo(beNil())\n\t\t\t\tif let error = receivedError {\n\t\t\t\t\tlet expectedError = ActionError<NSError>.NotEnabled\n\t\t\t\t\texpect(error == expectedError) == true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should enable and disable based on the given property\") {\n\t\t\t\tenabled.value = true\n\t\t\t\texpect(action.enabled.value) == true\n\t\t\t\texpect(action.executing.value) == false\n\n\t\t\t\tenabled.value = false\n\t\t\t\texpect(action.enabled.value) == false\n\t\t\t\texpect(action.executing.value) == false\n\t\t\t}\n\n\t\t\tdescribe(\"execution\") {\n\t\t\t\tbeforeEach {\n\t\t\t\t\tenabled.value = true\n\t\t\t\t}\n\n\t\t\t\tit(\"should execute successfully\") {\n\t\t\t\t\tvar receivedValue: String?\n\n\t\t\t\t\taction.apply(0)\n\t\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t\t.startWithNext {\n\t\t\t\t\t\t\treceivedValue = $0\n\t\t\t\t\t\t}\n\n\t\t\t\t\texpect(executionCount) == 1\n\t\t\t\t\texpect(action.executing.value) == true\n\t\t\t\t\texpect(action.enabled.value) == false\n\n\t\t\t\t\texpect(receivedValue) == \"00\"\n\t\t\t\t\texpect(values) == [ \"0\", \"00\" ]\n\t\t\t\t\texpect(errors) == []\n\n\t\t\t\t\tscheduler.run()\n\t\t\t\t\texpect(action.executing.value) == false\n\t\t\t\t\texpect(action.enabled.value) == true\n\n\t\t\t\t\texpect(values) == [ \"0\", \"00\" ]\n\t\t\t\t\texpect(errors) == []\n\t\t\t\t}\n\n\t\t\t\tit(\"should execute with an error\") {\n\t\t\t\t\tvar receivedError: ActionError<NSError>?\n\n\t\t\t\t\taction.apply(1).startWithFailed {\n\t\t\t\t\t\treceivedError = $0\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(executionCount) == 1\n\t\t\t\t\texpect(action.executing.value) == true\n\t\t\t\t\texpect(action.enabled.value) == false\n\n\t\t\t\t\tscheduler.run()\n\t\t\t\t\texpect(action.executing.value) == false\n\t\t\t\t\texpect(action.enabled.value) == true\n\n\t\t\t\t\texpect(receivedError).notTo(beNil())\n\t\t\t\t\tif let error = receivedError {\n\t\t\t\t\t\tlet expectedError = ActionError<NSError>.ProducerError(testError)\n\t\t\t\t\t\texpect(error == expectedError) == true\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(values) == []\n\t\t\t\t\texpect(errors) == [ testError ]\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/AtomicSpec.swift",
    "content": "//\n//  AtomicSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-13.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass AtomicSpec: QuickSpec {\n\toverride func spec() {\n\t\tvar atomic: Atomic<Int>!\n\n\t\tbeforeEach {\n\t\t\tatomic = Atomic(1)\n\t\t}\n\n\t\tit(\"should read and write the value directly\") {\n\t\t\texpect(atomic.value) == 1\n\n\t\t\tatomic.value = 2\n\t\t\texpect(atomic.value) == 2\n\t\t}\n\n\t\tit(\"should swap the value atomically\") {\n\t\t\texpect(atomic.swap(2)) == 1\n\t\t\texpect(atomic.value) == 2\n\t\t}\n\n\t\tit(\"should modify the value atomically\") {\n\t\t\texpect(atomic.modify({ $0 + 1 })) == 1\n\t\t\texpect(atomic.value) == 2\n\t\t}\n\n\t\tit(\"should perform an action with the value\") {\n\t\t\tlet result: Bool = atomic.withValue { $0 == 1 }\n\t\t\texpect(result) == true\n\t\t\texpect(atomic.value) == 1\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/BagSpec.swift",
    "content": "//\n//  BagSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-13.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass BagSpec: QuickSpec {\n\toverride func spec() {\n\t\tvar bag = Bag<String>()\n\n\t\tbeforeEach {\n\t\t\tbag = Bag()\n\t\t}\n\n\t\tit(\"should insert values\") {\n\t\t\tbag.insert(\"foo\")\n\t\t\tbag.insert(\"bar\")\n\t\t\tbag.insert(\"buzz\")\n\n\t\t\texpect(bag).to(contain(\"foo\"))\n\t\t\texpect(bag).to(contain(\"bar\"))\n\t\t\texpect(bag).to(contain(\"buzz\"))\n\t\t\texpect(bag).toNot(contain(\"fuzz\"))\n\t\t\texpect(bag).toNot(contain(\"foobar\"))\n\t\t}\n\n\t\tit(\"should remove values given the token from insertion\") {\n\t\t\tlet a = bag.insert(\"foo\")\n\t\t\tlet b = bag.insert(\"bar\")\n\t\t\tlet c = bag.insert(\"buzz\")\n\n\t\t\tbag.removeValueForToken(b)\n\t\t\texpect(bag).to(contain(\"foo\"))\n\t\t\texpect(bag).toNot(contain(\"bar\"))\n\t\t\texpect(bag).to(contain(\"buzz\"))\n\n\t\t\tbag.removeValueForToken(a)\n\t\t\texpect(bag).toNot(contain(\"foo\"))\n\t\t\texpect(bag).toNot(contain(\"bar\"))\n\t\t\texpect(bag).to(contain(\"buzz\"))\n\n\t\t\tbag.removeValueForToken(c)\n\t\t\texpect(bag).toNot(contain(\"foo\"))\n\t\t\texpect(bag).toNot(contain(\"bar\"))\n\t\t\texpect(bag).toNot(contain(\"buzz\"))\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/CocoaActionSpec.swift",
    "content": "import Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass CocoaActionSpec: QuickSpec {\n\toverride func spec() {\n\t\tvar action: Action<Int, Int, NoError>!\n\n\t\tbeforeEach {\n\t\t\taction = Action { value in SignalProducer(value: value + 1) }\n\t\t\texpect(action.enabled.value) == true\n\n\t\t\texpect(action.unsafeCocoaAction.enabled).toEventually(beTruthy())\n\t\t}\n\n\t\t#if os(OSX)\n\t\t\tit(\"should be compatible with AppKit\") {\n\t\t\t\tlet control = NSControl(frame: NSZeroRect)\n\t\t\t\tcontrol.target = action.unsafeCocoaAction\n\t\t\t\tcontrol.action = CocoaAction.selector\n\t\t\t\tcontrol.performClick(nil)\n\t\t\t}\n\t\t#elseif os(iOS)\n\t\t\tit(\"should be compatible with UIKit\") {\n\t\t\t\tlet control = UIControl(frame: CGRectZero)\n\t\t\t\tcontrol.addTarget(action.unsafeCocoaAction, action: CocoaAction.selector, forControlEvents: UIControlEvents.TouchDown)\n\t\t\t\tcontrol.sendActionsForControlEvents(UIControlEvents.TouchDown)\n\t\t\t}\n\t\t#endif\n\n\t\tit(\"should generate KVO notifications for enabled\") {\n\t\t\tvar values: [Bool] = []\n\n\t\t\tlet cocoaAction = action.unsafeCocoaAction\n\t\t\tcocoaAction\n\t\t\t\t.rac_valuesForKeyPath(\"enabled\", observer: nil)\n\t\t\t\t.toSignalProducer()\n\t\t\t\t.map { $0! as! Bool }\n\t\t\t\t.start(Observer(next: { values.append($0) }))\n\n\t\t\texpect(values) == [ true ]\n\n\t\t\tlet result = action.apply(0).first()\n\t\t\texpect(result?.value) == 1\n\t\t\texpect(values).toEventually(equal([ true, false, true ]))\n\t\t\t\n\t\t\t_ = cocoaAction\n\t\t}\n\n\t\tit(\"should generate KVO notifications for executing\") {\n\t\t\tvar values: [Bool] = []\n\n\t\t\tlet cocoaAction = action.unsafeCocoaAction\n\t\t\tcocoaAction\n\t\t\t\t.rac_valuesForKeyPath(\"executing\", observer: nil)\n\t\t\t\t.toSignalProducer()\n\t\t\t\t.map { $0! as! Bool }\n\t\t\t\t.start(Observer(next: { values.append($0) }))\n\n\t\t\texpect(values) == [ false ]\n\n\t\t\tlet result = action.apply(0).first()\n\t\t\texpect(result?.value) == 1\n\t\t\texpect(values).toEventually(equal([ false, true, false ]))\n\t\t\t\n\t\t\t_ = cocoaAction\n\t\t}\n\t\t\n\t\tcontext(\"lifetime\") {\n\t\t\tit(\"unsafeCocoaAction should not create a retain cycle\") {\n\t\t\t\tweak var weakAction: Action<Int, Int, NoError>?\n\t\t\t\tvar action: Action<Int, Int, NoError>? = Action { _ in\n\t\t\t\t\treturn SignalProducer(value: 42)\n\t\t\t\t}\n\t\t\t\tweakAction = action\n\t\t\t\texpect(weakAction).notTo(beNil())\n\t\t\t\t\n\t\t\t\t_ = action!.unsafeCocoaAction\n\t\t\t\taction = nil\n\t\t\t\texpect(weakAction).to(beNil())\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/DisposableSpec.swift",
    "content": "//\n//  DisposableSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-13.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass DisposableSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"SimpleDisposable\") {\n\t\t\tit(\"should set disposed to true\") {\n\t\t\t\tlet disposable = SimpleDisposable()\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"ActionDisposable\") {\n\t\t\tit(\"should run the given action upon disposal\") {\n\t\t\t\tvar didDispose = false\n\t\t\t\tlet disposable = ActionDisposable {\n\t\t\t\t\tdidDispose = true\n\t\t\t\t}\n\n\t\t\t\texpect(didDispose) == false\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(didDispose) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"CompositeDisposable\") {\n\t\t\tvar disposable = CompositeDisposable()\n\n\t\t\tbeforeEach {\n\t\t\t\tdisposable = CompositeDisposable()\n\t\t\t}\n\n\t\t\tit(\"should ignore the addition of nil\") {\n\t\t\t\tdisposable.addDisposable(nil)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables\") {\n\t\t\t\tlet simpleDisposable = SimpleDisposable()\n\t\t\t\tdisposable.addDisposable(simpleDisposable)\n\n\t\t\t\tvar didDispose = false\n\t\t\t\tdisposable.addDisposable {\n\t\t\t\t\tdidDispose = true\n\t\t\t\t}\n\n\t\t\t\texpect(simpleDisposable.disposed) == false\n\t\t\t\texpect(didDispose) == false\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(simpleDisposable.disposed) == true\n\t\t\t\texpect(didDispose) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should not dispose of removed disposables\") {\n\t\t\t\tlet simpleDisposable = SimpleDisposable()\n\t\t\t\tlet handle = disposable += simpleDisposable\n\n\t\t\t\t// We should be allowed to call this any number of times.\n\t\t\t\thandle.remove()\n\t\t\t\thandle.remove()\n\t\t\t\texpect(simpleDisposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(simpleDisposable.disposed) == false\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"ScopedDisposable\") {\n\t\t\tit(\"should dispose of the inner disposable upon deinitialization\") {\n\t\t\t\tlet simpleDisposable = SimpleDisposable()\n\n\t\t\t\tfunc runScoped() {\n\t\t\t\t\tlet scopedDisposable = ScopedDisposable(simpleDisposable)\n\t\t\t\t\texpect(simpleDisposable.disposed) == false\n\t\t\t\t\texpect(scopedDisposable.disposed) == false\n\t\t\t\t}\n\n\t\t\t\texpect(simpleDisposable.disposed) == false\n\n\t\t\t\trunScoped()\n\t\t\t\texpect(simpleDisposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SerialDisposable\") {\n\t\t\tvar disposable: SerialDisposable!\n\n\t\t\tbeforeEach {\n\t\t\t\tdisposable = SerialDisposable()\n\t\t\t}\n\n\t\t\tit(\"should dispose of the inner disposable\") {\n\t\t\t\tlet simpleDisposable = SimpleDisposable()\n\t\t\t\tdisposable.innerDisposable = simpleDisposable\n\n\t\t\t\texpect(disposable.innerDisposable).notTo(beNil())\n\t\t\t\texpect(simpleDisposable.disposed) == false\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(disposable.innerDisposable).to(beNil())\n\t\t\t\texpect(simpleDisposable.disposed) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of the previous disposable when swapping innerDisposable\") {\n\t\t\t\tlet oldDisposable = SimpleDisposable()\n\t\t\t\tlet newDisposable = SimpleDisposable()\n\n\t\t\t\tdisposable.innerDisposable = oldDisposable\n\t\t\t\texpect(oldDisposable.disposed) == false\n\t\t\t\texpect(newDisposable.disposed) == false\n\n\t\t\t\tdisposable.innerDisposable = newDisposable\n\t\t\t\texpect(oldDisposable.disposed) == true\n\t\t\t\texpect(newDisposable.disposed) == false\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\tdisposable.innerDisposable = nil\n\t\t\t\texpect(newDisposable.disposed) == true\n\t\t\t\texpect(disposable.disposed) == false\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/FlattenSpec.swift",
    "content": "//\n//  FlattenSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Oleg Shnitko on 1/22/16.\n//  Copyright © 2016 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nprivate extension SignalType {\n\ttypealias Pipe = (signal: Signal<Value, Error>, observer: Observer<Value, Error>)\n}\n\nprivate typealias Pipe = Signal<SignalProducer<Int, TestError>, TestError>.Pipe\n\nclass FlattenSpec: QuickSpec {\n\toverride func spec() {\n\t\tfunc describeSignalFlattenDisposal(flattenStrategy: FlattenStrategy, name: String) {\n\t\t\tdescribe(name) {\n\t\t\t\tvar pipe: Pipe!\n\t\t\t\tvar disposable: Disposable?\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\tpipe = Signal.pipe()\n\t\t\t\t\tdisposable = pipe.signal\n\t\t\t\t\t\t.flatten(flattenStrategy)\n\t\t\t\t\t\t.observe { _ in }\n\t\t\t\t}\n\n\t\t\t\tafterEach {\n\t\t\t\t\tdisposable?.dispose()\n\t\t\t\t}\n\n\t\t\t\tcontext(\"disposal\") {\n\t\t\t\t\tvar disposed = false\n\n\t\t\t\t\tbeforeEach {\n\t\t\t\t\t\tdisposed = false\n\t\t\t\t\t\tpipe.observer.sendNext(SignalProducer<Int, TestError> { _, disposable in\n\t\t\t\t\t\t\tdisposable += ActionDisposable {\n\t\t\t\t\t\t\t\tdisposed = true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should dispose inner signals when outer signal interrupted\") {\n\t\t\t\t\t\tpipe.observer.sendInterrupted()\n\t\t\t\t\t\texpect(disposed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should dispose inner signals when outer signal failed\") {\n\t\t\t\t\t\tpipe.observer.sendFailed(.Default)\n\t\t\t\t\t\texpect(disposed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should not dispose inner signals when outer signal completed\") {\n\t\t\t\t\t\tpipe.observer.sendCompleted()\n\t\t\t\t\t\texpect(disposed) == false\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tcontext(\"Signal\") {\n\t\t\tdescribeSignalFlattenDisposal(.Latest, name: \"switchToLatest\")\n\t\t\tdescribeSignalFlattenDisposal(.Merge, name: \"merge\")\n\t\t\tdescribeSignalFlattenDisposal(.Concat, name: \"concat\")\n\t\t}\n\n\t\tfunc describeSignalProducerFlattenDisposal(flattenStrategy: FlattenStrategy, name: String) {\n\t\t\tdescribe(name) {\n\t\t\t\tit(\"disposes original signal when result signal interrupted\") {\n\t\t\t\t\tvar disposed = false\n\n\t\t\t\t\tlet disposable = SignalProducer<SignalProducer<(), NoError>, NoError> { _, disposable in\n\t\t\t\t\t\tdisposable += ActionDisposable {\n\t\t\t\t\t\t\tdisposed = true\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\t.flatten(flattenStrategy)\n\t\t\t\t\t\t.start()\n\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\texpect(disposed) == true\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tcontext(\"SignalProducer\") {\n\t\t\tdescribeSignalProducerFlattenDisposal(.Latest, name: \"switchToLatest\")\n\t\t\tdescribeSignalProducerFlattenDisposal(.Merge, name: \"merge\")\n\t\t\tdescribeSignalProducerFlattenDisposal(.Concat, name: \"concat\")\n\t\t}\n\t\t\n\t\tdescribe(\"Signal.flatten()\") {\n\t\t\tit(\"works with TestError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with SequenceType as a value\") {\n\t\t\t\tlet (signal, innerObserver) = Signal<[Int], NoError>.pipe()\n\t\t\t\tlet sequence = [1, 2, 3]\n\t\t\t\tvar observedValues = [Int]()\n\t\t\t\t\n\t\t\t\tsignal\n\t\t\t\t\t.flatten(.Concat)\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobservedValues.append(value)\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\tinnerObserver.sendNext(sequence)\n\t\t\t\texpect(observedValues) == sequence\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"SignalProducer.flatten()\") {\n\t\t\tit(\"works with TestError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Inner, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(inner)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with SequenceType as a value\") {\n\t\t\t\tlet sequence = [1, 2, 3]\n\t\t\t\tvar observedValues = [Int]()\n\t\t\t\t\n\t\t\t\tlet producer = SignalProducer<[Int], NoError>(value: sequence)\n\t\t\t\tproducer\n\t\t\t\t\t.flatten(.Latest)\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobservedValues.append(value)\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(observedValues) == sequence\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"Signal.flatMap()\") {\n\t\t\tit(\"works with TestError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = Signal<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = Signal<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"SignalProducer.flatMap()\") {\n\t\t\tit(\"works with TestError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError Signal\") {\n\t\t\t\ttypealias Inner = Signal<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a TestError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, TestError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with NoError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, NoError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t\t\n\t\t\tit(\"works with TestError and a NoError SignalProducer\") {\n\t\t\t\ttypealias Inner = SignalProducer<Int, NoError>\n\t\t\t\ttypealias Outer = SignalProducer<Int, TestError>\n\t\t\t\t\n\t\t\t\tlet (inner, innerObserver) = Inner.pipe()\n\t\t\t\tlet (outer, outerObserver) = Outer.pipe()\n\t\t\t\t\n\t\t\t\tvar observed: Int? = nil\n\t\t\t\touter\n\t\t\t\t\t.flatMap(.Latest) { _ in inner }\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tobserved = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\touterObserver.sendNext(4)\n\t\t\t\tinnerObserver.sendNext(4)\n\t\t\t\texpect(observed) == 4\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"Signal.merge()\") {\n\t\t\tit(\"should emit values from all signals\") {\n\t\t\t\tlet (signal1, observer1) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = Signal.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.observeNext { lastValue = $0 }\n\t\t\t\t\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver2.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should not stop when one signal completes\") {\n\t\t\t\tlet (signal1, observer1) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = Signal.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.observeNext { lastValue = $0 }\n\t\t\t\t\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver1.sendCompleted()\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver2.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should complete when all signals complete\") {\n\t\t\t\tlet (signal1, observer1) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = Signal.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar completed = false\n\t\t\t\tmergedSignals.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver1.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver2.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"SignalProducer.merge()\") {\n\t\t\tit(\"should emit values from all producers\") {\n\t\t\t\tlet (signal1, observer1) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = SignalProducer.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.startWithNext { lastValue = $0 }\n\t\t\t\t\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver2.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should not stop when one producer completes\") {\n\t\t\t\tlet (signal1, observer1) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = SignalProducer.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.startWithNext { lastValue = $0 }\n\t\t\t\t\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver1.sendCompleted()\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver2.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should complete when all producers complete\") {\n\t\t\t\tlet (signal1, observer1) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (signal2, observer2) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = SignalProducer.merge([signal1, signal2])\n\t\t\t\t\n\t\t\t\tvar completed = false\n\t\t\t\tmergedSignals.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver1.sendNext(1)\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver1.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver2.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SignalProducer.prefix()\") {\n\t\t\tit(\"should emit initial value\") {\n\t\t\t\tlet (signal, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tlet mergedSignals = signal.prefix(value: 0)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.startWithNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue) == 0\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\t\t\t}\n\n\t\t\tit(\"should emit initial value\") {\n\t\t\t\tlet (signal, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = signal.prefix(SignalProducer(value: 0))\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.startWithNext { lastValue = $0 }\n\t\t\t\t\n\t\t\t\texpect(lastValue) == 0\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"SignalProducer.concat(value:)\") {\n\t\t\tit(\"should emit final value\") {\n\t\t\t\tlet (signal, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tlet mergedSignals = signal.concat(value: 4)\n\t\t\t\t\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tmergedSignals.startWithNext { lastValue = $0 }\n\t\t\t\t\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(lastValue) == 4\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/FoundationExtensionsSpec.swift",
    "content": "//\n//  FoundationExtensionsSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Neil Pankey on 5/22/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass FoundationExtensionsSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"NSNotificationCenter.rac_notifications\") {\n\t\t\tlet center = NSNotificationCenter.defaultCenter()\n\n\t\t\tit(\"should send notifications on the producer\") {\n\t\t\t\tlet producer = center.rac_notifications(\"rac_notifications_test\")\n\n\t\t\t\tvar notif: NSNotification? = nil\n\t\t\t\tlet disposable = producer.startWithNext { notif = $0 }\n\n\t\t\t\tcenter.postNotificationName(\"some_other_notification\", object: nil)\n\t\t\t\texpect(notif).to(beNil())\n\n\t\t\t\tcenter.postNotificationName(\"rac_notifications_test\", object: nil)\n\t\t\t\texpect(notif?.name) == \"rac_notifications_test\"\n\n\t\t\t\tnotif = nil\n\t\t\t\tdisposable.dispose()\n\n\t\t\t\tcenter.postNotificationName(\"rac_notifications_test\", object: nil)\n\t\t\t\texpect(notif).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should send Interrupted when the observed object is freed\") {\n\t\t\t\tvar observedObject: AnyObject? = NSObject()\n\t\t\t\tlet producer = center.rac_notifications(object: observedObject)\n\t\t\t\tobservedObject = nil\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tlet disposable = producer.startWithInterrupted {\n\t\t\t\t\tinterrupted = true\n\t\t\t\t}\n\t\t\t\texpect(interrupted) == true\n\n\t\t\t\tdisposable.dispose()\n\t\t\t}\n\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/ObjectiveCBridgingSpec.swift",
    "content": "//\n//  ObjectiveCBridgingSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2015-01-23.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\nimport XCTest\n\nclass ObjectiveCBridgingSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"RACScheduler\") {\n\t\t\tvar originalScheduler: RACTestScheduler!\n\t\t\tvar scheduler: DateSchedulerType!\n\n\t\t\tbeforeEach {\n\t\t\t\toriginalScheduler = RACTestScheduler()\n\t\t\t\tscheduler = originalScheduler as DateSchedulerType\n\t\t\t}\n\n\t\t\tit(\"gives current date\") {\n\t\t\t\texpect(scheduler.currentDate).to(beCloseTo(NSDate()))\n\t\t\t}\n\n\t\t\tit(\"schedules actions\") {\n\t\t\t\tvar actionRan: Bool = false\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tactionRan = true\n\t\t\t\t}\n\n\t\t\t\texpect(actionRan) == false\n\t\t\t\toriginalScheduler.step()\n\t\t\t\texpect(actionRan) == true\n\t\t\t}\n\n\t\t\tit(\"does not invoke action if disposed\") {\n\t\t\t\tvar actionRan: Bool = false\n\n\t\t\t\tlet disposable: Disposable? = scheduler.schedule {\n\t\t\t\t\tactionRan = true\n\t\t\t\t}\n\n\t\t\t\texpect(actionRan) == false\n\t\t\t\tdisposable!.dispose()\n\t\t\t\toriginalScheduler.step()\n\t\t\t\texpect(actionRan) == false\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"RACSignal.toSignalProducer\") {\n\t\t\tit(\"should subscribe once per start()\") {\n\t\t\t\tvar subscriptions = 0\n\n\t\t\t\tlet racSignal = RACSignal.createSignal { subscriber in\n\t\t\t\t\tsubscriber.sendNext(subscriptions)\n\t\t\t\t\tsubscriber.sendCompleted()\n\n\t\t\t\t\tsubscriptions += 1\n\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\n\t\t\t\tlet producer = racSignal.toSignalProducer().map { $0 as! Int }\n\n\t\t\t\texpect((producer.single())?.value) == 0\n\t\t\t\texpect((producer.single())?.value) == 1\n\t\t\t\texpect((producer.single())?.value) == 2\n\t\t\t}\n\n\t\t\tit(\"should forward errors\")\t{\n\t\t\t\tlet error = TestError.Default as NSError\n\n\t\t\t\tlet racSignal = RACSignal.error(error)\n\t\t\t\tlet producer = racSignal.toSignalProducer()\n\t\t\t\tlet result = producer.last()\n\n\t\t\t\texpect(result?.error) == error\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"toRACSignal\") {\n\t\t\tlet key = \"TestKey\"\n\t\t\tlet userInfo: [String: String] = [key: \"TestValue\"]\n\t\t\tlet testNSError = NSError(domain: \"TestDomain\", code: 1, userInfo: userInfo)\n\t\t\tdescribe(\"on a Signal\") {\n\t\t\t\tit(\"should forward events\") {\n\t\t\t\t\tlet (signal, observer) = Signal<NSNumber, NoError>.pipe()\n\t\t\t\t\tlet racSignal = signal.toRACSignal()\n\n\t\t\t\t\tvar lastValue: NSNumber?\n\t\t\t\t\tvar didComplete = false\n\n\t\t\t\t\tracSignal.subscribeNext({ number in\n\t\t\t\t\t\tlastValue = number as? NSNumber\n\t\t\t\t\t}, completed: {\n\t\t\t\t\t\tdidComplete = true\n\t\t\t\t\t})\n\n\t\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\t\tfor number in [1, 2, 3] {\n\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\texpect(lastValue) == number\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(didComplete) == false\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\texpect(didComplete) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"should convert errors to NSError\") {\n\t\t\t\t\tlet (signal, observer) = Signal<AnyObject, TestError>.pipe()\n\t\t\t\t\tlet racSignal = signal.toRACSignal()\n\n\t\t\t\t\tlet expectedError = TestError.Error2\n\t\t\t\t\tvar error: NSError?\n\n\t\t\t\t\tracSignal.subscribeError {\n\t\t\t\t\t\terror = $0\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\n\t\t\t\t\tobserver.sendFailed(expectedError)\n\t\t\t\t\texpect(error) == expectedError as NSError\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should maintain userInfo on NSError\") {\n\t\t\t\t\tlet (signal, observer) = Signal<AnyObject, NSError>.pipe()\n\t\t\t\t\tlet racSignal = signal.toRACSignal()\n\t\t\t\t\t\n\t\t\t\t\tvar error: NSError?\n\t\t\t\t\t\n\t\t\t\t\tracSignal.subscribeError {\n\t\t\t\t\t\terror = $0\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendFailed(testNSError)\n\t\t\t\t\t\n\t\t\t\t\tlet userInfoValue = error?.userInfo[key] as? String\n\t\t\t\t\texpect(userInfoValue) == userInfo[key]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"on a SignalProducer\") {\n\t\t\t\tit(\"should start once per subscription\") {\n\t\t\t\t\tvar subscriptions = 0\n\n\t\t\t\t\tlet producer = SignalProducer<NSNumber, NoError>.attempt {\n\t\t\t\t\t\tdefer {\n\t\t\t\t\t\t\tsubscriptions += 1\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn .Success(subscriptions)\n\t\t\t\t\t}\n\t\t\t\t\tlet racSignal = producer.toRACSignal()\n\n\t\t\t\t\texpect(racSignal.first() as? NSNumber) == 0\n\t\t\t\t\texpect(racSignal.first() as? NSNumber) == 1\n\t\t\t\t\texpect(racSignal.first() as? NSNumber) == 2\n\t\t\t\t}\n\n\t\t\t\tit(\"should convert errors to NSError\") {\n\t\t\t\t\tlet producer = SignalProducer<AnyObject, TestError>(error: .Error1)\n\t\t\t\t\tlet racSignal = producer.toRACSignal().materialize()\n\n\t\t\t\t\tlet event = racSignal.first() as? RACEvent\n\t\t\t\t\texpect(event?.error) == TestError.Error1 as NSError\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should maintain userInfo on NSError\") {\n\t\t\t\t\tlet producer = SignalProducer<AnyObject, NSError>(error: testNSError)\n\t\t\t\t\tlet racSignal = producer.toRACSignal().materialize()\n\t\t\t\t\t\n\t\t\t\t\tlet event = racSignal.first() as? RACEvent\n\t\t\t\t\tlet userInfoValue = event?.error.userInfo[key] as? String\n\t\t\t\t\texpect(userInfoValue) == userInfo[key]\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"RACCommand.toAction\") {\n\t\t\tvar command: RACCommand!\n\t\t\tvar results: [Int] = []\n\n\t\t\tvar enabledSubject: RACSubject!\n\t\t\tvar enabled = false\n\n\t\t\tvar action: Action<AnyObject?, AnyObject?, NSError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tenabledSubject = RACSubject()\n\t\t\t\tresults = []\n\n\t\t\t\tcommand = RACCommand(enabled: enabledSubject) { (input: AnyObject?) -> RACSignal! in\n\t\t\t\t\tlet inputNumber = input as! Int\n\t\t\t\t\treturn RACSignal.`return`(inputNumber + 1)\n\t\t\t\t}\n\n\t\t\t\texpect(command).notTo(beNil())\n\n\t\t\t\tcommand.enabled.subscribeNext { enabled = $0 as! Bool }\n\t\t\t\texpect(enabled) == true\n\n\t\t\t\tcommand.executionSignals.flatten().subscribeNext { results.append($0 as! Int) }\n\t\t\t\texpect(results) == []\n\n\t\t\t\taction = command.toAction()\n\t\t\t}\n\n\t\t\tit(\"should reflect the enabledness of the command\") {\n\t\t\t\texpect(action.enabled.value) == true\n\n\t\t\t\tenabledSubject.sendNext(false)\n\t\t\t\texpect(enabled).toEventually(beFalsy())\n\t\t\t\texpect(action.enabled.value) == false\n\t\t\t}\n\n\t\t\tit(\"should execute the command once per start()\") {\n\t\t\t\tlet producer = action.apply(0)\n\t\t\t\texpect(results) == []\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(results).toEventually(equal([ 1 ]))\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(results).toEventually(equal([ 1, 1 ]))\n\n\t\t\t\tlet otherProducer = action.apply(2)\n\t\t\t\texpect(results) == [ 1, 1 ]\n\n\t\t\t\totherProducer.start()\n\t\t\t\texpect(results).toEventually(equal([ 1, 1, 3 ]))\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(results).toEventually(equal([ 1, 1, 3, 1 ]))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"toRACCommand\") {\n\t\t\tvar action: Action<AnyObject?, NSString, TestError>!\n\t\t\tvar results: [NSString] = []\n\n\t\t\tvar enabledProperty: MutableProperty<Bool>!\n\n\t\t\tvar command: RACCommand!\n\t\t\tvar enabled = false\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tresults = []\n\t\t\t\tenabledProperty = MutableProperty(true)\n\n\t\t\t\taction = Action(enabledIf: enabledProperty) { input in\n\t\t\t\t\tlet inputNumber = input as! Int\n\t\t\t\t\treturn SignalProducer(value: \"\\(inputNumber + 1)\")\n\t\t\t\t}\n\n\t\t\t\texpect(action.enabled.value) == true\n\n\t\t\t\taction.values.observeNext { results.append($0) }\n\n\t\t\t\tcommand = toRACCommand(action)\n\t\t\t\texpect(command).notTo(beNil())\n\n\t\t\t\tcommand.enabled.subscribeNext { enabled = $0 as! Bool }\n\t\t\t\texpect(enabled) == true\n\t\t\t}\n\n\t\t\tit(\"should reflect the enabledness of the action\") {\n\t\t\t\tenabledProperty.value = false\n\t\t\t\texpect(enabled).toEventually(beFalsy())\n\n\t\t\t\tenabledProperty.value = true\n\t\t\t\texpect(enabled).toEventually(beTruthy())\n\t\t\t}\n\n\t\t\tit(\"should apply and start a signal once per execution\") {\n\t\t\t\tlet signal = command.execute(0)\n\n\t\t\t\tdo {\n\t\t\t\t\ttry signal.asynchronouslyWaitUntilCompleted()\n\t\t\t\t\texpect(results) == [ \"1\" ]\n\n\t\t\t\t\ttry signal.asynchronouslyWaitUntilCompleted()\n\t\t\t\t\texpect(results) == [ \"1\" ]\n\n\t\t\t\t\ttry command.execute(2).asynchronouslyWaitUntilCompleted()\n\t\t\t\t\texpect(results) == [ \"1\", \"3\" ]\n\t\t\t\t} catch {\n\t\t\t\t\tXCTFail(\"Failed to wait for completion\")\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/PropertySpec.swift",
    "content": "//\n//  PropertySpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2015-01-23.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nprivate let initialPropertyValue = \"InitialValue\"\nprivate let subsequentPropertyValue = \"SubsequentValue\"\nprivate let finalPropertyValue = \"FinalValue\"\n\nclass PropertySpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"ConstantProperty\") {\n\t\t\tit(\"should have the value given at initialization\") {\n\t\t\t\tlet constantProperty = ConstantProperty(initialPropertyValue)\n\n\t\t\t\texpect(constantProperty.value) == initialPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should yield a signal that interrupts observers without emitting any value.\") {\n\t\t\t\tlet constantProperty = ConstantProperty(initialPropertyValue)\n\n\t\t\t\tvar signalInterrupted = false\n\t\t\t\tvar hasUnexpectedEventsEmitted = false\n\n\t\t\t\tconstantProperty.signal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\tsignalInterrupted = true\n\t\t\t\t\tcase .Next, .Failed, .Completed:\n\t\t\t\t\t\thasUnexpectedEventsEmitted = true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(signalInterrupted) == true\n\t\t\t\texpect(hasUnexpectedEventsEmitted) == false\n\t\t\t}\n\n\t\t\tit(\"should yield a producer that sends the current value then completes\") {\n\t\t\t\tlet constantProperty = ConstantProperty(initialPropertyValue)\n\n\t\t\t\tvar sentValue: String?\n\t\t\t\tvar signalCompleted = false\n\n\t\t\t\tconstantProperty.producer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tsentValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tsignalCompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(sentValue) == initialPropertyValue\n\t\t\t\texpect(signalCompleted) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"MutableProperty\") {\n\t\t\tit(\"should have the value given at initialization\") {\n\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\texpect(mutableProperty.value) == initialPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should yield a producer that sends the current value then all changes\") {\n\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\tvar sentValue: String?\n\n\t\t\t\tmutableProperty.producer.startWithNext { sentValue = $0 }\n\n\t\t\t\texpect(sentValue) == initialPropertyValue\n\n\t\t\t\tmutableProperty.value = subsequentPropertyValue\n\t\t\t\texpect(sentValue) == subsequentPropertyValue\n\n\t\t\t\tmutableProperty.value = finalPropertyValue\n\t\t\t\texpect(sentValue) == finalPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should yield a producer that sends the current value then all changes, even if the value actually remains unchanged\") {\n\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\tvar count = 0\n\n\t\t\t\tmutableProperty.producer.startWithNext { _ in count = count + 1 }\n\n\t\t\t\texpect(count) == 1\n\n\t\t\t\tmutableProperty.value = initialPropertyValue\n\t\t\t\texpect(count) == 2\n\n\t\t\t\tmutableProperty.value = initialPropertyValue\n\t\t\t\texpect(count) == 3\n\t\t\t}\n\n\t\t\tit(\"should yield a signal that emits subsequent changes to the value\") {\n\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\tvar sentValue: String?\n\n\t\t\t\tmutableProperty.signal.observeNext { sentValue = $0 }\n\n\t\t\t\texpect(sentValue).to(beNil())\n\n\t\t\t\tmutableProperty.value = subsequentPropertyValue\n\t\t\t\texpect(sentValue) == subsequentPropertyValue\n\n\t\t\t\tmutableProperty.value = finalPropertyValue\n\t\t\t\texpect(sentValue) == finalPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should yield a signal that emits subsequent changes to the value, even if the value actually remains unchanged\") {\n\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\tvar count = 0\n\n\t\t\t\tmutableProperty.signal.observeNext { _ in count = count + 1 }\n\n\t\t\t\texpect(count) == 0\n\n\t\t\t\tmutableProperty.value = initialPropertyValue\n\t\t\t\texpect(count) == 1\n\n\t\t\t\tmutableProperty.value = initialPropertyValue\n\t\t\t\texpect(count) == 2\n\t\t\t}\n\n\t\t\tit(\"should complete its producer when deallocated\") {\n\t\t\t\tvar mutableProperty: MutableProperty? = MutableProperty(initialPropertyValue)\n\t\t\t\tvar producerCompleted = false\n\n\t\t\t\tmutableProperty!.producer.startWithCompleted { producerCompleted = true }\n\n\t\t\t\tmutableProperty = nil\n\t\t\t\texpect(producerCompleted) == true\n\t\t\t}\n\n\t\t\tit(\"should complete its signal when deallocated\") {\n\t\t\t\tvar mutableProperty: MutableProperty? = MutableProperty(initialPropertyValue)\n\t\t\t\tvar signalCompleted = false\n\n\t\t\t\tmutableProperty!.signal.observeCompleted { signalCompleted = true }\n\n\t\t\t\tmutableProperty = nil\n\t\t\t\texpect(signalCompleted) == true\n\t\t\t}\n\n\t\t\tit(\"should yield a producer which emits the latest value and complete even if the property is deallocated\") {\n\t\t\t\tvar mutableProperty: MutableProperty? = MutableProperty(initialPropertyValue)\n\t\t\t\tlet producer = mutableProperty!.producer\n\n\t\t\t\tvar producerCompleted = false\n\t\t\t\tvar hasUnanticipatedEvent = false\n\t\t\t\tvar latestValue = mutableProperty?.value\n\n\t\t\t\tmutableProperty!.value = subsequentPropertyValue\n\t\t\t\tmutableProperty = nil\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlatestValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tproducerCompleted = true\n\t\t\t\t\tcase .Interrupted, .Failed:\n\t\t\t\t\t\thasUnanticipatedEvent = true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(hasUnanticipatedEvent) == false\n\t\t\t\texpect(producerCompleted) == true\n\t\t\t\texpect(latestValue) == subsequentPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should modify the value atomically\") {\n\t\t\t\tlet property = MutableProperty(initialPropertyValue)\n\n\t\t\t\texpect(property.modify({ _ in subsequentPropertyValue })) == initialPropertyValue\n\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should modify the value atomically and subsquently send out a Next event with the new value\") {\n\t\t\t\tlet property = MutableProperty(initialPropertyValue)\n\t\t\t\tvar value: String?\n\n\t\t\t\tproperty.producer.startWithNext {\n\t\t\t\t\tvalue = $0\n\t\t\t\t}\n\n\t\t\t\texpect(value) == initialPropertyValue\n\t\t\t\texpect(property.modify({ _ in subsequentPropertyValue })) == initialPropertyValue\n\n\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t\texpect(value) == subsequentPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should swap the value atomically\") {\n\t\t\t\tlet property = MutableProperty(initialPropertyValue)\n\n\t\t\t\texpect(property.swap(subsequentPropertyValue)) == initialPropertyValue\n\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should swap the value atomically and subsquently send out a Next event with the new value\") {\n\t\t\t\tlet property = MutableProperty(initialPropertyValue)\n\t\t\t\tvar value: String?\n\n\t\t\t\tproperty.producer.startWithNext {\n\t\t\t\t\tvalue = $0\n\t\t\t\t}\n\n\t\t\t\texpect(value) == initialPropertyValue\n\t\t\t\texpect(property.swap(subsequentPropertyValue)) == initialPropertyValue\n\n\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t\texpect(value) == subsequentPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should perform an action with the value\") {\n\t\t\t\tlet property = MutableProperty(initialPropertyValue)\n\n\t\t\t\tlet result: Bool = property.withValue { $0.isEmpty }\n\n\t\t\t\texpect(result) == false\n\t\t\t\texpect(property.value) == initialPropertyValue\n\t\t\t}\n\n\t\t\tit(\"should not deadlock on recursive value access\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet property = MutableProperty(0)\n\t\t\t\tvar value: Int?\n\n\t\t\t\tproperty <~ producer\n\t\t\t\tproperty.producer.startWithNext { _ in\n\t\t\t\t\tvalue = property.value\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(10)\n\t\t\t\texpect(value) == 10\n\t\t\t}\n\n\t\t\tit(\"should not deadlock on recursive value access with a closure\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet property = MutableProperty(0)\n\t\t\t\tvar value: Int?\n\n\t\t\t\tproperty <~ producer\n\t\t\t\tproperty.producer.startWithNext { _ in\n\t\t\t\t\tvalue = property.withValue { $0 + 1 }\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(10)\n\t\t\t\texpect(value) == 11\n\t\t\t}\n\n\t\t\tit(\"should not deadlock on recursive observation\") {\n\t\t\t\tlet property = MutableProperty(0)\n\n\t\t\t\tvar value: Int?\n\t\t\t\tproperty.producer.startWithNext { _ in\n\t\t\t\t\tproperty.producer.startWithNext { x in value = x }\n\t\t\t\t}\n\n\t\t\t\texpect(value) == 0\n\n\t\t\t\tproperty.value = 1\n\t\t\t\texpect(value) == 1\n\t\t\t}\n\n\t\t\tit(\"should not deadlock on recursive ABA observation\") {\n\t\t\t\tlet propertyA = MutableProperty(0)\n\t\t\t\tlet propertyB = MutableProperty(0)\n\n\t\t\t\tvar value: Int?\n\t\t\t\tpropertyA.producer.startWithNext { _ in\n\t\t\t\t\tpropertyB.producer.startWithNext { _ in\n\t\t\t\t\t\tpropertyA.producer.startWithNext { x in value = x }\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(value) == 0\n\n\t\t\t\tpropertyA.value = 1\n\t\t\t\texpect(value) == 1\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"AnyProperty\") {\n\t\t\tdescribe(\"from a PropertyType\") {\n\t\t\t\tit(\"should pass through behaviors of the input property\") {\n\t\t\t\t\tlet constantProperty = ConstantProperty(initialPropertyValue)\n\t\t\t\t\tlet property = AnyProperty(constantProperty)\n\n\t\t\t\t\tvar sentValue: String?\n\t\t\t\t\tvar signalSentValue: String?\n\t\t\t\t\tvar producerCompleted = false\n\t\t\t\t\tvar signalInterrupted = false\n\n\t\t\t\t\tproperty.producer.start { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\tsentValue = value\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tproducerCompleted = true\n\t\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tproperty.signal.observe { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\tsignalSentValue = value\n\t\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\t\tsignalInterrupted = true\n\t\t\t\t\t\tcase .Failed, .Completed:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(sentValue) == initialPropertyValue\n\t\t\t\t\texpect(signalSentValue).to(beNil())\n\t\t\t\t\texpect(producerCompleted) == true\n\t\t\t\t\texpect(signalInterrupted) == true\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"from a value and SignalProducer\") {\n\t\t\t\tit(\"should initially take on the supplied value\") {\n\t\t\t\t\tlet property = AnyProperty(\n\t\t\t\t\t\tinitialValue: initialPropertyValue,\n\t\t\t\t\t\tproducer: SignalProducer.never)\n\t\t\t\t\t\n\t\t\t\t\texpect(property.value) == initialPropertyValue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should take on each value sent on the producer\") {\n\t\t\t\t\tlet property = AnyProperty(\n\t\t\t\t\t\tinitialValue: initialPropertyValue,\n\t\t\t\t\t\tproducer: SignalProducer(value: subsequentPropertyValue))\n\t\t\t\t\t\n\t\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"from a value and Signal\") {\n\t\t\t\tit(\"should initially take on the supplied value, then values sent on the signal\") {\n\t\t\t\t\tlet (signal, observer) = Signal<String, NoError>.pipe()\n\n\t\t\t\t\tlet property = AnyProperty(\n\t\t\t\t\t\tinitialValue: initialPropertyValue,\n\t\t\t\t\t\tsignal: signal)\n\t\t\t\t\t\n\t\t\t\t\texpect(property.value) == initialPropertyValue\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendNext(subsequentPropertyValue)\n\t\t\t\t\t\n\t\t\t\t\texpect(property.value) == subsequentPropertyValue\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"DynamicProperty\") {\n\t\t\tvar object: ObservableObject!\n\t\t\tvar property: DynamicProperty!\n\n\t\t\tlet propertyValue: () -> Int? = {\n\t\t\t\tif let value: AnyObject = property?.value {\n\t\t\t\t\treturn value as? Int\n\t\t\t\t} else {\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tbeforeEach {\n\t\t\t\tobject = ObservableObject()\n\t\t\t\texpect(object.rac_value) == 0\n\n\t\t\t\tproperty = DynamicProperty(object: object, keyPath: \"rac_value\")\n\t\t\t}\n\n\t\t\tafterEach {\n\t\t\t\tobject = nil\n\t\t\t}\n\n\t\t\tit(\"should read the underlying object\") {\n\t\t\t\texpect(propertyValue()) == 0\n\n\t\t\t\tobject.rac_value = 1\n\t\t\t\texpect(propertyValue()) == 1\n\t\t\t}\n\n\t\t\tit(\"should write the underlying object\") {\n\t\t\t\tproperty.value = 1\n\t\t\t\texpect(object.rac_value) == 1\n\t\t\t\texpect(propertyValue()) == 1\n\t\t\t}\n\n\t\t\tit(\"should yield a producer that sends the current value and then the changes for the key path of the underlying object\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproperty.producer.startWithNext { value in\n\t\t\t\t\texpect(value).notTo(beNil())\n\t\t\t\t\tvalues.append(value as! Int)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tproperty.value = 1\n\t\t\t\texpect(values) == [ 0, 1 ]\n\n\t\t\t\tobject.rac_value = 2\n\t\t\t\texpect(values) == [ 0, 1, 2 ]\n\t\t\t}\n\n\t\t\tit(\"should yield a producer that sends the current value and then the changes for the key path of the underlying object, even if the value actually remains unchanged\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproperty.producer.startWithNext { value in\n\t\t\t\t\texpect(value).notTo(beNil())\n\t\t\t\t\tvalues.append(value as! Int)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tproperty.value = 0\n\t\t\t\texpect(values) == [ 0, 0 ]\n\n\t\t\t\tobject.rac_value = 0\n\t\t\t\texpect(values) == [ 0, 0, 0 ]\n\t\t\t}\n\n\t\t\tit(\"should yield a signal that emits subsequent values for the key path of the underlying object\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproperty.signal.observeNext { value in\n\t\t\t\t\texpect(value).notTo(beNil())\n\t\t\t\t\tvalues.append(value as! Int)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tproperty.value = 1\n\t\t\t\texpect(values) == [ 1 ]\n\n\t\t\t\tobject.rac_value = 2\n\t\t\t\texpect(values) == [ 1, 2 ]\n\t\t\t}\n\n\t\t\tit(\"should yield a signal that emits subsequent values for the key path of the underlying object, even if the value actually remains unchanged\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproperty.signal.observeNext { value in\n\t\t\t\t\texpect(value).notTo(beNil())\n\t\t\t\t\tvalues.append(value as! Int)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tproperty.value = 0\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tobject.rac_value = 0\n\t\t\t\texpect(values) == [ 0, 0 ]\n\t\t\t}\n\n\t\t\tit(\"should have a completed producer when the underlying object deallocates\") {\n\t\t\t\tvar completed = false\n\n\t\t\t\tproperty = {\n\t\t\t\t\t// Use a closure so this object has a shorter lifetime.\n\t\t\t\t\tlet object = ObservableObject()\n\t\t\t\t\tlet property = DynamicProperty(object: object, keyPath: \"rac_value\")\n\n\t\t\t\t\tproperty.producer.startWithCompleted {\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\texpect(property.value).notTo(beNil())\n\t\t\t\t\treturn property\n\t\t\t\t}()\n\n\t\t\t\texpect(completed).toEventually(beTruthy())\n\t\t\t\texpect(property.value).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should have a completed signal when the underlying object deallocates\") {\n\t\t\t\tvar completed = false\n\n\t\t\t\tproperty = {\n\t\t\t\t\t// Use a closure so this object has a shorter lifetime.\n\t\t\t\t\tlet object = ObservableObject()\n\t\t\t\t\tlet property = DynamicProperty(object: object, keyPath: \"rac_value\")\n\n\t\t\t\t\tproperty.signal.observeCompleted {\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\texpect(property.value).notTo(beNil())\n\t\t\t\t\treturn property\n\t\t\t\t}()\n\n\t\t\t\texpect(completed).toEventually(beTruthy())\n\t\t\t\texpect(property.value).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should retain property while DynamicProperty's underlying object is retained\"){\n\t\t\t\tweak var dynamicProperty: DynamicProperty? = property\n\t\t\t\t\n\t\t\t\tproperty = nil\n\t\t\t\texpect(dynamicProperty).toNot(beNil())\n\t\t\t\t\n\t\t\t\tobject = nil\n\t\t\t\texpect(dynamicProperty).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"map\") {\n\t\t\tit(\"should transform the current value and all subsequent values\") {\n\t\t\t\tlet property = MutableProperty(1)\n\t\t\t\tlet mappedProperty = property\n\t\t\t\t\t.map { $0 + 1 }\n\t\t\t\t\t.map { $0 + 2 }\n\n\t\t\t\texpect(mappedProperty.value) == 4\n\n\t\t\t\tproperty.value = 2\n\t\t\t\texpect(mappedProperty.value) == 5\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"binding\") {\n\t\t\tdescribe(\"from a Signal\") {\n\t\t\t\tit(\"should update the property with values sent from the signal\") {\n\t\t\t\t\tlet (signal, observer) = Signal<String, NoError>.pipe()\n\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tmutableProperty <~ signal\n\n\t\t\t\t\t// Verify that the binding hasn't changed the property value:\n\t\t\t\t\texpect(mutableProperty.value) == initialPropertyValue\n\n\t\t\t\t\tobserver.sendNext(subsequentPropertyValue)\n\t\t\t\t\texpect(mutableProperty.value) == subsequentPropertyValue\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when disposed\") {\n\t\t\t\t\tlet (signal, observer) = Signal<String, NoError>.pipe()\n\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tlet bindingDisposable = mutableProperty <~ signal\n\t\t\t\t\tbindingDisposable.dispose()\n\n\t\t\t\t\tobserver.sendNext(subsequentPropertyValue)\n\t\t\t\t\texpect(mutableProperty.value) == initialPropertyValue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should tear down the binding when bound signal is completed\") {\n\t\t\t\t\tlet (signal, observer) = Signal<String, NoError>.pipe()\n\t\t\t\t\t\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\t\t\n\t\t\t\t\tlet bindingDisposable = mutableProperty <~ signal\n\t\t\t\t\t\n\t\t\t\t\texpect(bindingDisposable.disposed) == false\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\texpect(bindingDisposable.disposed) == true\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should tear down the binding when the property deallocates\") {\n\t\t\t\t\tlet (signal, _) = Signal<String, NoError>.pipe()\n\n\t\t\t\t\tvar mutableProperty: MutableProperty<String>? = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tlet bindingDisposable = mutableProperty! <~ signal\n\n\t\t\t\t\tmutableProperty = nil\n\t\t\t\t\texpect(bindingDisposable.disposed) == true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"from a SignalProducer\") {\n\t\t\t\tit(\"should start a signal and update the property with its values\") {\n\t\t\t\t\tlet signalValues = [initialPropertyValue, subsequentPropertyValue]\n\t\t\t\t\tlet signalProducer = SignalProducer<String, NoError>(values: signalValues)\n\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tmutableProperty <~ signalProducer\n\n\t\t\t\t\texpect(mutableProperty.value) == signalValues.last!\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when disposed\") {\n\t\t\t\t\tlet (signalProducer, observer) = SignalProducer<String, NoError>.pipe()\n\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\t\tlet disposable = mutableProperty <~ signalProducer\n\n\t\t\t\t\tdisposable.dispose()\n\n\t\t\t\t\tobserver.sendNext(subsequentPropertyValue)\n\t\t\t\t\texpect(mutableProperty.value) == initialPropertyValue\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when bound signal is completed\") {\n\t\t\t\t\tlet (signalProducer, observer) = SignalProducer<String, NoError>.pipe()\n\n\t\t\t\t\tlet mutableProperty = MutableProperty(initialPropertyValue)\n\t\t\t\t\tlet disposable = mutableProperty <~ signalProducer\n\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\t\texpect(disposable.disposed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when the property deallocates\") {\n\t\t\t\t\tlet signalValues = [initialPropertyValue, subsequentPropertyValue]\n\t\t\t\t\tlet signalProducer = SignalProducer<String, NoError>(values: signalValues)\n\n\t\t\t\t\tvar mutableProperty: MutableProperty<String>? = MutableProperty(initialPropertyValue)\n\t\t\t\t\tlet disposable = mutableProperty! <~ signalProducer\n\n\t\t\t\t\tmutableProperty = nil\n\t\t\t\t\texpect(disposable.disposed) == true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"from another property\") {\n\t\t\t\tit(\"should take the source property's current value\") {\n\t\t\t\t\tlet sourceProperty = ConstantProperty(initialPropertyValue)\n\n\t\t\t\t\tlet destinationProperty = MutableProperty(\"\")\n\n\t\t\t\t\tdestinationProperty <~ sourceProperty.producer\n\n\t\t\t\t\texpect(destinationProperty.value) == initialPropertyValue\n\t\t\t\t}\n\n\t\t\t\tit(\"should update with changes to the source property's value\") {\n\t\t\t\t\tlet sourceProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tlet destinationProperty = MutableProperty(\"\")\n\n\t\t\t\t\tdestinationProperty <~ sourceProperty.producer\n\n\t\t\t\t\tsourceProperty.value = subsequentPropertyValue\n\t\t\t\t\texpect(destinationProperty.value) == subsequentPropertyValue\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when disposed\") {\n\t\t\t\t\tlet sourceProperty = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tlet destinationProperty = MutableProperty(\"\")\n\n\t\t\t\t\tlet bindingDisposable = destinationProperty <~ sourceProperty.producer\n\t\t\t\t\tbindingDisposable.dispose()\n\n\t\t\t\t\tsourceProperty.value = subsequentPropertyValue\n\n\t\t\t\t\texpect(destinationProperty.value) == initialPropertyValue\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when the source property deallocates\") {\n\t\t\t\t\tvar sourceProperty: MutableProperty<String>? = MutableProperty(initialPropertyValue)\n\n\t\t\t\t\tlet destinationProperty = MutableProperty(\"\")\n\t\t\t\t\tdestinationProperty <~ sourceProperty!.producer\n\n\t\t\t\t\tsourceProperty = nil\n\t\t\t\t\t// TODO: Assert binding was torn down?\n\t\t\t\t}\n\n\t\t\t\tit(\"should tear down the binding when the destination property deallocates\") {\n\t\t\t\t\tlet sourceProperty = MutableProperty(initialPropertyValue)\n\t\t\t\t\tvar destinationProperty: MutableProperty<String>? = MutableProperty(\"\")\n\n\t\t\t\t\tlet bindingDisposable = destinationProperty! <~ sourceProperty.producer\n\t\t\t\t\tdestinationProperty = nil\n\n\t\t\t\t\texpect(bindingDisposable.disposed) == true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"to a dynamic property\") {\n\t\t\t\tvar object: ObservableObject!\n\t\t\t\tvar property: DynamicProperty!\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\tobject = ObservableObject()\n\t\t\t\t\texpect(object.rac_value) == 0\n\n\t\t\t\t\tproperty = DynamicProperty(object: object, keyPath: \"rac_value\")\n\t\t\t\t}\n\n\t\t\t\tafterEach {\n\t\t\t\t\tobject = nil\n\t\t\t\t}\n\n\t\t\t\tit(\"should bridge values sent on a signal to Objective-C\") {\n\t\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\t\tproperty <~ signal\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\texpect(object.rac_value) == 1\n\t\t\t\t}\n\n\t\t\t\tit(\"should bridge values sent on a signal producer to Objective-C\") {\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>(value: 1)\n\t\t\t\t\tproperty <~ producer\n\t\t\t\t\texpect(object.rac_value) == 1\n\t\t\t\t}\n\n\t\t\t\tit(\"should bridge values from a source property to Objective-C\") {\n\t\t\t\t\tlet source = MutableProperty(1)\n\t\t\t\t\tproperty <~ source\n\t\t\t\t\texpect(object.rac_value) == 1\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate class ObservableObject: NSObject {\n\tdynamic var rac_value: Int = 0\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SchedulerSpec.swift",
    "content": "//\n//  SchedulerSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2014-07-13.\n//  Copyright (c) 2014 GitHub. All rights reserved.\n//\n\nimport Foundation\nimport Nimble\nimport Quick\n@testable\nimport ReactiveCocoa\n\nclass SchedulerSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"ImmediateScheduler\") {\n\t\t\tit(\"should run enqueued actions immediately\") {\n\t\t\t\tvar didRun = false\n\t\t\t\tImmediateScheduler().schedule {\n\t\t\t\t\tdidRun = true\n\t\t\t\t}\n\n\t\t\t\texpect(didRun) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"UIScheduler\") {\n\t\t\tfunc dispatchSyncInBackground(action: () -> Void) {\n\t\t\t\tlet group = dispatch_group_create()\n\t\t\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), action)\n\t\t\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER)\n\t\t\t}\n\n\t\t\tit(\"should run actions immediately when on the main thread\") {\n\t\t\t\tlet scheduler = UIScheduler()\n\t\t\t\tvar values: [Int] = []\n\t\t\t\texpect(NSThread.isMainThread()) == true\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tvalues.append(0)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tvalues.append(1)\n\t\t\t\t}\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tvalues.append(2)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [ 0, 1, 2 ]\n\t\t\t}\n\n\t\t\tit(\"should enqueue actions scheduled from the background\") {\n\t\t\t\tlet scheduler = UIScheduler()\n\t\t\t\tvar values: [Int] = []\n\n\t\t\t\tdispatchSyncInBackground {\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\t\tvalues.append(0)\n\t\t\t\t\t}\n\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\t\t\t\texpect(values).toEventually(equal([ 0 ]))\n\n\t\t\t\tdispatchSyncInBackground {\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\t\tvalues.append(1)\n\t\t\t\t\t}\n\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\t\tvalues.append(2)\n\t\t\t\t\t}\n\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [ 0 ]\n\t\t\t\texpect(values).toEventually(equal([ 0, 1, 2 ]))\n\t\t\t}\n\n\t\t\tit(\"should run actions enqueued from the main thread after those from the background\") {\n\t\t\t\tlet scheduler = UIScheduler()\n\t\t\t\tvar values: [Int] = []\n\n\t\t\t\tdispatchSyncInBackground {\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\t\tvalues.append(0)\n\t\t\t\t\t}\n\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\tvalues.append(1)\n\t\t\t\t}\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\tvalues.append(2)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\t\t\t\texpect(values).toEventually(equal([ 0, 1, 2 ]))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"QueueScheduler\") {\n\t\t\tit(\"should run enqueued actions on a global queue\") {\n\t\t\t\tvar didRun = false\n\t\t\t\tlet scheduler: QueueScheduler\n\t\t\t\tif #available(OSX 10.10, *) {\n\t\t\t\t\tscheduler = QueueScheduler(qos: QOS_CLASS_DEFAULT)\n\t\t\t\t} else {\n\t\t\t\t\tscheduler = QueueScheduler(queue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0))\n\t\t\t\t}\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tdidRun = true\n\t\t\t\t\texpect(NSThread.isMainThread()) == false\n\t\t\t\t}\n\n\t\t\t\texpect{didRun}.toEventually(beTruthy())\n\t\t\t}\n\n\t\t\tdescribe(\"on a given queue\") {\n\t\t\t\tvar scheduler: QueueScheduler!\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\tif #available(OSX 10.10, *) {\n\t\t\t\t\t\tscheduler = QueueScheduler(qos: QOS_CLASS_DEFAULT)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tscheduler = QueueScheduler(queue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0))\n\t\t\t\t\t}\n\t\t\t\t\tdispatch_suspend(scheduler.queue)\n\t\t\t\t}\n\n\t\t\t\tit(\"should run enqueued actions serially on the given queue\") {\n\t\t\t\t\tvar value = 0\n\n\t\t\t\t\tfor _ in 0..<5 {\n\t\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\t\texpect(NSThread.isMainThread()) == false\n\t\t\t\t\t\t\tvalue += 1\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(value) == 0\n\n\t\t\t\t\tdispatch_resume(scheduler.queue)\n\t\t\t\t\texpect{value}.toEventually(equal(5))\n\t\t\t\t}\n\n\t\t\t\tit(\"should run enqueued actions after a given date\") {\n\t\t\t\t\tvar didRun = false\n\t\t\t\t\tscheduler.scheduleAfter(NSDate()) {\n\t\t\t\t\t\tdidRun = true\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == false\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(didRun) == false\n\n\t\t\t\t\tdispatch_resume(scheduler.queue)\n\t\t\t\t\texpect{didRun}.toEventually(beTruthy())\n\t\t\t\t}\n\n\t\t\t\tit(\"should repeatedly run actions after a given date\") {\n\t\t\t\t\tlet disposable = SerialDisposable()\n\n\t\t\t\t\tvar count = 0\n\t\t\t\t\tlet timesToRun = 3\n\n\t\t\t\t\tdisposable.innerDisposable = scheduler.scheduleAfter(NSDate(), repeatingEvery: 0.01, withLeeway: 0) {\n\t\t\t\t\t\texpect(NSThread.isMainThread()) == false\n\n\t\t\t\t\t\tcount += 1\n\n\t\t\t\t\t\tif count == timesToRun {\n\t\t\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(count) == 0\n\n\t\t\t\t\tdispatch_resume(scheduler.queue)\n\t\t\t\t\texpect{count}.toEventually(equal(timesToRun))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"TestScheduler\") {\n\t\t\tvar scheduler: TestScheduler!\n\t\t\tvar startDate: NSDate!\n\n\t\t\t// How much dates are allowed to differ when they should be \"equal.\"\n\t\t\tlet dateComparisonDelta = 0.00001\n\n\t\t\tbeforeEach {\n\t\t\t\tstartDate = NSDate()\n\n\t\t\t\tscheduler = TestScheduler(startDate: startDate)\n\t\t\t\texpect(scheduler.currentDate) == startDate\n\t\t\t}\n\n\t\t\tit(\"should run immediately enqueued actions upon advancement\") {\n\t\t\t\tvar string = \"\"\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tstring += \"foo\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t}\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tstring += \"bar\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t}\n\n\t\t\t\texpect(string) == \"\"\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(scheduler.currentDate).to(beCloseTo(startDate))\n\n\t\t\t\texpect(string) == \"foobar\"\n\t\t\t}\n\n\t\t\tit(\"should run actions when advanced past the target date\") {\n\t\t\t\tvar string = \"\"\n\n\t\t\t\tscheduler.scheduleAfter(15) { [weak scheduler] in\n\t\t\t\t\tstring += \"bar\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\texpect(scheduler?.currentDate).to(beCloseTo(startDate.dateByAddingTimeInterval(15), within: dateComparisonDelta))\n\t\t\t\t}\n\n\t\t\t\tscheduler.scheduleAfter(5) { [weak scheduler] in\n\t\t\t\t\tstring += \"foo\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t\texpect(scheduler?.currentDate).to(beCloseTo(startDate.dateByAddingTimeInterval(5), within: dateComparisonDelta))\n\t\t\t\t}\n\n\t\t\t\texpect(string) == \"\"\n\n\t\t\t\tscheduler.advanceByInterval(10)\n\t\t\t\texpect(scheduler.currentDate).to(beCloseTo(startDate.dateByAddingTimeInterval(10), within: dateComparisonDelta))\n\t\t\t\texpect(string) == \"foo\"\n\n\t\t\t\tscheduler.advanceByInterval(10)\n\t\t\t\texpect(scheduler.currentDate).to(beCloseTo(startDate.dateByAddingTimeInterval(20), within: dateComparisonDelta))\n\t\t\t\texpect(string) == \"foobar\"\n\t\t\t}\n\n\t\t\tit(\"should run all remaining actions in order\") {\n\t\t\t\tvar string = \"\"\n\n\t\t\t\tscheduler.scheduleAfter(15) {\n\t\t\t\t\tstring += \"bar\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t}\n\n\t\t\t\tscheduler.scheduleAfter(5) {\n\t\t\t\t\tstring += \"foo\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t}\n\n\t\t\t\tscheduler.schedule {\n\t\t\t\t\tstring += \"fuzzbuzz\"\n\t\t\t\t\texpect(NSThread.isMainThread()) == true\n\t\t\t\t}\n\n\t\t\t\texpect(string) == \"\"\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(scheduler.currentDate) == NSDate.distantFuture()\n\t\t\t\texpect(string) == \"fuzzbuzzfoobar\"\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SignalLifetimeSpec.swift",
    "content": "//\n//  SignalLifetimeSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Vadim Yelagin on 2015-12-13.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass SignalLifetimeSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"init\") {\n\t\t\tvar testScheduler: TestScheduler!\n\n\t\t\tbeforeEach {\n\t\t\t\ttestScheduler = TestScheduler()\n\t\t\t}\n\n\t\t\tit(\"should deallocate\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = Signal { _ in nil }\n\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate even if it has an observer\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = {\n\t\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { _ in nil }\n\t\t\t\t\treturn signal\n\t\t\t\t}()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate even if it has an observer with retained disposable\") {\n\t\t\t\tvar disposable: Disposable? = nil\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = {\n\t\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { _ in nil }\n\t\t\t\t\tdisposable = signal.observe(Observer())\n\t\t\t\t\treturn signal\n\t\t\t\t}()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t\tdisposable?.dispose()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after erroring\") {\n\t\t\t\tweak var signal: Signal<AnyObject, TestError>? = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\n\t\t\t\tvar errored = false\n\n\t\t\t\tsignal?.observeFailed { _ in errored = true }\n\n\t\t\t\texpect(errored) == false\n\t\t\t\texpect(signal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\n\t\t\t\texpect(errored) == true\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after completing\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal?.observeCompleted { completed = true }\n\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(signal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after interrupting\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t\t}\n\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tsignal?.observeInterrupted {\n\t\t\t\t\tinterrupted = true\n\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == false\n\t\t\t\texpect(signal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\n\t\t\t\texpect(interrupted) == true\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"Signal.pipe\") {\n\t\t\tit(\"should deallocate\") {\n\t\t\t\tweak var signal = Signal<(), NoError>.pipe().0\n\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after erroring\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tweak var weakSignal: Signal<(), TestError>?\n\n\t\t\t\t// Use an inner closure to help ARC deallocate things as we\n\t\t\t\t// expect.\n\t\t\t\tlet test = {\n\t\t\t\t\tlet (signal, observer) = Signal<(), TestError>.pipe()\n\t\t\t\t\tweakSignal = signal\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttest()\n\n\t\t\t\texpect(weakSignal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(weakSignal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after completing\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tweak var weakSignal: Signal<(), TestError>?\n\n\t\t\t\t// Use an inner closure to help ARC deallocate things as we\n\t\t\t\t// expect.\n\t\t\t\tlet test = {\n\t\t\t\t\tlet (signal, observer) = Signal<(), TestError>.pipe()\n\t\t\t\t\tweakSignal = signal\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttest()\n\n\t\t\t\texpect(weakSignal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(weakSignal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate after interrupting\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tweak var weakSignal: Signal<(), NoError>?\n\n\t\t\t\tlet test = {\n\t\t\t\t\tlet (signal, observer) = Signal<(), NoError>.pipe()\n\t\t\t\t\tweakSignal = signal\n\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttest()\n\t\t\t\texpect(weakSignal).toNot(beNil())\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(weakSignal).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"testTransform\") {\n\t\t\tit(\"should deallocate\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = Signal { _ in nil }.testTransform()\n\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate even if it has an observer\") {\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = {\n\t\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { _ in nil }.testTransform()\n\t\t\t\t\tsignal.observe(Observer())\n\t\t\t\t\treturn signal\n\t\t\t\t}()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should deallocate even if it has an observer with retained disposable\") {\n\t\t\t\tvar disposable: Disposable? = nil\n\t\t\t\tweak var signal: Signal<AnyObject, NoError>? = {\n\t\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { _ in nil }.testTransform()\n\t\t\t\t\tdisposable = signal.observe(Observer())\n\t\t\t\t\treturn signal\n\t\t\t\t}()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t\tdisposable?.dispose()\n\t\t\t\texpect(signal).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"observe\") {\n\t\t\tvar signal: Signal<Int, TestError>!\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\tvar token: NSObject? = nil\n\t\t\tweak var weakToken: NSObject?\n\n\t\t\tfunc expectTokenNotDeallocated() {\n\t\t\t\texpect(weakToken).toNot(beNil())\n\t\t\t}\n\n\t\t\tfunc expectTokenDeallocated() {\n\t\t\t\texpect(weakToken).to(beNil())\n\t\t\t}\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (signalTemp, observerTemp) = Signal<Int, TestError>.pipe()\n\t\t\t\tsignal = signalTemp\n\t\t\t\tobserver = observerTemp\n\n\t\t\t\ttoken = NSObject()\n\t\t\t\tweakToken = token\n\n\t\t\t\tsignal.observe { [token = token] _ in\n\t\t\t\t\t_ = token!.description\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should deallocate observe handler when signal completes\") {\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\ttoken = nil\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpectTokenDeallocated()\n\t\t\t}\n\n\t\t\tit(\"should deallocate observe handler when signal fails\") {\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\ttoken = nil\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpectTokenNotDeallocated()\n\n\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\texpectTokenDeallocated()\n\t\t\t}\n\t\t}\n\t}\n}\n\nprivate extension SignalType {\n\tfunc testTransform() -> Signal<Value, Error> {\n\t\treturn Signal { observer in\n\t\t\treturn self.observe(observer.action)\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SignalProducerLiftingSpec.swift",
    "content": "//\n//  SignalProducerLiftingSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Neil Pankey on 6/14/15.\n//  Copyright © 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass SignalProducerLiftingSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"map\") {\n\t\t\tit(\"should transform the values of the signal\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet mappedProducer = producer.map { String($0 + 1) }\n\n\t\t\t\tvar lastValue: String?\n\n\t\t\t\tmappedProducer.startWithNext {\n\t\t\t\t\tlastValue = $0\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == \"1\"\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == \"2\"\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"mapError\") {\n\t\t\tit(\"should transform the errors of the signal\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producerError = NSError(domain: \"com.reactivecocoa.errordomain\", code: 100, userInfo: nil)\n\t\t\t\tvar error: NSError?\n\n\t\t\t\tproducer\n\t\t\t\t\t.mapError { _ in producerError }\n\t\t\t\t\t.startWithFailed { error = $0 }\n\n\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\texpect(error) == producerError\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"filter\") {\n\t\t\tit(\"should omit values from the producer\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet mappedProducer = producer.filter { $0 % 2 == 0 }\n\n\t\t\t\tvar lastValue: Int?\n\n\t\t\t\tmappedProducer.startWithNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 0\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"ignoreNil\") {\n\t\t\tit(\"should forward only non-nil values\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int?, NoError>.pipe()\n\t\t\t\tlet mappedProducer = producer.ignoreNil()\n\n\t\t\t\tvar lastValue: Int?\n\n\t\t\t\tmappedProducer.startWithNext { lastValue = $0 }\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(nil)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(nil)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"scan\") {\n\t\t\tit(\"should incrementally accumulate a value\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<String, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.scan(\"\", +)\n\n\t\t\t\tvar lastValue: String?\n\n\t\t\t\tproducer.startWithNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(lastValue) == \"a\"\n\n\t\t\t\tobserver.sendNext(\"bb\")\n\t\t\t\texpect(lastValue) == \"abb\"\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"reduce\") {\n\t\t\tit(\"should accumulate one value\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.reduce(1, +)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\texpect(completed) == false\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\n\t\t\t\texpect(lastValue) == 4\n\t\t\t}\n\n\t\t\tit(\"should send the initial value if none are received\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.reduce(1, +)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"skip\") {\n\t\t\tit(\"should skip initial values\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.skip(1)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tproducer.startWithNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\n\t\t\tit(\"should not skip any values when 0\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.skip(0)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tproducer.startWithNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"skipRepeats\") {\n\t\t\tit(\"should skip duplicate Equatable values\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Bool, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.skipRepeats()\n\n\t\t\t\tvar values: [Bool] = []\n\t\t\t\tproducer.startWithNext { values.append($0) }\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true ]\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true ]\n\n\t\t\t\tobserver.sendNext(false)\n\t\t\t\texpect(values) == [ true, false ]\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true, false, true ]\n\t\t\t}\n\n\t\t\tit(\"should skip values according to a predicate\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<String, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.skipRepeats { $0.characters.count == $1.characters.count }\n\n\t\t\t\tvar values: [String] = []\n\t\t\t\tproducer.startWithNext { values.append($0) }\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(values) == [ \"a\" ]\n\n\t\t\t\tobserver.sendNext(\"b\")\n\t\t\t\texpect(values) == [ \"a\" ]\n\n\t\t\t\tobserver.sendNext(\"cc\")\n\t\t\t\texpect(values) == [ \"a\", \"cc\" ]\n\n\t\t\t\tobserver.sendNext(\"d\")\n\t\t\t\texpect(values) == [ \"a\", \"cc\", \"d\" ]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"skipWhile\") {\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\n\t\t\tvar lastValue: Int?\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseProducer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tproducer = baseProducer.skipWhile { $0 < 2 }\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tlastValue = nil\n\n\t\t\t\tproducer.startWithNext { lastValue = $0 }\n\t\t\t}\n\n\t\t\tit(\"should skip while the predicate is true\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\n\t\t\tit(\"should not skip any values when the predicate starts false\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"skipUntil\") {\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar triggerObserver: Signal<(), NoError>.Observer!\n\t\t\t\n\t\t\tvar lastValue: Int? = nil\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseProducer, baseIncomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (triggerProducer, incomingTriggerObserver) = SignalProducer<(), NoError>.pipe()\n\n\t\t\t\tproducer = baseProducer.skipUntil(triggerProducer)\n\t\t\t\tobserver = baseIncomingObserver\n\t\t\t\ttriggerObserver = incomingTriggerObserver\n\t\t\t\t\n\t\t\t\tlastValue = nil\n\t\t\t\t\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Failed, .Completed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should skip values until the trigger fires\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\ttriggerObserver.sendNext(())\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should skip values until the trigger completes\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\ttriggerObserver.sendCompleted()\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"take\") {\n\t\t\tit(\"should take initial values\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = baseProducer.take(2)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should complete immediately after taking given number of values\") {\n\t\t\t\tlet numbers = [ 1, 2, 4, 4, 5 ]\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\t\n\t\t\t\tlet producer: SignalProducer<Int, NoError> = SignalProducer { observer, _ in\n\t\t\t\t\t// workaround `Class declaration cannot close over value 'observer' defined in outer scope`\n\t\t\t\t\tlet observer = observer\n\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in numbers {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tproducer\n\t\t\t\t\t.take(numbers.count)\n\t\t\t\t\t.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should interrupt when 0\") {\n\t\t\t\tlet numbers = [ 1, 2, 4, 4, 5 ]\n\t\t\t\tlet testScheduler = TestScheduler()\n\n\t\t\t\tlet producer: SignalProducer<Int, NoError> = SignalProducer { observer, _ in\n\t\t\t\t\t// workaround `Class declaration cannot close over value 'observer' defined in outer scope`\n\t\t\t\t\tlet observer = observer\n\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in numbers {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar interrupted = false\n\n\t\t\t\tproducer\n\t\t\t\t.take(0)\n\t\t\t\t.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\tresult.append(number)\n\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\tcase .Failed, .Completed:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == true\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"collect\") {\n\t\t\tit(\"should collect all values\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = original.collect()\n\t\t\t\tlet expectedResult = [ 1, 2, 3 ]\n\n\t\t\t\tvar result: [Int]?\n\n\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\texpect(result).to(beNil())\n\t\t\t\t\tresult = value\n\t\t\t\t}\n\n\t\t\t\tfor number in expectedResult {\n\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t}\n\n\t\t\t\texpect(result).to(beNil())\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == expectedResult\n\t\t\t}\n\n\t\t\tit(\"should complete with an empty array if there are no values\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet producer = original.collect()\n\n\t\t\t\tvar result: [Int]?\n\n\t\t\t\tproducer.startWithNext { result = $0 }\n\n\t\t\t\texpect(result).to(beNil())\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == []\n\t\t\t}\n\n\t\t\tit(\"should forward errors\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producer = original.collect()\n\n\t\t\t\tvar error: TestError?\n\n\t\t\t\tproducer.startWithFailed { error = $0 }\n\n\t\t\t\texpect(error).to(beNil())\n\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\n\t\t\tit(\"should collect an exact count of values\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tlet producer = original.collect(count: 3)\n\n\t\t\t\tvar observedValues: [[Int]] = []\n\n\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\tobservedValues.append(value)\n\t\t\t\t}\n\n\t\t\t\tvar expectation: [[Int]] = []\n\n\t\t\t\tfor i in 1...7 {\n\n\t\t\t\t\tobserver.sendNext(i)\n\n\t\t\t\t\tif i % 3 == 0 {\n\t\t\t\t\t\texpectation.append([Int]((i - 2)...i))\n\t\t\t\t\t\texpect(observedValues) == expectation\n\t\t\t\t\t} else {\n\t\t\t\t\t\texpect(observedValues) == expectation\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpectation.append([7])\n\t\t\t\texpect(observedValues) == expectation\n\t\t\t}\n\n\t\t\tit(\"should collect values until it matches a certain value\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tlet producer = original.collect { _, next in next != 5 }\n\n\t\t\t\tvar expectedValues = [\n\t\t\t\t\t[5, 5],\n\t\t\t\t\t[42, 5]\n\t\t\t\t]\n\n\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\texpect(value) == expectedValues.removeFirst()\n\t\t\t\t}\n\n\t\t\t\tproducer.startWithCompleted {\n\t\t\t\t\texpect(expectedValues) == []\n\t\t\t\t}\n\n\t\t\t\texpectedValues\n\t\t\t\t\t.flatMap { $0 }\n\t\t\t\t\t.forEach(observer.sendNext)\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\n\t\t\tit(\"should collect values until it matches a certain condition on values\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tlet producer = original.collect { values in values.reduce(0, combine: +) == 10 }\n\n\t\t\t\tvar expectedValues = [\n\t\t\t\t\t[1, 2, 3, 4],\n\t\t\t\t\t[5, 6, 7, 8, 9]\n\t\t\t\t]\n\n\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\texpect(value) == expectedValues.removeFirst()\n\t\t\t\t}\n\n\t\t\t\tproducer.startWithCompleted {\n\t\t\t\t\texpect(expectedValues) == []\n\t\t\t\t}\n\n\t\t\t\texpectedValues\n\t\t\t\t\t.flatMap { $0 }\n\t\t\t\t\t.forEach(observer.sendNext)\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tdescribe(\"takeUntil\") {\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar triggerObserver: Signal<(), NoError>.Observer!\n\n\t\t\tvar lastValue: Int? = nil\n\t\t\tvar completed: Bool = false\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseProducer, baseIncomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (triggerProducer, incomingTriggerObserver) = SignalProducer<(), NoError>.pipe()\n\n\t\t\t\tproducer = baseProducer.takeUntil(triggerProducer)\n\t\t\t\tobserver = baseIncomingObserver\n\t\t\t\ttriggerObserver = incomingTriggerObserver\n\n\t\t\t\tlastValue = nil\n\t\t\t\tcompleted = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should take values until the trigger fires\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\texpect(completed) == false\n\t\t\t\ttriggerObserver.sendNext(())\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should take values until the trigger completes\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\ttriggerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should complete if the trigger fires immediately\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\ttriggerObserver.sendNext(())\n\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeUntilReplacement\") {\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar replacementObserver: Signal<Int, NoError>.Observer!\n\n\t\t\tvar lastValue: Int? = nil\n\t\t\tvar completed: Bool = false\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseProducer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (replacementProducer, incomingReplacementObserver) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tproducer = baseProducer.takeUntilReplacement(replacementProducer)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\treplacementObserver = incomingReplacementObserver\n\n\t\t\t\tlastValue = nil\n\t\t\t\tcompleted = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should take values from the original then the replacement\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\treplacementObserver.sendNext(3)\n\n\t\t\t\texpect(lastValue) == 3\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(4)\n\n\t\t\t\texpect(lastValue) == 3\n\t\t\t\texpect(completed) == false\n\n\t\t\t\treplacementObserver.sendNext(5)\n\t\t\t\texpect(lastValue) == 5\n\n\t\t\t\texpect(completed) == false\n\t\t\t\treplacementObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeWhile\") {\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseProducer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tproducer = baseProducer.takeWhile { $0 <= 4 }\n\t\t\t\tobserver = incomingObserver\n\t\t\t}\n\n\t\t\tit(\"should take while the predicate is true\") {\n\t\t\t\tvar latestValue: Int!\n\t\t\t\tvar completed = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlatestValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor value in -1...4 {\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t\texpect(latestValue) == value\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\texpect(latestValue) == 4\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should complete if the predicate starts false\") {\n\t\t\t\tvar latestValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlatestValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\texpect(latestValue).to(beNil())\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"observeOn\") {\n\t\t\tit(\"should send events on the given scheduler\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tvar result: [Int] = []\n\n\t\t\t\tproducer\n\t\t\t\t\t.observeOn(testScheduler)\n\t\t\t\t\t.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"delay\") {\n\t\t\tit(\"should send events on the given scheduler after the interval\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet producer: SignalProducer<Int, NoError> = SignalProducer { observer, _ in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\t}\n\t\t\t\t\ttestScheduler.scheduleAfter(5, action: {\n\t\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tproducer\n\t\t\t\t\t.delay(10, onScheduler: testScheduler)\n\t\t\t\t\t.start { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\t\tresult.append(number)\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(4) // send initial value\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(10) // send second value and receive first\n\t\t\t\texpect(result) == [ 1 ]\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(10) // send second value and receive first\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should schedule errors immediately\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet producer: SignalProducer<Int, TestError> = SignalProducer { observer, _ in\n\t\t\t\t\t// workaround `Class declaration cannot close over value 'observer' defined in outer scope`\n\t\t\t\t\tlet observer = observer\n\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar errored = false\n\t\t\t\t\n\t\t\t\tproducer\n\t\t\t\t\t.delay(10, onScheduler: testScheduler)\n\t\t\t\t\t.startWithFailed { _ in errored = true }\n\t\t\t\t\n\t\t\t\ttestScheduler.advance()\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"throttle\") {\n\t\t\tvar scheduler: TestScheduler!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar producer: SignalProducer<Int, NoError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tscheduler = TestScheduler()\n\n\t\t\t\tlet (baseProducer, baseObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tobserver = baseObserver\n\n\t\t\t\tproducer = baseProducer.throttle(1, onScheduler: scheduler)\n\t\t\t}\n\n\t\t\tit(\"should send values on the given scheduler at no less than the interval\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\tvalues.append(value)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(values) == []\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tscheduler.advanceByInterval(1.5)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tscheduler.advanceByInterval(3)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0, 2, 3 ]\n\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0, 2, 3 ]\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == [ 0, 2, 3, 5 ]\n\t\t\t}\n\n\t\t\tit(\"should schedule completion immediately\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == [ 0 ]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"sampleWith\") {\n\t\t\tvar sampledProducer: SignalProducer<(Int, String), NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar samplerObserver: Signal<String, NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (producer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (sampler, incomingSamplerObserver) = SignalProducer<String, NoError>.pipe()\n\t\t\t\tsampledProducer = producer.sampleWith(sampler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tsamplerObserver = incomingSamplerObserver\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest value when the sampler fires\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledProducer.startWithNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\texpect(result) == [ \"2a\" ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should do nothing if sampler fires before signal receives value\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledProducer.startWithNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send lates value multiple times when sampler fires multiple times\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledProducer.startWithNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\tsamplerObserver.sendNext(\"b\")\n\t\t\t\texpect(result) == [ \"1a\", \"1b\" ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tsampledProducer.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should emit an initial value if the sampler is a synchronous SignalProducer\") {\n\t\t\t\tlet producer = SignalProducer<Int, NoError>(values: [1])\n\t\t\t\tlet sampler = SignalProducer<String, NoError>(value: \"a\")\n\t\t\t\t\n\t\t\t\tlet result = producer.sampleWith(sampler)\n\t\t\t\t\n\t\t\t\tvar valueReceived: String?\n\t\t\t\tresult.startWithNext { (left, right) in valueReceived = \"\\(left)\\(right)\" }\n\t\t\t\t\n\t\t\t\texpect(valueReceived) == \"1a\"\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"sampleOn\") {\n\t\t\tvar sampledProducer: SignalProducer<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar samplerObserver: Signal<(), NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (producer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (sampler, incomingSamplerObserver) = SignalProducer<(), NoError>.pipe()\n\t\t\t\tsampledProducer = producer.sampleOn(sampler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tsamplerObserver = incomingSamplerObserver\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest value when the sampler fires\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledProducer.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result) == [ 2 ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should do nothing if sampler fires before signal receives value\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledProducer.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send lates value multiple times when sampler fires multiple times\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledProducer.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result) == [ 1, 1 ]\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tsampledProducer.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should emit an initial value if the sampler is a synchronous SignalProducer\") {\n\t\t\t\tlet producer = SignalProducer<Int, NoError>(values: [1])\n\t\t\t\tlet sampler = SignalProducer<(), NoError>(value: ())\n\t\t\t\t\n\t\t\t\tlet result = producer.sampleOn(sampler)\n\t\t\t\t\n\t\t\t\tvar valueReceived: Int?\n\t\t\t\tresult.startWithNext { valueReceived = $0 }\n\t\t\t\t\n\t\t\t\texpect(valueReceived) == 1\n\t\t\t}\n\n\t\t\tdescribe(\"memory\") {\n\t\t\t\tclass Payload {\n\t\t\t\t\tlet action: () -> Void\n\n\t\t\t\t\tinit(onDeinit action: () -> Void) {\n\t\t\t\t\t\tself.action = action\n\t\t\t\t\t}\n\n\t\t\t\t\tdeinit {\n\t\t\t\t\t\taction()\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tvar sampledProducer: SignalProducer<Payload, NoError>!\n\t\t\t\tvar observer: Signal<Payload, NoError>.Observer!\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\tlet (producer, incomingObserver) = SignalProducer<Payload, NoError>.pipe()\n\t\t\t\t\tlet (sampler, _) = Signal<(), NoError>.pipe()\n\t\t\t\t\tsampledProducer = producer.sampleOn(sampler)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tit(\"should free payload when interrupted after complete of incoming producer\") {\n\t\t\t\t\tvar payloadFreed = false\n\n\t\t\t\t\tlet disposable = sampledProducer.start()\n\n\t\t\t\t\tobserver.sendNext(Payload { payloadFreed = true })\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\t\texpect(payloadFreed) == false\n\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\texpect(payloadFreed) == true\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"combineLatestWith\") {\n\t\t\tvar combinedProducer: SignalProducer<(Int, Double), NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar otherObserver: Signal<Double, NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (producer, incomingObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (otherSignal, incomingOtherObserver) = SignalProducer<Double, NoError>.pipe()\n\t\t\t\tcombinedProducer = producer.combineLatestWith(otherSignal)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\totherObserver = incomingOtherObserver\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest values from both inputs\") {\n\t\t\t\tvar latest: (Int, Double)?\n\t\t\t\tcombinedProducer.startWithNext { latest = $0 }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(latest).to(beNil())\n\t\t\t\t\n\t\t\t\t// is there a better way to test tuples?\n\t\t\t\totherObserver.sendNext(1.5)\n\t\t\t\texpect(latest?.0) == 1\n\t\t\t\texpect(latest?.1) == 1.5\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(latest?.0) == 2\n\t\t\t\texpect(latest?.1) == 1.5\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tcombinedProducer.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\totherObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"zipWith\") {\n\t\t\tvar leftObserver: Signal<Int, NoError>.Observer!\n\t\t\tvar rightObserver: Signal<String, NoError>.Observer!\n\t\t\tvar zipped: SignalProducer<(Int, String), NoError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (leftProducer, incomingLeftObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (rightProducer, incomingRightObserver) = SignalProducer<String, NoError>.pipe()\n\n\t\t\t\tleftObserver = incomingLeftObserver\n\t\t\t\trightObserver = incomingRightObserver\n\t\t\t\tzipped = leftProducer.zipWith(rightProducer)\n\t\t\t}\n\n\t\t\tit(\"should combine pairs\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tzipped.startWithNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\n\t\t\t\tleftObserver.sendNext(1)\n\t\t\t\tleftObserver.sendNext(2)\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendNext(\"foo\")\n\t\t\t\texpect(result) == [ \"1foo\" ]\n\n\t\t\t\tleftObserver.sendNext(3)\n\t\t\t\trightObserver.sendNext(\"bar\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\" ]\n\n\t\t\t\trightObserver.sendNext(\"buzz\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\" ]\n\n\t\t\t\trightObserver.sendNext(\"fuzz\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\" ]\n\n\t\t\t\tleftObserver.sendNext(4)\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\", \"4fuzz\" ]\n\t\t\t}\n\n\t\t\tit(\"should complete when the shorter signal has completed\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tzipped.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(left, right):\n\t\t\t\t\t\tresult.append(\"\\(left)\\(right)\")\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tleftObserver.sendNext(0)\n\t\t\t\tleftObserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendNext(\"foo\")\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(result) == [ \"0foo\" ]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"materialize\") {\n\t\t\tit(\"should reify events from the signal\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tvar latestEvent: Event<Int, TestError>?\n\t\t\t\tproducer\n\t\t\t\t\t.materialize()\n\t\t\t\t\t.startWithNext { latestEvent = $0 }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\n\t\t\t\texpect(latestEvent).toNot(beNil())\n\t\t\t\tif let latestEvent = latestEvent {\n\t\t\t\t\tswitch latestEvent {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\texpect(value) == 2\n\t\t\t\t\tcase .Failed, .Completed, .Interrupted:\n\t\t\t\t\t\tfail()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\tif let latestEvent = latestEvent {\n\t\t\t\t\tswitch latestEvent {\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase .Next, .Completed, .Interrupted:\n\t\t\t\t\t\tfail()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"dematerialize\") {\n\t\t\ttypealias IntEvent = Event<Int, TestError>\n\t\t\tvar observer: Signal<IntEvent, NoError>.Observer!\n\t\t\tvar dematerialized: SignalProducer<Int, TestError>!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (producer, incomingObserver) = SignalProducer<IntEvent, NoError>.pipe()\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tdematerialized = producer.dematerialize()\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send values for Next events\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tdematerialized\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Next(2))\n\t\t\t\texpect(result) == [ 2 ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Next(4))\n\t\t\t\texpect(result) == [ 2, 4 ]\n\t\t\t}\n\n\t\t\tit(\"should error out for Error events\") {\n\t\t\t\tvar errored = false\n\t\t\t\tdematerialized.startWithFailed { _ in errored = true }\n\t\t\t\t\n\t\t\t\texpect(errored) == false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Failed(TestError.Default))\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\n\t\t\tit(\"should complete early for Completed events\") {\n\t\t\t\tvar completed = false\n\t\t\t\tdematerialized.startWithCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\tobserver.sendNext(IntEvent.Completed)\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeLast\") {\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\t\t\tvar lastThree: SignalProducer<Int, TestError>!\n\t\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (producer, incomingObserver) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tlastThree = producer.takeLast(3)\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send the last N values upon completion\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tlastThree\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == [ 2, 3, 4 ]\n\t\t\t}\n\n\t\t\tit(\"should send less than N values if not enough were received\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tlastThree\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send nothing when errors\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar errored = false\n\t\t\t\tlastThree.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tresult.append(value)\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tcase .Completed, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(errored) == false\n\t\t\t\t\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\texpect(errored) == true\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"timeoutWithError\") {\n\t\t\tvar testScheduler: TestScheduler!\n\t\t\tvar producer: SignalProducer<Int, TestError>!\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\tbeforeEach {\n\t\t\t\ttestScheduler = TestScheduler()\n\t\t\t\tlet (baseProducer, incomingObserver) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tproducer = baseProducer.timeoutWithError(TestError.Default, afterInterval: 2, onScheduler: testScheduler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t}\n\n\t\t\tit(\"should complete if within the interval\") {\n\t\t\t\tvar completed = false\n\t\t\t\tvar errored = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tcase .Next, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttestScheduler.scheduleAfter(1) {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == false\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(errored) == false\n\t\t\t}\n\n\t\t\tit(\"should error if not completed before the interval has elapsed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tvar errored = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tcase .Next, .Interrupted:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttestScheduler.scheduleAfter(3) {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == false\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"attempt\") {\n\t\t\tit(\"should forward original values upon success\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producer = baseProducer.attempt { _ in\n\t\t\t\t\treturn .Success()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar current: Int?\n\t\t\t\tproducer\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\tcurrent = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor value in 1...5 {\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t\texpect(current) == value\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should error if an attempt fails\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producer = baseProducer.attempt { _ in\n\t\t\t\t\treturn .Failure(.Default)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar error: TestError?\n\t\t\t\tproducer.startWithFailed { err in\n\t\t\t\t\terror = err\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(42)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"attemptMap\") {\n\t\t\tit(\"should forward mapped values upon success\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producer = baseProducer.attemptMap { num -> Result<Bool, TestError> in\n\t\t\t\t\treturn .Success(num % 2 == 0)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar even: Bool?\n\t\t\t\tproducer\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.startWithNext { value in\n\t\t\t\t\t\teven = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(even) == false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(even) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should error if a mapping fails\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tlet producer = baseProducer.attemptMap { _ -> Result<Bool, TestError> in\n\t\t\t\t\treturn .Failure(.Default)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar error: TestError?\n\t\t\t\tproducer.startWithFailed { err in\n\t\t\t\t\terror = err\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(42)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"combinePrevious\") {\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tlet initialValue: Int = 0\n\t\t\tvar latestValues: (Int, Int)?\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlatestValues = nil\n\t\t\t\t\n\t\t\t\tlet (signal, baseObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tobserver = baseObserver\n\t\t\t\tsignal.combinePrevious(initialValue).startWithNext { latestValues = $0 }\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest value with previous value\") {\n\t\t\t\texpect(latestValues).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(latestValues?.0) == initialValue\n\t\t\t\texpect(latestValues?.1) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(latestValues?.0) == 1\n\t\t\t\texpect(latestValues?.1) == 2\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SignalProducerNimbleMatchers.swift",
    "content": "//\n//  SignalProducerNimbleMatchers.swift\n//  ReactiveCocoa\n//\n//  Created by Javier Soto on 1/25/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Foundation\n\nimport ReactiveCocoa\nimport Nimble\n\npublic func sendValue<T: Equatable, E: Equatable>(value: T?, sendError: E?, complete: Bool) -> NonNilMatcherFunc<SignalProducer<T, E>> {\n\treturn sendValues(value.map { [$0] } ?? [], sendError: sendError, complete: complete)\n}\n\npublic func sendValues<T: Equatable, E: Equatable>(values: [T], sendError maybeSendError: E?, complete: Bool) -> NonNilMatcherFunc<SignalProducer<T, E>> {\n\treturn NonNilMatcherFunc { actualExpression, failureMessage in\n\t\tprecondition(maybeSendError == nil || !complete, \"Signals can't both send an error and complete\")\n\n\t\tfailureMessage.postfixMessage = \"Send values \\(values). Send error \\(maybeSendError). Complete: \\(complete)\"\n\t\tlet maybeProducer = try actualExpression.evaluate()\n\n\t\tif let signalProducer = maybeProducer {\n\t\t\tvar sentValues: [T] = []\n\t\t\tvar sentError: E?\n\t\t\tvar signalCompleted = false\n\n\t\t\tsignalProducer.start { event in\n\t\t\t\tswitch event {\n\t\t\t\tcase let .Next(value):\n\t\t\t\t\tsentValues.append(value)\n\t\t\t\tcase .Completed:\n\t\t\t\t\tsignalCompleted = true\n\t\t\t\tcase let .Failed(error):\n\t\t\t\t\tsentError = error\n\t\t\t\tdefault:\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif sentValues != values {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tif sentError != maybeSendError {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn signalCompleted == complete\n\t\t}\n\t\telse {\n\t\t\treturn false\n\t\t}\n\t}\n}"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SignalProducerSpec.swift",
    "content": "//\n//  SignalProducerSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2015-01-23.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Foundation\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass SignalProducerSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"init\") {\n\t\t\tit(\"should run the handler once per start()\") {\n\t\t\t\tvar handlerCalledTimes = 0\n\t\t\t\tlet signalProducer = SignalProducer<String, NSError>() { observer, disposable in\n\t\t\t\t\thandlerCalledTimes += 1\n\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tsignalProducer.start()\n\t\t\t\tsignalProducer.start()\n\n\t\t\t\texpect(handlerCalledTimes) == 2\n\t\t\t}\n\n\t\t\tit(\"should release signal observers when given disposable is disposed\") {\n\t\t\t\tvar disposable: Disposable!\n\n\t\t\t\tlet producer = SignalProducer<Int, NoError> { observer, innerDisposable in\n\t\t\t\t\tdisposable = innerDisposable\n\n\t\t\t\t\tinnerDisposable.addDisposable {\n\t\t\t\t\t\t// This is necessary to keep the observer long enough to\n\t\t\t\t\t\t// even test the memory management.\n\t\t\t\t\t\tobserver.sendNext(0)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tweak var objectRetainedByObserver: NSObject?\n\t\t\t\tproducer.startWithSignal { signal, _ in\n\t\t\t\t\tlet object = NSObject()\n\t\t\t\t\tobjectRetainedByObserver = object\n\t\t\t\t\tsignal.observeNext { _ in object }\n\t\t\t\t}\n\n\t\t\t\texpect(objectRetainedByObserver).toNot(beNil())\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(objectRetainedByObserver).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon completion\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar observer: Signal<(), NoError>.Observer!\n\n\t\t\t\tlet producer = SignalProducer<(), NoError>() { incomingObserver, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon error\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar observer: Signal<(), TestError>.Observer!\n\n\t\t\t\tlet producer = SignalProducer<(), TestError>() { incomingObserver, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon interruption\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar observer: Signal<(), NoError>.Observer!\n\n\t\t\t\tlet producer = SignalProducer<(), NoError>() { incomingObserver, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon start() disposal\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\n\t\t\t\tlet producer = SignalProducer<(), TestError>() { _, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tlet startDisposable = producer.start()\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tstartDisposable.dispose()\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"init(signal:)\") {\n\t\t\tvar signal: Signal<Int, TestError>!\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\tbeforeEach {\n\t\t\t\t// Cannot directly assign due to compiler crash on Xcode 7.0.1\n\t\t\t\tlet (signalTemp, observerTemp) = Signal<Int, TestError>.pipe()\n\t\t\t\tsignal = signalTemp\n\t\t\t\tobserver = observerTemp\n\t\t\t}\n\n\t\t\tit(\"should emit values then complete\") {\n\t\t\t\tlet producer = SignalProducer<Int, TestError>(signal: signal)\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar error: TestError?\n\t\t\t\tvar completed = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase let .Failed(err):\n\t\t\t\t\t\terror = err\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\t\t\t\texpect(error).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(values) == [ 1 ]\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(values) == [ 1, 2, 3 ]\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should emit error\") {\n\t\t\t\tlet producer = SignalProducer<Int, TestError>(signal: signal)\n\n\t\t\t\tvar error: TestError?\n\t\t\t\tlet sentError = TestError.Default\n\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Failed(err):\n\t\t\t\t\t\terror = err\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\tobserver.sendFailed(sentError)\n\t\t\t\texpect(error) == sentError\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"init(value:)\") {\n\t\t\tit(\"should immediately send the value then complete\") {\n\t\t\t\tlet producerValue = \"StringValue\"\n\t\t\t\tlet signalProducer = SignalProducer<String, NSError>(value: producerValue)\n\n\t\t\t\texpect(signalProducer).to(sendValue(producerValue, sendError: nil, complete: true))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"init(error:)\") {\n\t\t\tit(\"should immediately send the error\") {\n\t\t\t\tlet producerError = NSError(domain: \"com.reactivecocoa.errordomain\", code: 4815, userInfo: nil)\n\t\t\t\tlet signalProducer = SignalProducer<Int, NSError>(error: producerError)\n\n\t\t\t\texpect(signalProducer).to(sendValue(nil, sendError: producerError, complete: false))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"init(result:)\") {\n\t\t\tit(\"should immediately send the value then complete\") {\n\t\t\t\tlet producerValue = \"StringValue\"\n\t\t\t\tlet producerResult = .Success(producerValue) as Result<String, NSError>\n\t\t\t\tlet signalProducer = SignalProducer(result: producerResult)\n\n\t\t\t\texpect(signalProducer).to(sendValue(producerValue, sendError: nil, complete: true))\n\t\t\t}\n\n\t\t\tit(\"should immediately send the error\") {\n\t\t\t\tlet producerError = NSError(domain: \"com.reactivecocoa.errordomain\", code: 4815, userInfo: nil)\n\t\t\t\tlet producerResult = .Failure(producerError) as Result<String, NSError>\n\t\t\t\tlet signalProducer = SignalProducer(result: producerResult)\n\n\t\t\t\texpect(signalProducer).to(sendValue(nil, sendError: producerError, complete: false))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"init(values:)\") {\n\t\t\tit(\"should immediately send the sequence of values\") {\n\t\t\t\tlet sequenceValues = [1, 2, 3]\n\t\t\t\tlet signalProducer = SignalProducer<Int, NSError>(values: sequenceValues)\n\n\t\t\t\texpect(signalProducer).to(sendValues(sequenceValues, sendError: nil, complete: true))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SignalProducer.empty\") {\n\t\t\tit(\"should immediately complete\") {\n\t\t\t\tlet signalProducer = SignalProducer<Int, NSError>.empty\n\n\t\t\t\texpect(signalProducer).to(sendValue(nil, sendError: nil, complete: true))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SignalProducer.never\") {\n\t\t\tit(\"should not send any events\") {\n\t\t\t\tlet signalProducer = SignalProducer<Int, NSError>.never\n\n\t\t\t\texpect(signalProducer).to(sendValue(nil, sendError: nil, complete: false))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SignalProducer.buffer\") {\n\t\t\tit(\"should replay buffered events when started, then forward events as added\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NSError>.buffer(Int.max)\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [1, 2, 3]\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\tobserver.sendNext(5)\n\n\t\t\t\texpect(values) == [1, 2, 3, 4, 5]\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpect(values) == [1, 2, 3, 4, 5]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should drop earliest events to maintain the capacity\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.buffer(1)\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar error: TestError?\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase let .Failed(err):\n\t\t\t\t\t\terror = err\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(values) == [2]\n\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\tobserver.sendNext(4)\n\n\t\t\t\texpect(values) == [2, 3, 4]\n\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\tobserver.sendFailed(.Default)\n\n\t\t\t\texpect(values) == [2, 3, 4]\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should always replay termination event\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.buffer(0)\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\n\t\t\t\tproducer.startWithCompleted {\n\t\t\t\t\tcompleted = true\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should replay values after being terminated\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.buffer(1)\n\t\t\t\tvar value: Int?\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(123)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(val):\n\t\t\t\t\t\tvalue = val\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(value) == 123\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should not deadlock when started while sending\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.buffer(Int.max)\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tproducer.startWithCompleted {\n\t\t\t\t\tvalues = []\n\n\t\t\t\t\tproducer.startWithNext { value in\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(values) == [ 1, 2, 3 ]\n\t\t\t}\n\n\t\t\tit(\"should not deadlock in pair when started while sending\") {\n\t\t\t\tlet (producer1, observer1) = SignalProducer<String, NoError>.buffer(Int.max)\n\t\t\t\tlet (producer2, observer2) = SignalProducer<String, NoError>.buffer(Int.max)\n\n\t\t\t\tobserver1.sendNext(\"A\")\n\t\t\t\tobserver1.sendNext(\"B\")\n\t\t\t\tobserver2.sendNext(\"1\")\n\t\t\t\tobserver2.sendNext(\"2\")\n\n\t\t\t\tvar valuePairs: [String] = []\n\t\t\t\tproducer1.startWithCompleted {\n\t\t\t\t\tproducer2.startWithCompleted {\n\t\t\t\t\t\tvaluePairs = []\n\t\t\t\t\t\tproducer1.startWithNext { value1 in\n\t\t\t\t\t\t\tproducer2.startWithNext { value2 in\n\t\t\t\t\t\t\t\tvaluePairs.append(value1 + value2)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver1.sendCompleted()\n\t\t\t\tobserver2.sendCompleted()\n\t\t\t\texpect(valuePairs) == [ \"A1\", \"A2\", \"B1\", \"B2\" ]\n\t\t\t}\n\n\t\t\tit(\"should buffer values before sending recursively to new observers\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.buffer(Int.max)\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar lastBufferedValues: [Int] = []\n\n\t\t\t\tproducer.startWithNext { newValue in\n\t\t\t\t\tvalues.append(newValue)\n\n\t\t\t\t\tvar bufferedValues: [Int] = []\n\t\t\t\t\t\n\t\t\t\t\tproducer.startWithNext { bufferedValue in\n\t\t\t\t\t\tbufferedValues.append(bufferedValue)\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(bufferedValues) == values\n\t\t\t\t\tlastBufferedValues = bufferedValues\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(values) == [ 1 ]\n\t\t\t\texpect(lastBufferedValues) == values\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(values) == [ 1, 2 ]\n\t\t\t\texpect(lastBufferedValues) == values\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(values) == [ 1, 2, 3 ]\n\t\t\t\texpect(lastBufferedValues) == values\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"trailing closure\") {\n\t\t\tit(\"receives next values\") {\n\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tvar values = [Int]()\n\t\t\t\tproducer.startWithNext { next in\n\t\t\t\t\tvalues.append(next)\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(values) == [1]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"SignalProducer.attempt\") {\n\t\t\tit(\"should run the operation once per start()\") {\n\t\t\t\tvar operationRunTimes = 0\n\t\t\t\tlet operation: () -> Result<String, NSError> = {\n\t\t\t\t\toperationRunTimes += 1\n\n\t\t\t\t\treturn .Success(\"OperationValue\")\n\t\t\t\t}\n\n\t\t\t\tSignalProducer.attempt(operation).start()\n\t\t\t\tSignalProducer.attempt(operation).start()\n\n\t\t\t\texpect(operationRunTimes) == 2\n\t\t\t}\n\n\t\t\tit(\"should send the value then complete\") {\n\t\t\t\tlet operationReturnValue = \"OperationValue\"\n\t\t\t\tlet operation: () -> Result<String, NSError> = {\n\t\t\t\t\treturn .Success(operationReturnValue)\n\t\t\t\t}\n\n\t\t\t\tlet signalProducer = SignalProducer.attempt(operation)\n\n\t\t\t\texpect(signalProducer).to(sendValue(operationReturnValue, sendError: nil, complete: true))\n\t\t\t}\n\n\t\t\tit(\"should send the error\") {\n\t\t\t\tlet operationError = NSError(domain: \"com.reactivecocoa.errordomain\", code: 4815, userInfo: nil)\n\t\t\t\tlet operation: () -> Result<String, NSError> = {\n\t\t\t\t\treturn .Failure(operationError)\n\t\t\t\t}\n\n\t\t\t\tlet signalProducer = SignalProducer.attempt(operation)\n\n\t\t\t\texpect(signalProducer).to(sendValue(nil, sendError: operationError, complete: false))\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"startWithSignal\") {\n\t\t\tit(\"should invoke the closure before any effects or events\") {\n\t\t\t\tvar started = false\n\t\t\t\tvar value: Int?\n\n\t\t\t\tSignalProducer<Int, NoError>(value: 42)\n\t\t\t\t\t.on(started: {\n\t\t\t\t\t\tstarted = true\n\t\t\t\t\t}, next: {\n\t\t\t\t\t\tvalue = $0\n\t\t\t\t\t})\n\t\t\t\t\t.startWithSignal { _ in\n\t\t\t\t\t\texpect(started) == false\n\t\t\t\t\t\texpect(value).to(beNil())\n\t\t\t\t\t}\n\n\t\t\t\texpect(started) == true\n\t\t\t\texpect(value) == 42\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables if disposed\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar disposable: Disposable!\n\n\t\t\t\tlet producer = SignalProducer<Int, NoError>() { _, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tproducer.startWithSignal { _, innerDisposable in\n\t\t\t\t\tdisposable = innerDisposable\n\t\t\t\t}\n\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should send interrupted if disposed\") {\n\t\t\t\tvar interrupted = false\n\t\t\t\tvar disposable: Disposable!\n\n\t\t\t\tSignalProducer<Int, NoError>(value: 42)\n\t\t\t\t\t.startOn(TestScheduler())\n\t\t\t\t\t.startWithSignal { signal, innerDisposable in\n\t\t\t\t\t\tsignal.observeInterrupted {\n\t\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdisposable = innerDisposable\n\t\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(interrupted) == true\n\t\t\t}\n\n\t\t\tit(\"should release signal observers if disposed\") {\n\t\t\t\tweak var objectRetainedByObserver: NSObject?\n\t\t\t\tvar disposable: Disposable!\n\n\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\tproducer.startWithSignal { signal, innerDisposable in\n\t\t\t\t\tlet object = NSObject()\n\t\t\t\t\tobjectRetainedByObserver = object\n\t\t\t\t\tsignal.observeNext { _ in object.description }\n\t\t\t\t\tdisposable = innerDisposable\n\t\t\t\t}\n\n\t\t\t\texpect(objectRetainedByObserver).toNot(beNil())\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(objectRetainedByObserver).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should not trigger effects if disposed before closure return\") {\n\t\t\t\tvar started = false\n\t\t\t\tvar value: Int?\n\n\t\t\t\tSignalProducer<Int, NoError>(value: 42)\n\t\t\t\t\t.on(started: {\n\t\t\t\t\t\tstarted = true\n\t\t\t\t\t}, next: {\n\t\t\t\t\t\tvalue = $0\n\t\t\t\t\t})\n\t\t\t\t\t.startWithSignal { _, disposable in\n\t\t\t\t\t\texpect(started) == false\n\t\t\t\t\t\texpect(value).to(beNil())\n\n\t\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\t}\n\n\t\t\t\texpect(started) == false\n\t\t\t\texpect(value).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should send interrupted if disposed before closure return\") {\n\t\t\t\tvar interrupted = false\n\n\t\t\t\tSignalProducer<Int, NoError>(value: 42)\n\t\t\t\t\t.startWithSignal { signal, disposable in\n\t\t\t\t\t\texpect(interrupted) == false\n\n\t\t\t\t\t\tsignal.observeInterrupted {\n\t\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon completion\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\t\tlet producer = SignalProducer<Int, TestError>() { incomingObserver, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tproducer.startWithSignal { _ in }\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of added disposables upon error\") {\n\t\t\t\tlet addedDisposable = SimpleDisposable()\n\t\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\t\tlet producer = SignalProducer<Int, TestError>() { incomingObserver, disposable in\n\t\t\t\t\tdisposable.addDisposable(addedDisposable)\n\t\t\t\t\tobserver = incomingObserver\n\t\t\t\t}\n\n\t\t\t\tproducer.startWithSignal { _ in }\n\t\t\t\texpect(addedDisposable.disposed) == false\n\n\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\texpect(addedDisposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"start\") {\n\t\t\tit(\"should immediately begin sending events\") {\n\t\t\t\tlet producer = SignalProducer<Int, NoError>(values: [1, 2])\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\tproducer.start { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(values) == [1, 2]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should send interrupted if disposed\") {\n\t\t\t\tlet producer = SignalProducer<(), NoError>.never\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tlet disposable = producer.startWithInterrupted {\n\t\t\t\t\tinterrupted = true\n\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == false\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(interrupted) == true\n\t\t\t}\n\n\t\t\tit(\"should release observer when disposed\") {\n\t\t\t\tweak var objectRetainedByObserver: NSObject?\n\t\t\t\tvar disposable: Disposable!\n\t\t\t\tlet test = {\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\t\tlet object = NSObject()\n\t\t\t\t\tobjectRetainedByObserver = object\n\t\t\t\t\tdisposable = producer.startWithNext { _ in object }\n\t\t\t\t}\n\n\t\t\t\ttest()\n\t\t\t\texpect(objectRetainedByObserver).toNot(beNil())\n\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(objectRetainedByObserver).to(beNil())\n\t\t\t}\n\n\t\t\tdescribe(\"trailing closure\") {\n\t\t\t\tit(\"receives next values\") {\n\t\t\t\t\tlet (producer, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\t\tvar values = [Int]()\n\t\t\t\t\tproducer.startWithNext { next in\n\t\t\t\t\t\tvalues.append(next)\n\t\t\t\t\t}\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\tobserver.sendNext(3)\n\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\t\texpect(values) == [1, 2, 3]\n\t\t\t\t}\n\n\t\t\t\t// TODO: remove when the method is marked unavailable.\n\t\t\t\tit(\"receives next values with erroring signal\") {\n\t\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\t\tvar values = [Int]()\n\t\t\t\t\tproducer.startWithNext { next in\n\t\t\t\t\t\tvalues.append(next)\n\t\t\t\t\t}\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\tobserver.sendNext(3)\n\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\t\texpect(values) == [1, 2, 3]\n\t\t\t\t}\n\n\t\t\t\tit(\"receives results\") {\n\t\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\t\tvar results: [Result<Int, TestError>] = []\n\t\t\t\t\tproducer.startWithResult { results.append($0) }\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\tobserver.sendNext(3)\n\t\t\t\t\tobserver.sendFailed(.Default)\n\n\t\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\t\texpect(results).to(haveCount(4))\n\t\t\t\t\texpect(results[0].value) == 1\n\t\t\t\t\texpect(results[1].value) == 2\n\t\t\t\t\texpect(results[2].value) == 3\n\t\t\t\t\texpect(results[3].error) == .Default\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"lift\") {\n\t\t\tdescribe(\"over unary operators\") {\n\t\t\t\tit(\"should invoke transformation once per started signal\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [1, 2])\n\n\t\t\t\t\tvar counter = 0\n\t\t\t\t\tlet transform = { (signal: Signal<Int, NoError>) -> Signal<Int, NoError> in\n\t\t\t\t\t\tcounter += 1\n\t\t\t\t\t\treturn signal\n\t\t\t\t\t}\n\n\t\t\t\t\tlet producer = baseProducer.lift(transform)\n\t\t\t\t\texpect(counter) == 0\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\texpect(counter) == 1\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\texpect(counter) == 2\n\t\t\t\t}\n\n\t\t\t\tit(\"should not miss any events\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [1, 2, 3, 4])\n\n\t\t\t\t\tlet producer = baseProducer.lift { signal in\n\t\t\t\t\t\treturn signal.map { $0 * $0 }\n\t\t\t\t\t}\n\t\t\t\t\tlet result = producer.collect().single()\n\n\t\t\t\t\texpect(result?.value) == [1, 4, 9, 16]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"over binary operators\") {\n\t\t\t\tit(\"should invoke transformation once per started signal\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [1, 2])\n\t\t\t\t\tlet otherProducer = SignalProducer<Int, NoError>(values: [3, 4])\n\n\t\t\t\t\tvar counter = 0\n\t\t\t\t\tlet transform = { (signal: Signal<Int, NoError>) -> Signal<Int, NoError> -> Signal<(Int, Int), NoError> in\n\t\t\t\t\t\treturn { otherSignal in\n\t\t\t\t\t\t\tcounter += 1\n\t\t\t\t\t\t\treturn zip(signal, otherSignal)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet producer = baseProducer.lift(transform)(otherProducer)\n\t\t\t\t\texpect(counter) == 0\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\texpect(counter) == 1\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\texpect(counter) == 2\n\t\t\t\t}\n\n\t\t\t\tit(\"should not miss any events\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [1, 2, 3])\n\t\t\t\t\tlet otherProducer = SignalProducer<Int, NoError>(values: [4, 5, 6])\n\n\t\t\t\t\tlet transform = { (signal: Signal<Int, NoError>) -> Signal<Int, NoError> -> Signal<Int, NoError> in\n\t\t\t\t\t\treturn { otherSignal in\n\t\t\t\t\t\t\treturn zip(signal, otherSignal).map { first, second in first + second }\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet producer = baseProducer.lift(transform)(otherProducer)\n\t\t\t\t\tlet result = producer.collect().single()\n\n\t\t\t\t\texpect(result?.value) == [5, 7, 9]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"over binary operators with signal\") {\n\t\t\t\tit(\"should invoke transformation once per started signal\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [1, 2])\n\t\t\t\t\tlet (otherSignal, otherSignalObserver) = Signal<Int, NoError>.pipe()\n\n\t\t\t\t\tvar counter = 0\n\t\t\t\t\tlet transform = { (signal: Signal<Int, NoError>) -> Signal<Int, NoError> -> Signal<(Int, Int), NoError> in\n\t\t\t\t\t\treturn { otherSignal in\n\t\t\t\t\t\t\tcounter += 1\n\t\t\t\t\t\t\treturn zip(signal, otherSignal)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet producer = baseProducer.lift(transform)(otherSignal)\n\t\t\t\t\texpect(counter) == 0\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\totherSignalObserver.sendNext(1)\n\t\t\t\t\texpect(counter) == 1\n\n\t\t\t\t\tproducer.start()\n\t\t\t\t\totherSignalObserver.sendNext(2)\n\t\t\t\t\texpect(counter) == 2\n\t\t\t\t}\n\n\t\t\t\tit(\"should not miss any events\") {\n\t\t\t\t\tlet baseProducer = SignalProducer<Int, NoError>(values: [ 1, 2, 3 ])\n\t\t\t\t\tlet (otherSignal, otherSignalObserver) = Signal<Int, NoError>.pipe()\n\n\t\t\t\t\tlet transform = { (signal: Signal<Int, NoError>) -> Signal<Int, NoError> -> Signal<Int, NoError> in\n\t\t\t\t\t\treturn { otherSignal in\n\t\t\t\t\t\t\treturn zip(signal, otherSignal).map(+)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet producer = baseProducer.lift(transform)(otherSignal)\n\t\t\t\t\tvar result: [Int] = []\n\t\t\t\t\tvar completed: Bool = false\n\n\t\t\t\t\tproducer.start { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase .Next(let value): result.append(value)\n\t\t\t\t\t\tcase .Completed: completed = true\n\t\t\t\t\t\tdefault: break\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\totherSignalObserver.sendNext(4)\n\t\t\t\t\texpect(result) == [ 5 ]\n\n\t\t\t\t\totherSignalObserver.sendNext(5)\n\t\t\t\t\texpect(result) == [ 5, 7 ]\n\n\t\t\t\t\totherSignalObserver.sendNext(6)\n\t\t\t\t\texpect(result) == [ 5, 7, 9 ]\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"sequence operators\") {\n\t\t\tvar producerA: SignalProducer<Int, NoError>!\n\t\t\tvar producerB: SignalProducer<Int, NoError>!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tproducerA = SignalProducer<Int, NoError>(values: [ 1, 2 ])\n\t\t\t\tproducerB = SignalProducer<Int, NoError>(values: [ 3, 4 ])\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should combine the events to one array\") {\n\t\t\t\tlet producer = combineLatest([producerA, producerB])\n\t\t\t\tlet result = producer.collect().single()\n\t\t\t\t\n\t\t\t\texpect(result?.value) == [[1, 4], [2, 4]]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should zip the events to one array\") {\n\t\t\t\tlet producer = zip([producerA, producerB])\n\t\t\t\tlet result = producer.collect().single()\n\t\t\t\t\n\t\t\t\texpect(result?.value) == [[1, 3], [2, 4]]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"timer\") {\n\t\t\tit(\"should send the current date at the given interval\") {\n\t\t\t\tlet scheduler = TestScheduler()\n\t\t\t\tlet producer = timer(1, onScheduler: scheduler, withLeeway: 0)\n\n\t\t\t\tlet startDate = scheduler.currentDate\n\t\t\t\tlet tick1 = startDate.dateByAddingTimeInterval(1)\n\t\t\t\tlet tick2 = startDate.dateByAddingTimeInterval(2)\n\t\t\t\tlet tick3 = startDate.dateByAddingTimeInterval(3)\n\n\t\t\t\tvar dates: [NSDate] = []\n\t\t\t\tproducer.startWithNext { dates.append($0) }\n\n\t\t\t\tscheduler.advanceByInterval(0.9)\n\t\t\t\texpect(dates) == []\n\n\t\t\t\tscheduler.advanceByInterval(1)\n\t\t\t\texpect(dates) == [tick1]\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(dates) == [tick1]\n\n\t\t\t\tscheduler.advanceByInterval(0.2)\n\t\t\t\texpect(dates) == [tick1, tick2]\n\n\t\t\t\tscheduler.advanceByInterval(1)\n\t\t\t\texpect(dates) == [tick1, tick2, tick3]\n\t\t\t}\n\n\t\t\tit(\"should release the signal when disposed\") {\n\t\t\t\tlet scheduler = TestScheduler()\n\t\t\t\tlet producer = timer(1, onScheduler: scheduler, withLeeway: 0)\n\n\t\t\t\tweak var weakSignal: Signal<NSDate, NoError>?\n\t\t\t\tproducer.startWithSignal { signal, disposable in\n\t\t\t\t\tweakSignal = signal\n\t\t\t\t\tscheduler.schedule {\n\t\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(weakSignal).toNot(beNil())\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(weakSignal).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"on\") {\n\t\t\tit(\"should attach event handlers to each started signal\") {\n\t\t\t\tlet (baseProducer, observer) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\tvar started = 0\n\t\t\t\tvar event = 0\n\t\t\t\tvar next = 0\n\t\t\t\tvar completed = 0\n\t\t\t\tvar terminated = 0\n\n\t\t\t\tlet producer = baseProducer\n\t\t\t\t\t.on(started: {\n\t\t\t\t\t\tstarted += 1\n\t\t\t\t\t}, event: { e in\n\t\t\t\t\t\tevent += 1\n\t\t\t\t\t}, next: { n in\n\t\t\t\t\t\tnext += 1\n\t\t\t\t\t}, completed: {\n\t\t\t\t\t\tcompleted += 1\n\t\t\t\t\t}, terminated: {\n\t\t\t\t\t\tterminated += 1\n\t\t\t\t\t})\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(started) == 1\n\n\t\t\t\tproducer.start()\n\t\t\t\texpect(started) == 2\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(event) == 2\n\t\t\t\texpect(next) == 2\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(event) == 4\n\t\t\t\texpect(completed) == 2\n\t\t\t\texpect(terminated) == 2\n\t\t\t}\n\n\t\t\tit(\"should attach event handlers for disposal\") {\n\t\t\t\tlet (baseProducer, _) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\tvar disposed: Bool = false\n\n\t\t\t\tlet producer = baseProducer\n\t\t\t\t\t.on(disposed: { disposed = true })\n\n\t\t\t\tlet disposable = producer.start()\n\n\t\t\t\texpect(disposed) == false\n\t\t\t\tdisposable.dispose()\n\t\t\t\texpect(disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"startOn\") {\n\t\t\tit(\"should invoke effects on the given scheduler\") {\n\t\t\t\tlet scheduler = TestScheduler()\n\t\t\t\tvar invoked = false\n\n\t\t\t\tlet producer = SignalProducer<Int, NoError>() { _ in\n\t\t\t\t\tinvoked = true\n\t\t\t\t}\n\n\t\t\t\tproducer.startOn(scheduler).start()\n\t\t\t\texpect(invoked) == false\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(invoked) == true\n\t\t\t}\n\n\t\t\tit(\"should forward events on their original scheduler\") {\n\t\t\t\tlet startScheduler = TestScheduler()\n\t\t\t\tlet testScheduler = TestScheduler()\n\n\t\t\t\tlet producer = timer(2, onScheduler: testScheduler, withLeeway: 0)\n\n\t\t\t\tvar next: NSDate?\n\t\t\t\tproducer.startOn(startScheduler).startWithNext { next = $0 }\n\n\t\t\t\tstartScheduler.advanceByInterval(2)\n\t\t\t\texpect(next).to(beNil())\n\n\t\t\t\ttestScheduler.advanceByInterval(1)\n\t\t\t\texpect(next).to(beNil())\n\n\t\t\t\ttestScheduler.advanceByInterval(1)\n\t\t\t\texpect(next) == testScheduler.currentDate\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"flatMapError\") {\n\t\t\tit(\"should invoke the handler and start new producer for an error\") {\n\t\t\t\tlet (baseProducer, baseObserver) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tbaseProducer\n\t\t\t\t\t.flatMapError { (error: TestError) -> SignalProducer<Int, TestError> in\n\t\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t\t\texpect(values) == [1]\n\n\t\t\t\t\t\treturn .init(value: 2)\n\t\t\t\t\t}\n\t\t\t\t\t.start { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\tbaseObserver.sendNext(1)\n\t\t\t\tbaseObserver.sendFailed(.Default)\n\n\t\t\t\texpect(values) == [1, 2]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should interrupt the replaced producer on disposal\") {\n\t\t\t\tlet (baseProducer, baseObserver) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\tvar (disposed, interrupted) = (false, false)\n\t\t\t\tlet disposable = baseProducer\n\t\t\t\t\t.flatMapError { (error: TestError) -> SignalProducer<Int, TestError> in\n\t\t\t\t\t\treturn SignalProducer<Int, TestError> { _, disposable in\n\t\t\t\t\t\t\tdisposable += ActionDisposable { disposed = true }\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t.startWithInterrupted { interrupted = true }\n\n\t\t\t\tbaseObserver.sendFailed(.Default)\n\t\t\t\tdisposable.dispose()\n\n\t\t\t\texpect(interrupted) == true\n\t\t\t\texpect(disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"flatten\") {\n\t\t\tdescribe(\"FlattenStrategy.Concat\") {\n\t\t\t\tdescribe(\"sequencing\") {\n\t\t\t\t\tvar completePrevious: (() -> Void)!\n\t\t\t\t\tvar sendSubsequent: (() -> Void)!\n\t\t\t\t\tvar completeOuter: (() -> Void)!\n\n\t\t\t\t\tvar subsequentStarted = false\n\n\t\t\t\t\tbeforeEach {\n\t\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, NoError>, NoError>.pipe()\n\t\t\t\t\t\tlet (previousProducer, previousObserver) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\t\t\tsubsequentStarted = false\n\t\t\t\t\t\tlet subsequentProducer = SignalProducer<Int, NoError> { _ in\n\t\t\t\t\t\t\tsubsequentStarted = true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcompletePrevious = { previousObserver.sendCompleted() }\n\t\t\t\t\t\tsendSubsequent = { outerObserver.sendNext(subsequentProducer) }\n\t\t\t\t\t\tcompleteOuter = { outerObserver.sendCompleted() }\n\n\t\t\t\t\t\touterProducer.flatten(.Concat).start()\n\t\t\t\t\t\touterObserver.sendNext(previousProducer)\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should immediately start subsequent inner producer if previous inner producer has already completed\") {\n\t\t\t\t\t\tcompletePrevious()\n\t\t\t\t\t\tsendSubsequent()\n\t\t\t\t\t\texpect(subsequentStarted) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tcontext(\"with queued producers\") {\n\t\t\t\t\t\tbeforeEach {\n\t\t\t\t\t\t\t// Place the subsequent producer into `concat`'s queue.\n\t\t\t\t\t\t\tsendSubsequent()\n\t\t\t\t\t\t\texpect(subsequentStarted) == false\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tit(\"should start subsequent inner producer upon completion of previous inner producer\") {\n\t\t\t\t\t\t\tcompletePrevious()\n\t\t\t\t\t\t\texpect(subsequentStarted) == true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tit(\"should start subsequent inner producer upon completion of previous inner producer and completion of outer producer\") {\n\t\t\t\t\t\t\tcompleteOuter()\n\t\t\t\t\t\t\tcompletePrevious()\n\t\t\t\t\t\t\texpect(subsequentStarted) == true\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tit(\"should forward an error from an inner producer\") {\n\t\t\t\t\tlet errorProducer = SignalProducer<Int, TestError>(error: TestError.Default)\n\t\t\t\t\tlet outerProducer = SignalProducer<SignalProducer<Int, TestError>, TestError>(value: errorProducer)\n\n\t\t\t\t\tvar error: TestError?\n\t\t\t\t\t(outerProducer.flatten(.Concat)).startWithFailed { e in\n\t\t\t\t\t\terror = e\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t}\n\n\t\t\t\tit(\"should forward an error from the outer producer\") {\n\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, TestError>, TestError>.pipe()\n\n\t\t\t\t\tvar error: TestError?\n\t\t\t\t\touterProducer.flatten(.Concat).startWithFailed { e in\n\t\t\t\t\t\terror = e\n\t\t\t\t\t}\n\n\t\t\t\t\touterObserver.sendFailed(TestError.Default)\n\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"completion\") {\n\t\t\t\t\tvar completeOuter: (() -> Void)!\n\t\t\t\t\tvar completeInner: (() -> Void)!\n\n\t\t\t\t\tvar completed = false\n\n\t\t\t\t\tbeforeEach {\n\t\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, NoError>, NoError>.pipe()\n\t\t\t\t\t\tlet (innerProducer, innerObserver) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\t\t\tcompleteOuter = { outerObserver.sendCompleted() }\n\t\t\t\t\t\tcompleteInner = { innerObserver.sendCompleted() }\n\n\t\t\t\t\t\tcompleted = false\n\t\t\t\t\t\touterProducer.flatten(.Concat).startWithCompleted {\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\touterObserver.sendNext(innerProducer)\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should complete when inner producers complete, then outer producer completes\") {\n\t\t\t\t\t\tcompleteInner()\n\t\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\t\tcompleteOuter()\n\t\t\t\t\t\texpect(completed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should complete when outer producers completes, then inner producers complete\") {\n\t\t\t\t\t\tcompleteOuter()\n\t\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\t\tcompleteInner()\n\t\t\t\t\t\texpect(completed) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"FlattenStrategy.Merge\") {\n\t\t\t\tdescribe(\"behavior\") {\n\t\t\t\t\tvar completeA: (() -> Void)!\n\t\t\t\t\tvar sendA: (() -> Void)!\n\t\t\t\t\tvar completeB: (() -> Void)!\n\t\t\t\t\tvar sendB: (() -> Void)!\n\n\t\t\t\t\tvar outerCompleted = false\n\n\t\t\t\t\tvar recv = [Int]()\n\n\t\t\t\t\tbeforeEach {\n\t\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, NoError>, NoError>.pipe()\n\t\t\t\t\t\tlet (producerA, observerA) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\t\t\tlet (producerB, observerB) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\t\t\tcompleteA = { observerA.sendCompleted() }\n\t\t\t\t\t\tcompleteB = { observerB.sendCompleted() }\n\n\t\t\t\t\t\tvar a = 0\n\t\t\t\t\t\tsendA = { observerA.sendNext(a); a += 1 }\n\n\t\t\t\t\t\tvar b = 100\n\t\t\t\t\t\tsendB = { observerB.sendNext(b); b += 1 }\n\n\t\t\t\t\t\touterProducer.flatten(.Merge).start { event in\n\t\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\t\tcase let .Next(i):\n\t\t\t\t\t\t\t\trecv.append(i)\n\t\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\t\touterCompleted = true\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\touterObserver.sendNext(producerA)\n\t\t\t\t\t\touterObserver.sendNext(producerB)\n\n\t\t\t\t\t\touterObserver.sendCompleted()\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should forward values from any inner signals\") {\n\t\t\t\t\t\tsendA()\n\t\t\t\t\t\tsendA()\n\t\t\t\t\t\tsendB()\n\t\t\t\t\t\tsendA()\n\t\t\t\t\t\tsendB()\n\t\t\t\t\t\texpect(recv) == [0, 1, 100, 2, 101]\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should complete when all signals have completed\") {\n\t\t\t\t\t\tcompleteA()\n\t\t\t\t\t\texpect(outerCompleted) == false\n\t\t\t\t\t\tcompleteB()\n\t\t\t\t\t\texpect(outerCompleted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"error handling\") {\n\t\t\t\t\tit(\"should forward an error from an inner signal\") {\n\t\t\t\t\t\tlet errorProducer = SignalProducer<Int, TestError>(error: TestError.Default)\n\t\t\t\t\t\tlet outerProducer = SignalProducer<SignalProducer<Int, TestError>, TestError>(value: errorProducer)\n\n\t\t\t\t\t\tvar error: TestError?\n\t\t\t\t\t\touterProducer.flatten(.Merge).startWithFailed { e in\n\t\t\t\t\t\t\terror = e\n\t\t\t\t\t\t}\n\t\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should forward an error from the outer signal\") {\n\t\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, TestError>, TestError>.pipe()\n\n\t\t\t\t\t\tvar error: TestError?\n\t\t\t\t\t\touterProducer.flatten(.Merge).startWithFailed { e in\n\t\t\t\t\t\t\terror = e\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\touterObserver.sendFailed(TestError.Default)\n\t\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"FlattenStrategy.Latest\") {\n\t\t\t\tit(\"should forward values from the latest inner signal\") {\n\t\t\t\t\tlet (outer, outerObserver) = SignalProducer<SignalProducer<Int, TestError>, TestError>.pipe()\n\t\t\t\t\tlet (firstInner, firstInnerObserver) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\t\tlet (secondInner, secondInnerObserver) = SignalProducer<Int, TestError>.pipe()\n\n\t\t\t\t\tvar receivedValues: [Int] = []\n\t\t\t\t\tvar errored = false\n\t\t\t\t\tvar completed = false\n\n\t\t\t\t\touter.flatten(.Latest).start { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\treceivedValues.append(value)\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\t\terrored = true\n\t\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\touterObserver.sendNext(SignalProducer(value: 0))\n\t\t\t\t\touterObserver.sendNext(firstInner)\n\t\t\t\t\tfirstInnerObserver.sendNext(1)\n\t\t\t\t\touterObserver.sendNext(secondInner)\n\t\t\t\t\tsecondInnerObserver.sendNext(2)\n\t\t\t\t\touterObserver.sendCompleted()\n\n\t\t\t\t\texpect(receivedValues) == [ 0, 1, 2 ]\n\t\t\t\t\texpect(errored) == false\n\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\tfirstInnerObserver.sendNext(3)\n\t\t\t\t\tfirstInnerObserver.sendCompleted()\n\t\t\t\t\tsecondInnerObserver.sendNext(4)\n\t\t\t\t\tsecondInnerObserver.sendCompleted()\n\n\t\t\t\t\texpect(receivedValues) == [ 0, 1, 2, 4 ]\n\t\t\t\t\texpect(errored) == false\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"should forward an error from an inner signal\") {\n\t\t\t\t\tlet inner = SignalProducer<Int, TestError>(error: .Default)\n\t\t\t\t\tlet outer = SignalProducer<SignalProducer<Int, TestError>, TestError>(value: inner)\n\n\t\t\t\t\tlet result = outer.flatten(.Latest).first()\n\t\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t\t}\n\n\t\t\t\tit(\"should forward an error from the outer signal\") {\n\t\t\t\t\tlet outer = SignalProducer<SignalProducer<Int, TestError>, TestError>(error: .Default)\n\n\t\t\t\t\tlet result = outer.flatten(.Latest).first()\n\t\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t\t}\n\n\t\t\t\tit(\"should complete when the original and latest signals have completed\") {\n\t\t\t\t\tlet inner = SignalProducer<Int, TestError>.empty\n\t\t\t\t\tlet outer = SignalProducer<SignalProducer<Int, TestError>, TestError>(value: inner)\n\n\t\t\t\t\tvar completed = false\n\t\t\t\t\touter.flatten(.Latest).startWithCompleted {\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"should complete when the outer signal completes before sending any signals\") {\n\t\t\t\t\tlet outer = SignalProducer<SignalProducer<Int, TestError>, TestError>.empty\n\n\t\t\t\t\tvar completed = false\n\t\t\t\t\touter.flatten(.Latest).startWithCompleted {\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t}\n\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"should not deadlock\") {\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>(value: 1)\n\t\t\t\t\t\t.flatMap(.Latest) { _ in SignalProducer(value: 10) }\n\n\t\t\t\t\tlet result = producer.take(1).last()\n\t\t\t\t\texpect(result?.value) == 10\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"interruption\") {\n\t\t\t\tvar innerObserver: Signal<(), NoError>.Observer!\n\t\t\t\tvar outerObserver: Signal<SignalProducer<(), NoError>, NoError>.Observer!\n\t\t\t\tvar execute: (FlattenStrategy -> Void)!\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tvar completed = false\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\tlet (innerProducer, incomingInnerObserver) = SignalProducer<(), NoError>.pipe()\n\t\t\t\t\tlet (outerProducer, incomingOuterObserver) = SignalProducer<SignalProducer<(), NoError>, NoError>.pipe()\n\n\t\t\t\t\tinnerObserver = incomingInnerObserver\n\t\t\t\t\touterObserver = incomingOuterObserver\n\n\t\t\t\t\texecute = { strategy in\n\t\t\t\t\t\tinterrupted = false\n\t\t\t\t\t\tcompleted = false\n\n\t\t\t\t\t\touterProducer\n\t\t\t\t\t\t\t.flatten(strategy)\n\t\t\t\t\t\t\t.start { event in\n\t\t\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tincomingOuterObserver.sendNext(innerProducer)\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"Concat\") {\n\t\t\t\t\tit(\"should drop interrupted from an inner producer\") {\n\t\t\t\t\t\texecute(.Concat)\n\n\t\t\t\t\t\tinnerObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\t\touterObserver.sendCompleted()\n\t\t\t\t\t\texpect(completed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should forward interrupted from the outer producer\") {\n\t\t\t\t\t\texecute(.Concat)\n\t\t\t\t\t\touterObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"Latest\") {\n\t\t\t\t\tit(\"should drop interrupted from an inner producer\") {\n\t\t\t\t\t\texecute(.Latest)\n\n\t\t\t\t\t\tinnerObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\t\touterObserver.sendCompleted()\n\t\t\t\t\t\texpect(completed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should forward interrupted from the outer producer\") {\n\t\t\t\t\t\texecute(.Latest)\n\t\t\t\t\t\touterObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"Merge\") {\n\t\t\t\t\tit(\"should drop interrupted from an inner producer\") {\n\t\t\t\t\t\texecute(.Merge)\n\n\t\t\t\t\t\tinnerObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\texpect(completed) == false\n\n\t\t\t\t\t\touterObserver.sendCompleted()\n\t\t\t\t\t\texpect(completed) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should forward interrupted from the outer producer\") {\n\t\t\t\t\t\texecute(.Merge)\n\t\t\t\t\t\touterObserver.sendInterrupted()\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"disposal\") {\n\t\t\t\tvar completeOuter: (() -> Void)!\n\t\t\t\tvar disposeOuter: (() -> Void)!\n\t\t\t\tvar execute: (FlattenStrategy -> Void)!\n\n\t\t\t\tvar innerDisposable = SimpleDisposable()\n\t\t\t\tvar interrupted = false\n\n\t\t\t\tbeforeEach {\n\t\t\t\t\texecute = { strategy in\n\t\t\t\t\t\tlet (outerProducer, outerObserver) = SignalProducer<SignalProducer<Int, NoError>, NoError>.pipe()\n\n\t\t\t\t\t\tinnerDisposable = SimpleDisposable()\n\t\t\t\t\t\tlet innerProducer = SignalProducer<Int, NoError> { $1.addDisposable(innerDisposable) }\n\t\t\t\t\t\t\n\t\t\t\t\t\tinterrupted = false\n\t\t\t\t\t\tlet outerDisposable = outerProducer.flatten(strategy).startWithInterrupted {\n\t\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcompleteOuter = outerObserver.sendCompleted\n\t\t\t\t\t\tdisposeOuter = outerDisposable.dispose\n\n\t\t\t\t\t\touterObserver.sendNext(innerProducer)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tdescribe(\"Concat\") {\n\t\t\t\t\tit(\"should cancel inner work when disposed before the outer producer completes\") {\n\t\t\t\t\t\texecute(.Concat)\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should cancel inner work when disposed after the outer producer completes\") {\n\t\t\t\t\t\texecute(.Concat)\n\n\t\t\t\t\t\tcompleteOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"Latest\") {\n\t\t\t\t\tit(\"should cancel inner work when disposed before the outer producer completes\") {\n\t\t\t\t\t\texecute(.Latest)\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should cancel inner work when disposed after the outer producer completes\") {\n\t\t\t\t\t\texecute(.Latest)\n\n\t\t\t\t\t\tcompleteOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tdescribe(\"Merge\") {\n\t\t\t\t\tit(\"should cancel inner work when disposed before the outer producer completes\") {\n\t\t\t\t\t\texecute(.Merge)\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\n\t\t\t\t\tit(\"should cancel inner work when disposed after the outer producer completes\") {\n\t\t\t\t\t\texecute(.Merge)\n\n\t\t\t\t\t\tcompleteOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == false\n\t\t\t\t\t\texpect(interrupted) == false\n\t\t\t\t\t\tdisposeOuter()\n\n\t\t\t\t\t\texpect(innerDisposable.disposed) == true\n\t\t\t\t\t\texpect(interrupted) == true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"times\") {\n\t\t\tit(\"should start a signal N times upon completion\") {\n\t\t\t\tlet original = SignalProducer<Int, NoError>(values: [ 1, 2, 3 ])\n\t\t\t\tlet producer = original.times(3)\n\n\t\t\t\tlet result = producer.collect().single()\n\t\t\t\texpect(result?.value) == [ 1, 2, 3, 1, 2, 3, 1, 2, 3 ]\n\t\t\t}\n\n\t\t\tit(\"should produce an equivalent signal producer if count is 1\") {\n\t\t\t\tlet original = SignalProducer<Int, NoError>(value: 1)\n\t\t\t\tlet producer = original.times(1)\n\n\t\t\t\tlet result = producer.collect().single()\n\t\t\t\texpect(result?.value) == [ 1 ]\n\t\t\t}\n\n\t\t\tit(\"should produce an empty signal if count is 0\") {\n\t\t\t\tlet original = SignalProducer<Int, NoError>(value: 1)\n\t\t\t\tlet producer = original.times(0)\n\n\t\t\t\tlet result = producer.first()\n\t\t\t\texpect(result).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should not repeat upon error\") {\n\t\t\t\tlet results: [Result<Int, TestError>] = [\n\t\t\t\t\t.Success(1),\n\t\t\t\t\t.Success(2),\n\t\t\t\t\t.Failure(.Default)\n\t\t\t\t]\n\n\t\t\t\tlet original = SignalProducer.attemptWithResults(results)\n\t\t\t\tlet producer = original.times(3)\n\n\t\t\t\tlet events = producer\n\t\t\t\t\t.materialize()\n\t\t\t\t\t.collect()\n\t\t\t\t\t.single()\n\t\t\t\tlet result = events?.value\n\n\t\t\t\tlet expectedEvents: [Event<Int, TestError>] = [\n\t\t\t\t\t.Next(1),\n\t\t\t\t\t.Next(2),\n\t\t\t\t\t.Failed(.Default)\n\t\t\t\t]\n\n\t\t\t\t// TODO: if let result = result where result.count == expectedEvents.count\n\t\t\t\tif result?.count != expectedEvents.count {\n\t\t\t\t\tfail(\"Invalid result: \\(result)\")\n\t\t\t\t} else {\n\t\t\t\t\t// Can't test for equality because Array<T> is not Equatable,\n\t\t\t\t\t// and neither is Event<Value, Error>.\n\t\t\t\t\texpect(result![0] == expectedEvents[0]) == true\n\t\t\t\t\texpect(result![1] == expectedEvents[1]) == true\n\t\t\t\t\texpect(result![2] == expectedEvents[2]) == true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should evaluate lazily\") {\n\t\t\t\tlet original = SignalProducer<Int, NoError>(value: 1)\n\t\t\t\tlet producer = original.times(Int.max)\n\n\t\t\t\tlet result = producer.take(1).single()\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"retry\") {\n\t\t\tit(\"should start a signal N times upon error\") {\n\t\t\t\tlet results: [Result<Int, TestError>] = [\n\t\t\t\t\t.Failure(.Error1),\n\t\t\t\t\t.Failure(.Error2),\n\t\t\t\t\t.Success(1)\n\t\t\t\t]\n\n\t\t\t\tlet original = SignalProducer.attemptWithResults(results)\n\t\t\t\tlet producer = original.retry(2)\n\n\t\t\t\tlet result = producer.single()\n\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\n\t\t\tit(\"should forward errors that occur after all retries\") {\n\t\t\t\tlet results: [Result<Int, TestError>] = [\n\t\t\t\t\t.Failure(.Default),\n\t\t\t\t\t.Failure(.Error1),\n\t\t\t\t\t.Failure(.Error2),\n\t\t\t\t]\n\n\t\t\t\tlet original = SignalProducer.attemptWithResults(results)\n\t\t\t\tlet producer = original.retry(2)\n\n\t\t\t\tlet result = producer.single()\n\n\t\t\t\texpect(result?.error) == TestError.Error2\n\t\t\t}\n\n\t\t\tit(\"should not retry upon completion\") {\n\t\t\t\tlet results: [Result<Int, TestError>] = [\n\t\t\t\t\t.Success(1),\n\t\t\t\t\t.Success(2),\n\t\t\t\t\t.Success(3)\n\t\t\t\t]\n\n\t\t\t\tlet original = SignalProducer.attemptWithResults(results)\n\t\t\t\tlet producer = original.retry(2)\n\n\t\t\t\tlet result = producer.single()\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"then\") {\n\t\t\tit(\"should start the subsequent producer after the completion of the original\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tvar subsequentStarted = false\n\t\t\t\tlet subsequent = SignalProducer<Int, NoError> { observer, _ in\n\t\t\t\t\tsubsequentStarted = true\n\t\t\t\t}\n\n\t\t\t\tlet producer = original.then(subsequent)\n\t\t\t\tproducer.start()\n\t\t\t\texpect(subsequentStarted) == false\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(subsequentStarted) == true\n\t\t\t}\n\n\t\t\tit(\"should forward errors from the original producer\") {\n\t\t\t\tlet original = SignalProducer<Int, TestError>(error: .Default)\n\t\t\t\tlet subsequent = SignalProducer<Int, TestError>.empty\n\n\t\t\t\tlet result = original.then(subsequent).first()\n\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t}\n\n\t\t\tit(\"should forward errors from the subsequent producer\") {\n\t\t\t\tlet original = SignalProducer<Int, TestError>.empty\n\t\t\t\tlet subsequent = SignalProducer<Int, TestError>(error: .Default)\n\n\t\t\t\tlet result = original.then(subsequent).first()\n\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t}\n\n\t\t\tit(\"should forward interruptions from the original producer\") {\n\t\t\t\tlet (original, observer) = SignalProducer<Int, NoError>.pipe()\n\n\t\t\t\tvar subsequentStarted = false\n\t\t\t\tlet subsequent = SignalProducer<Int, NoError> { observer, _ in\n\t\t\t\t\tsubsequentStarted = true\n\t\t\t\t}\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tlet producer = original.then(subsequent)\n\t\t\t\tproducer.startWithInterrupted {\n\t\t\t\t\tinterrupted = true\n\t\t\t\t}\n\t\t\t\texpect(subsequentStarted) == false\n\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t\texpect(interrupted) == true\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tlet (original, originalObserver) = SignalProducer<Int, NoError>.pipe()\n\t\t\t\tlet (subsequent, subsequentObserver) = SignalProducer<String, NoError>.pipe()\n\n\t\t\t\tlet producer = original.then(subsequent)\n\n\t\t\t\tvar completed = false\n\t\t\t\tproducer.startWithCompleted {\n\t\t\t\t\tcompleted = true\n\t\t\t\t}\n\n\t\t\t\toriginalObserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tsubsequentObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"first\") {\n\t\t\tit(\"should start a signal then block on the first value\") {\n\t\t\t\tlet (_signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet queue = dispatch_queue_create(\"\\(#file):\\(#line)\", DISPATCH_QUEUE_SERIAL)\n\t\t\t\tlet producer = SignalProducer(signal: _signal.delay(0.1, onScheduler: QueueScheduler(queue: queue)))\n\n\t\t\t\tvar result: Result<Int, NoError>?\n\n\t\t\t\tlet group = dispatch_group_create()\n\t\t\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n\t\t\t\t\tresult = producer.first()\n\t\t\t\t}\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER)\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\n\t\t\tit(\"should return a nil result if no values are sent before completion\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>.empty.first()\n\t\t\t\texpect(result).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should return the first value if more than one value is sent\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>(values: [ 1, 2 ]).first()\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\n\t\t\tit(\"should return an error if one occurs before the first value\") {\n\t\t\t\tlet result = SignalProducer<Int, TestError>(error: .Default).first()\n\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"single\") {\n\t\t\tit(\"should start a signal then block until completion\") {\n\t\t\t\tlet (_signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet queue = dispatch_queue_create(\"\\(#file):\\(#line)\", DISPATCH_QUEUE_SERIAL)\n\t\t\t\tlet producer = SignalProducer(signal: _signal.delay(0.1, onScheduler: QueueScheduler(queue: queue)))\n\n\t\t\t\tvar result: Result<Int, NoError>?\n\n\t\t\t\tlet group = dispatch_group_create()\n\t\t\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n\t\t\t\t\tresult = producer.single()\n\t\t\t\t}\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER)\n\t\t\t\texpect(result?.value) == 1\n\t\t\t}\n\n\t\t\tit(\"should return a nil result if no values are sent before completion\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>.empty.single()\n\t\t\t\texpect(result).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should return a nil result if more than one value is sent before completion\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>(values: [ 1, 2 ]).single()\n\t\t\t\texpect(result).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should return an error if one occurs\") {\n\t\t\t\tlet result = SignalProducer<Int, TestError>(error: .Default).single()\n\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"last\") {\n\t\t\tit(\"should start a signal then block until completion\") {\n\t\t\t\tlet (_signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet queue = dispatch_queue_create(\"\\(#file):\\(#line)\", DISPATCH_QUEUE_SERIAL)\n\t\t\t\tlet producer = SignalProducer(signal: _signal.delay(0.1, onScheduler: QueueScheduler(queue: queue)))\n\n\t\t\t\tvar result: Result<Int, NoError>?\n\n\t\t\t\tlet group = dispatch_group_create()\n\t\t\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n\t\t\t\t\tresult = producer.last()\n\t\t\t\t}\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER)\n\t\t\t\texpect(result?.value) == 2\n\t\t\t}\n\n\t\t\tit(\"should return a nil result if no values are sent before completion\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>.empty.last()\n\t\t\t\texpect(result).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should return the last value if more than one value is sent\") {\n\t\t\t\tlet result = SignalProducer<Int, NoError>(values: [ 1, 2 ]).last()\n\t\t\t\texpect(result?.value) == 2\n\t\t\t}\n\n\t\t\tit(\"should return an error if one occurs\") {\n\t\t\t\tlet result = SignalProducer<Int, TestError>(error: .Default).last()\n\t\t\t\texpect(result?.error) == TestError.Default\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"wait\") {\n\t\t\tit(\"should start a signal then block until completion\") {\n\t\t\t\tlet (_signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet queue = dispatch_queue_create(\"\\(#file):\\(#line)\", DISPATCH_QUEUE_SERIAL)\n\t\t\t\tlet producer = SignalProducer(signal: _signal.delay(0.1, onScheduler: QueueScheduler(queue: queue)))\n\n\t\t\t\tvar result: Result<(), NoError>?\n\n\t\t\t\tlet group = dispatch_group_create()\n\t\t\t\tdispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {\n\t\t\t\t\tresult = producer.wait()\n\t\t\t\t}\n\t\t\t\texpect(result).to(beNil())\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\tdispatch_group_wait(group, DISPATCH_TIME_FOREVER)\n\t\t\t\texpect(result?.value).toNot(beNil())\n\t\t\t}\n\n\t\t\tit(\"should return an error if one occurs\") {\n\t\t\t\tlet result = SignalProducer<Int, TestError>(error: .Default).wait()\n\t\t\t\texpect(result.error) == TestError.Default\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"observeOn\") {\n\t\t\tit(\"should immediately cancel upstream producer's work when disposed\") {\n\t\t\t\tvar upstreamDisposable: Disposable!\n\t\t\t\tlet producer = SignalProducer<(), NoError>{ _, innerDisposable in\n\t\t\t\t\tupstreamDisposable = innerDisposable\n\t\t\t\t}\n\n\t\t\t\tvar downstreamDisposable: Disposable!\n\t\t\t\tproducer\n\t\t\t\t\t.observeOn(TestScheduler())\n\t\t\t\t\t.startWithSignal { signal, innerDisposable in\n\t\t\t\t\t\tdownstreamDisposable = innerDisposable\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(upstreamDisposable.disposed) == false\n\t\t\t\t\n\t\t\t\tdownstreamDisposable.dispose()\n\t\t\t\texpect(upstreamDisposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"take\") {\n\t\t\tit(\"Should not start concat'ed producer if the first one sends a value when using take(1)\") {\n\t\t\t\tlet scheduler: QueueScheduler\n\t\t\t\tif #available(OSX 10.10, *) {\n\t\t\t\t\tscheduler = QueueScheduler()\n\t\t\t\t} else {\n\t\t\t\t\tscheduler = QueueScheduler(queue: dispatch_get_main_queue())\n\t\t\t\t}\n\n\t\t\t\t// Delaying producer1 from sending a value to test whether producer2 is started in the mean-time.\n\t\t\t\tlet producer1 = SignalProducer<Int, NoError>() { handler, _ in\n\t\t\t\t\thandler.sendNext(1)\n\t\t\t\t\thandler.sendCompleted()\n\t\t\t\t}.startOn(scheduler)\n\n\t\t\t\tvar started = false\n\t\t\t\tlet producer2 = SignalProducer<Int, NoError>() { handler, _ in\n\t\t\t\t\tstarted = true\n\t\t\t\t\thandler.sendNext(2)\n\t\t\t\t\thandler.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\tlet result = producer1.concat(producer2).take(1).collect().first()\n\n\t\t\t\texpect(result?.value) == [1]\n\t\t\t\texpect(started) == false\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"replayLazily\") {\n\t\t\tvar producer: SignalProducer<Int, TestError>!\n\t\t\tvar observer: SignalProducer<Int, TestError>.ProducedSignal.Observer!\n\n\t\t\tvar replayedProducer: SignalProducer<Int, TestError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (producerTemp, observerTemp) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\tproducer = producerTemp\n\t\t\t\tobserver = observerTemp\n\n\t\t\t\treplayedProducer = producer.replayLazily(2)\n\t\t\t}\n\n\t\t\tcontext(\"subscribing to underlying producer\") {\n\t\t\t\tit(\"emits new values\") {\n\t\t\t\t\tvar last: Int?\n\n\t\t\t\t\treplayedProducer\n\t\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t\t.startWithNext { last = $0 }\n\t\t\t\t\t\n\t\t\t\t\texpect(last).to(beNil())\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\texpect(last) == 1\n\n\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\texpect(last) == 2\n\t\t\t\t}\n\n\t\t\t\tit(\"emits errors\") {\n\t\t\t\t\tvar error: TestError?\n\n\t\t\t\t\treplayedProducer.startWithFailed { error = $0 }\n\t\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcontext(\"buffers past values\") {\n\t\t\t\tit(\"emits last value upon subscription\") {\n\t\t\t\t\tlet disposable = replayedProducer\n\t\t\t\t\t\t.start()\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tdisposable.dispose()\n\n\t\t\t\t\tvar last: Int?\n\n\t\t\t\t\treplayedProducer\n\t\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t\t.startWithNext { last = $0 }\n\t\t\t\t\texpect(last) == 1\n\t\t\t\t}\n\n\t\t\t\tit(\"emits previous failure upon subscription\") {\n\t\t\t\t\tlet disposable = replayedProducer\n\t\t\t\t\t\t.start()\n\n\t\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\t\tdisposable.dispose()\n\n\t\t\t\t\tvar error: TestError?\n\n\t\t\t\t\treplayedProducer\n\t\t\t\t\t\t.startWithFailed { error = $0 }\n\t\t\t\t\texpect(error) == TestError.Default\n\t\t\t\t}\n\n\t\t\t\tit(\"emits last n values upon subscription\") {\n\t\t\t\t\tvar disposable = replayedProducer\n\t\t\t\t\t\t.start()\n\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\tobserver.sendNext(3)\n\t\t\t\t\tobserver.sendNext(4)\n\t\t\t\t\tdisposable.dispose()\n\n\t\t\t\t\tvar values: [Int] = []\n\n\t\t\t\t\tdisposable = replayedProducer\n\t\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t\t.startWithNext { values.append($0) }\n\t\t\t\t\texpect(values) == [ 3, 4 ]\n\n\t\t\t\t\tobserver.sendNext(5)\n\t\t\t\t\texpect(values) == [ 3, 4, 5 ]\n\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\tvalues = []\n\n\t\t\t\t\treplayedProducer\n\t\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t\t.startWithNext { values.append($0) }\n\t\t\t\t\texpect(values) == [ 4, 5 ]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcontext(\"starting underying producer\") {\n\t\t\t\tit(\"starts lazily\") {\n\t\t\t\t\tvar started = false\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>(value: 0)\n\t\t\t\t\t\t.on(started: { started = true })\n\t\t\t\t\texpect(started) == false\n\n\t\t\t\t\tlet replayedProducer = producer\n\t\t\t\t\t\t.replayLazily(1)\n\t\t\t\t\texpect(started) == false\n\n\t\t\t\t\treplayedProducer.start()\n\t\t\t\t\texpect(started) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"shares a single subscription\") {\n\t\t\t\t\tvar startedTimes = 0\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\t\t\t.on(started: { startedTimes += 1 })\n\t\t\t\t\texpect(startedTimes) == 0\n\n\t\t\t\t\tlet replayedProducer = producer\n\t\t\t\t\t\t.replayLazily(1)\n\t\t\t\t\texpect(startedTimes) == 0\n\n\t\t\t\t\treplayedProducer.start()\n\t\t\t\t\texpect(startedTimes) == 1\n\n\t\t\t\t\treplayedProducer.start()\n\t\t\t\t\texpect(startedTimes) == 1\n\t\t\t\t}\n\n\t\t\t\tit(\"does not start multiple times when subscribing multiple times\") {\n\t\t\t\t\tvar startedTimes = 0\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>(value: 0)\n\t\t\t\t\t\t.on(started: { startedTimes += 1 })\n\n\t\t\t\t\tlet replayedProducer = producer\n\t\t\t\t\t\t.replayLazily(1)\n\n\t\t\t\t\texpect(startedTimes) == 0\n\t\t\t\t\treplayedProducer.start().dispose()\n\t\t\t\t\texpect(startedTimes) == 1\n\t\t\t\t\treplayedProducer.start().dispose()\n\t\t\t\t\texpect(startedTimes) == 1\n\t\t\t\t}\n\n\t\t\t\tit(\"does not start again if it finished\") {\n\t\t\t\t\tvar startedTimes = 0\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.empty\n\t\t\t\t\t\t.on(started: { startedTimes += 1 })\n\t\t\t\t\texpect(startedTimes) == 0\n\n\t\t\t\t\tlet replayedProducer = producer\n\t\t\t\t\t\t.replayLazily(1)\n\t\t\t\t\texpect(startedTimes) == 0\n\n\t\t\t\t\treplayedProducer.start()\n\t\t\t\t\texpect(startedTimes) == 1\n\n\t\t\t\t\treplayedProducer.start()\n\t\t\t\t\texpect(startedTimes) == 1\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcontext(\"lifetime\") {\n\t\t\t\tit(\"does not dispose underlying subscription if the replayed producer is still in memory\") {\n\t\t\t\t\tvar disposed = false\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\t\t\t.on(disposed: { disposed = true })\n\n\t\t\t\t\tlet replayedProducer = producer\n\t\t\t\t\t\t.replayLazily(1)\n\n\t\t\t\t\texpect(disposed) == false\n\t\t\t\t\tlet disposable = replayedProducer.start()\n\t\t\t\t\texpect(disposed) == false\n\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\texpect(disposed) == false\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"does not dispose if it has active subscriptions\") {\n\t\t\t\t\tvar disposed = false\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\t\t\t.on(disposed: { disposed = true })\n\n\t\t\t\t\tvar replayedProducer = ImplicitlyUnwrappedOptional(producer.replayLazily(1))\n\n\t\t\t\t\texpect(disposed) == false\n\t\t\t\t\tlet disposable1 = replayedProducer.start()\n\t\t\t\t\tlet disposable2 = replayedProducer.start()\n\t\t\t\t\texpect(disposed) == false\n\n\t\t\t\t\treplayedProducer = nil\n\t\t\t\t\texpect(disposed) == false\n\n\t\t\t\t\tdisposable1.dispose()\n\t\t\t\t\texpect(disposed) == false\n\t\t\t\t\t\n\t\t\t\t\tdisposable2.dispose()\n\t\t\t\t\texpect(disposed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"disposes underlying producer when the producer is deallocated\") {\n\t\t\t\t\tvar disposed = false\n\n\t\t\t\t\tlet producer = SignalProducer<Int, NoError>.never\n\t\t\t\t\t\t.on(disposed: { disposed = true })\n\n\t\t\t\t\tvar replayedProducer = ImplicitlyUnwrappedOptional(producer.replayLazily(1))\n\n\t\t\t\t\texpect(disposed) == false\n\t\t\t\t\tlet disposable = replayedProducer.start()\n\t\t\t\t\texpect(disposed) == false\n\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\texpect(disposed) == false\n\n\t\t\t\t\treplayedProducer = nil\n\t\t\t\t\texpect(disposed) == true\n\t\t\t\t}\n\n\t\t\t\tit(\"does not leak buffered values\") {\n\t\t\t\t\tfinal class Value {\n\t\t\t\t\t\tprivate let deinitBlock: () -> Void\n\n\t\t\t\t\t\tinit(deinitBlock: () -> Void) {\n\t\t\t\t\t\t\tself.deinitBlock = deinitBlock\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdeinit {\n\t\t\t\t\t\t\tself.deinitBlock()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tvar deinitValues = 0\n\n\t\t\t\t\tvar producer: SignalProducer<Value, NoError>! = SignalProducer(value: Value {\n\t\t\t\t\t\tdeinitValues += 1\n\t\t\t\t\t})\n\t\t\t\t\texpect(deinitValues) == 0\n\n\t\t\t\t\tvar replayedProducer: SignalProducer<Value, NoError>! = producer\n\t\t\t\t\t\t.replayLazily(1)\n\t\t\t\t\t\n\t\t\t\t\tlet disposable = replayedProducer\n\t\t\t\t\t\t.start()\n\t\t\t\t\t\n\t\t\t\t\tdisposable.dispose()\n\t\t\t\t\texpect(deinitValues) == 0\n\t\t\t\t\t\n\t\t\t\t\tproducer = nil\n\t\t\t\t\texpect(deinitValues) == 0\n\t\t\t\t\t\n\t\t\t\t\treplayedProducer = nil\n\t\t\t\t\texpect(deinitValues) == 1\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"log events\") {\n\t\t\t\tit(\"should output the correct event\") {\n\t\t\t\t\tlet expectations: [String -> Void] = [\n\t\t\t\t\t\t{ event in expect(event) == \"[] Started\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Next 1\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Completed\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Terminated\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Disposed\" }\n\t\t\t\t\t]\n\t\t\t\t\t\n\t\t\t\t\tlet logger = TestLogger(expectations: expectations)\n\t\t\t\t\t\n\t\t\t\t\tlet (producer, observer) = SignalProducer<Int, TestError>.pipe()\n\t\t\t\t\tproducer\n\t\t\t\t\t\t.logEvents(logger: logger.logEvent)\n\t\t\t\t\t\t.start()\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdescribe(\"init(values) ambiguity\") {\n\t\t\t\tit(\"should not be a SignalProducer<SignalProducer<Int, NoError>, NoError>\") {\n\n\t\t\t\t\tlet producer1: SignalProducer<Int, NoError> = SignalProducer.empty\n\t\t\t\t\tlet producer2: SignalProducer<Int, NoError> = SignalProducer.empty\n\n\t\t\t\t\tlet producer = SignalProducer(values: [producer1, producer2])\n\t\t\t\t\t\t.flatten(.Merge)\n\n\t\t\t\t\texpect(producer is SignalProducer<Int, NoError>) == true\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n// MARK: - Helpers\n\nextension SignalProducer {\n\tinternal static func pipe() -> (SignalProducer, ProducedSignal.Observer) {\n\t\tlet (signal, observer) = ProducedSignal.pipe()\n\t\tlet producer = SignalProducer(signal: signal)\n\t\treturn (producer, observer)\n\t}\n\n\t/// Creates a producer that can be started as many times as elements in `results`.\n\t/// Each signal will immediately send either a value or an error.\n\tprivate static func attemptWithResults<C: CollectionType where C.Generator.Element == Result<Value, Error>, C.Index.Distance == Int>(results: C) -> SignalProducer<Value, Error> {\n\t\tlet resultCount = results.count\n\t\tvar operationIndex = 0\n\n\t\tprecondition(resultCount > 0)\n\n\t\tlet operation: () -> Result<Value, Error> = {\n\t\t\tif operationIndex < resultCount {\n\t\t\t\tdefer {\n\t\t\t\t\toperationIndex += 1\n\t\t\t\t}\n\n\t\t\t\treturn results[results.startIndex.advancedBy(operationIndex)]\n\t\t\t} else {\n\t\t\t\tfail(\"Operation started too many times\")\n\n\t\t\t\treturn results[results.startIndex.advancedBy(0)]\n\t\t\t}\n\t\t}\n\n\t\treturn SignalProducer.attempt(operation)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/SignalSpec.swift",
    "content": "//\n//  SignalSpec.swift\n//  ReactiveCocoa\n//\n//  Created by Justin Spahr-Summers on 2015-01-23.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport Result\nimport Nimble\nimport Quick\nimport ReactiveCocoa\n\nclass SignalSpec: QuickSpec {\n\toverride func spec() {\n\t\tdescribe(\"init\") {\n\t\t\tvar testScheduler: TestScheduler!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\ttestScheduler = TestScheduler()\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should run the generator immediately\") {\n\t\t\t\tvar didRunGenerator = false\n\t\t\t\t_ = Signal<AnyObject, NoError> { observer in\n\t\t\t\t\tdidRunGenerator = true\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(didRunGenerator) == true\n\t\t\t}\n\n\t\t\tit(\"should forward events to observers\") {\n\t\t\t\tlet numbers = [ 1, 2, 5 ]\n\t\t\t\t\n\t\t\t\tlet signal: Signal<Int, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in numbers {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar fromSignal: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\tfromSignal.append(number)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(fromSignal).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\t\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(fromSignal) == numbers\n\t\t\t}\n\n\t\t\tit(\"should dispose of returned disposable upon error\") {\n\t\t\t\tlet disposable = SimpleDisposable()\n\t\t\t\t\n\t\t\t\tlet signal: Signal<AnyObject, TestError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\t\t}\n\t\t\t\t\treturn disposable\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar errored = false\n\t\t\t\t\n\t\t\t\tsignal.observeFailed { _ in errored = true }\n\t\t\t\t\n\t\t\t\texpect(errored) == false\n\t\t\t\texpect(disposable.disposed) == false\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\t\n\t\t\t\texpect(errored) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of returned disposable upon completion\") {\n\t\t\t\tlet disposable = SimpleDisposable()\n\t\t\t\t\n\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t}\n\t\t\t\t\treturn disposable\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tsignal.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(disposable.disposed) == false\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\t\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\n\t\t\tit(\"should dispose of returned disposable upon interrupted\") {\n\t\t\t\tlet disposable = SimpleDisposable()\n\n\t\t\t\tlet signal: Signal<AnyObject, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendInterrupted()\n\t\t\t\t\t}\n\t\t\t\t\treturn disposable\n\t\t\t\t}\n\n\t\t\t\tvar interrupted = false\n\t\t\t\tsignal.observeInterrupted {\n\t\t\t\t\tinterrupted = true\n\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == false\n\t\t\t\texpect(disposable.disposed) == false\n\n\t\t\t\ttestScheduler.run()\n\n\t\t\t\texpect(interrupted) == true\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"Signal.empty\") {\n\t\t\tit(\"should interrupt its observers without emitting any value\") {\n\t\t\t\tlet signal = Signal<(), NoError>.empty\n\n\t\t\t\tvar hasUnexpectedEventsEmitted = false\n\t\t\t\tvar signalInterrupted = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Next, .Failed, .Completed:\n\t\t\t\t\t\thasUnexpectedEventsEmitted = true\n\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\tsignalInterrupted = true\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(hasUnexpectedEventsEmitted) == false\n\t\t\t\texpect(signalInterrupted) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"Signal.pipe\") {\n\t\t\tit(\"should forward events to observers\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tvar fromSignal: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\tfromSignal.append(number)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(fromSignal).to(beEmpty())\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(fromSignal) == [ 1 ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(fromSignal) == [ 1, 2 ]\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tcontext(\"memory\") {\n\t\t\t\tit(\"should not crash allocating memory with a few observers\") {\n\t\t\t\t\tlet (signal, _) = Signal<Int, NoError>.pipe()\n\n\t\t\t\t\tfor _ in 0..<50 {\n\t\t\t\t\t\tautoreleasepool {\n\t\t\t\t\t\t\tlet disposable = signal.observe { _ in }\n\n\t\t\t\t\t\t\tdisposable!.dispose()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"observe\") {\n\t\t\tvar testScheduler: TestScheduler!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\ttestScheduler = TestScheduler()\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should stop forwarding events when disposed\") {\n\t\t\t\tlet disposable = SimpleDisposable()\n\t\t\t\t\n\t\t\t\tlet signal: Signal<Int, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in [ 1, 2 ] {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t\tobserver.sendNext(4)\n\t\t\t\t\t}\n\t\t\t\t\treturn disposable\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar fromSignal: [Int] = []\n\t\t\t\tsignal.observeNext { number in\n\t\t\t\t\tfromSignal.append(number)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(disposable.disposed) == false\n\t\t\t\texpect(fromSignal).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\t\n\t\t\t\texpect(disposable.disposed) == true\n\t\t\t\texpect(fromSignal) == [ 1, 2 ]\n\t\t\t}\n\n\t\t\tit(\"should not trigger side effects\") {\n\t\t\t\tvar runCount = 0\n\t\t\t\tlet signal: Signal<(), NoError> = Signal { observer in\n\t\t\t\t\trunCount += 1\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\texpect(runCount) == 1\n\t\t\t\t\n\t\t\t\tsignal.observe(Observer<(), NoError>())\n\t\t\t\texpect(runCount) == 1\n\t\t\t}\n\n\t\t\tit(\"should release observer after termination\") {\n\t\t\t\tweak var testStr: NSMutableString?\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tlet test = {\n\t\t\t\t\tlet innerStr: NSMutableString = NSMutableString()\n\t\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\t\tinnerStr.appendString(\"\\(value)\")\n\t\t\t\t\t}\n\t\t\t\t\ttestStr = innerStr\n\t\t\t\t}\n\t\t\t\ttest()\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(testStr) == \"1\"\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(testStr) == \"12\"\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(testStr).to(beNil())\n\t\t\t}\n\n\t\t\tit(\"should release observer after interruption\") {\n\t\t\t\tweak var testStr: NSMutableString?\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tlet test = {\n\t\t\t\t\tlet innerStr: NSMutableString = NSMutableString()\n\t\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\t\tinnerStr.appendString(\"\\(value)\")\n\t\t\t\t\t}\n\n\t\t\t\t\ttestStr = innerStr\n\t\t\t\t}\n\n\t\t\t\ttest()\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(testStr) == \"1\"\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(testStr) == \"12\"\n\n\t\t\t\tobserver.sendInterrupted()\n\t\t\t\texpect(testStr).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"trailing closure\") {\n\t\t\tit(\"receives next values\") {\n\t\t\t\tvar values = [Int]()\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tsignal.observeNext { next in\n\t\t\t\t\tvalues.append(next)\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(values) == [1]\n\t\t\t}\n\n\t\t\t//  TODO: remove when the method is marked unavailable\n\t\t\tit(\"receives next values with erroring signal\") {\n\t\t\t\tvar values = [Int]()\n\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\n\t\t\t\tsignal.observeNext { next in\n\t\t\t\t\tvalues.append(next)\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(values) == [1]\n\t\t\t}\n\n\t\t\tit(\"receives results\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\n\t\t\t\tvar results: [Result<Int, TestError>] = []\n\t\t\t\tsignal.observeResult { results.append($0) }\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\tobserver.sendFailed(.Default)\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpect(results).to(haveCount(4))\n\t\t\t\texpect(results[0].value) == 1\n\t\t\t\texpect(results[1].value) == 2\n\t\t\t\texpect(results[2].value) == 3\n\t\t\t\texpect(results[3].error) == .Default\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"map\") {\n\t\t\tit(\"should transform the values of the signal\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet mappedSignal = signal.map { String($0 + 1) }\n\n\t\t\t\tvar lastValue: String?\n\n\t\t\t\tmappedSignal.observeNext {\n\t\t\t\t\tlastValue = $0\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == \"1\"\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == \"2\"\n\t\t\t}\n\t\t}\n\t\t\n\t\t\n\t\tdescribe(\"mapError\") {\n\t\t\tit(\"should transform the errors of the signal\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet producerError = NSError(domain: \"com.reactivecocoa.errordomain\", code: 100, userInfo: nil)\n\t\t\t\tvar error: NSError?\n\n\t\t\t\tsignal\n\t\t\t\t\t.mapError { _ in producerError }\n\t\t\t\t\t.observeFailed { err in error = err }\n\n\t\t\t\texpect(error).to(beNil())\n\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\texpect(error) == producerError\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"filter\") {\n\t\t\tit(\"should omit values from the signal\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet mappedSignal = signal.filter { $0 % 2 == 0 }\n\n\t\t\t\tvar lastValue: Int?\n\n\t\t\t\tmappedSignal.observeNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 0\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"ignoreNil\") {\n\t\t\tit(\"should forward only non-nil values\") {\n\t\t\t\tlet (signal, observer) = Signal<Int?, NoError>.pipe()\n\t\t\t\tlet mappedSignal = signal.ignoreNil()\n\n\t\t\t\tvar lastValue: Int?\n\n\t\t\t\tmappedSignal.observeNext { lastValue = $0 }\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(nil)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(nil)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"scan\") {\n\t\t\tit(\"should incrementally accumulate a value\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<String, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.scan(\"\", +)\n\n\t\t\t\tvar lastValue: String?\n\n\t\t\t\tsignal.observeNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(lastValue) == \"a\"\n\n\t\t\t\tobserver.sendNext(\"bb\")\n\t\t\t\texpect(lastValue) == \"abb\"\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"reduce\") {\n\t\t\tit(\"should accumulate one value\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.reduce(1, +)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\texpect(completed) == false\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\n\t\t\t\texpect(lastValue) == 4\n\t\t\t}\n\n\t\t\tit(\"should send the initial value if none are received\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.reduce(1, +)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"skip\") {\n\t\t\tit(\"should skip initial values\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.skip(1)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tsignal.observeNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\n\t\t\tit(\"should not skip any values when 0\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.skip(0)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tsignal.observeNext { lastValue = $0 }\n\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"skipRepeats\") {\n\t\t\tit(\"should skip duplicate Equatable values\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Bool, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.skipRepeats()\n\n\t\t\t\tvar values: [Bool] = []\n\t\t\t\tsignal.observeNext { values.append($0) }\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true ]\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true ]\n\n\t\t\t\tobserver.sendNext(false)\n\t\t\t\texpect(values) == [ true, false ]\n\n\t\t\t\tobserver.sendNext(true)\n\t\t\t\texpect(values) == [ true, false, true ]\n\t\t\t}\n\n\t\t\tit(\"should skip values according to a predicate\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<String, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.skipRepeats { $0.characters.count == $1.characters.count }\n\n\t\t\t\tvar values: [String] = []\n\t\t\t\tsignal.observeNext { values.append($0) }\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(values) == [ \"a\" ]\n\n\t\t\t\tobserver.sendNext(\"b\")\n\t\t\t\texpect(values) == [ \"a\" ]\n\n\t\t\t\tobserver.sendNext(\"cc\")\n\t\t\t\texpect(values) == [ \"a\", \"cc\" ]\n\n\t\t\t\tobserver.sendNext(\"d\")\n\t\t\t\texpect(values) == [ \"a\", \"cc\", \"d\" ]\n\t\t\t}\n\n\t\t\tit(\"should not store strong reference to previously passed items\") {\n\t\t\t\tvar disposedItems: [Bool] = []\n\n\t\t\t\tstruct Item {\n\t\t\t\t\tlet payload: Bool\n\t\t\t\t\tlet disposable: ScopedDisposable\n\t\t\t\t}\n\n\t\t\t\tfunc item(payload: Bool) -> Item {\n\t\t\t\t\treturn Item(\n\t\t\t\t\t\tpayload: payload,\n\t\t\t\t\t\tdisposable: ScopedDisposable(ActionDisposable { disposedItems.append(payload) })\n\t\t\t\t\t)\n\t\t\t\t}\n\n\t\t\t\tlet (baseSignal, observer) = Signal<Item, NoError>.pipe()\n\t\t\t\tbaseSignal.skipRepeats { $0.payload == $1.payload }.observeNext { _ in }\n\n\t\t\t\tobserver.sendNext(item(true))\n\t\t\t\texpect(disposedItems) == []\n\n\t\t\t\tobserver.sendNext(item(false))\n\t\t\t\texpect(disposedItems) == [ true ]\n\n\t\t\t\tobserver.sendNext(item(false))\n\t\t\t\texpect(disposedItems) == [ true, false ]\n\n\t\t\t\tobserver.sendNext(item(true))\n\t\t\t\texpect(disposedItems) == [ true, false, false ]\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(disposedItems) == [ true, false, false, true ]\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"uniqueValues\") {\n\t\t\tit(\"should skip values that have been already seen\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<String, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.uniqueValues()\n\t\t\t\t\n\t\t\t\tvar values: [String] = []\n\t\t\t\tsignal.observeNext { values.append($0) }\n\t\t\t\t\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(values) == [ \"a\" ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(\"b\")\n\t\t\t\texpect(values) == [ \"a\", \"b\" ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(\"a\")\n\t\t\t\texpect(values) == [ \"a\", \"b\" ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(\"b\")\n\t\t\t\texpect(values) == [ \"a\", \"b\" ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(\"c\")\n\t\t\t\texpect(values) == [ \"a\", \"b\", \"c\" ]\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(values) == [ \"a\", \"b\", \"c\" ]\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"skipWhile\") {\n\t\t\tvar signal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\n\t\t\tvar lastValue: Int?\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tsignal = baseSignal.skipWhile { $0 < 2 }\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tlastValue = nil\n\n\t\t\t\tsignal.observeNext { lastValue = $0 }\n\t\t\t}\n\n\t\t\tit(\"should skip while the predicate is true\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\n\t\t\tit(\"should not skip any values when the predicate starts false\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(lastValue) == 3\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"skipUntil\") {\n\t\t\tvar signal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar triggerObserver: Signal<(), NoError>.Observer!\n\t\t\t\n\t\t\tvar lastValue: Int? = nil\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (triggerSignal, incomingTriggerObserver) = Signal<(), NoError>.pipe()\n\t\t\t\t\n\t\t\t\tsignal = baseSignal.skipUntil(triggerSignal)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\ttriggerObserver = incomingTriggerObserver\n\t\t\t\t\n\t\t\t\tlastValue = nil\n\t\t\t\t\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should skip values until the trigger fires\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\ttriggerObserver.sendNext(())\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should skip values until the trigger completes\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\ttriggerObserver.sendCompleted()\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(lastValue) == 0\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"take\") {\n\t\t\tit(\"should take initial values\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = baseSignal.take(2)\n\n\t\t\t\tvar lastValue: Int?\n\t\t\t\tvar completed = false\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should complete immediately after taking given number of values\") {\n\t\t\t\tlet numbers = [ 1, 2, 4, 4, 5 ]\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\t\n\t\t\t\tvar signal: Signal<Int, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in numbers {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tsignal = signal.take(numbers.count)\n\t\t\t\tsignal.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should interrupt when 0\") {\n\t\t\t\tlet numbers = [ 1, 2, 4, 4, 5 ]\n\t\t\t\tlet testScheduler = TestScheduler()\n\n\t\t\t\tlet signal: Signal<Int, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tfor number in numbers {\n\t\t\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar interrupted = false\n\n\t\t\t\tsignal\n\t\t\t\t.take(0)\n\t\t\t\t.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\tresult.append(number)\n\t\t\t\t\tcase .Interrupted:\n\t\t\t\t\t\tinterrupted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(interrupted) == true\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"collect\") {\n\t\t\tit(\"should collect all values\") {\n\t\t\t\tlet (original, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = original.collect()\n\t\t\t\tlet expectedResult = [ 1, 2, 3 ]\n\n\t\t\t\tvar result: [Int]?\n\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\texpect(result).to(beNil())\n\t\t\t\t\tresult = value\n\t\t\t\t}\n\n\t\t\t\tfor number in expectedResult {\n\t\t\t\t\tobserver.sendNext(number)\n\t\t\t\t}\n\n\t\t\t\texpect(result).to(beNil())\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == expectedResult\n\t\t\t}\n\n\t\t\tit(\"should complete with an empty array if there are no values\") {\n\t\t\t\tlet (original, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet signal = original.collect()\n\n\t\t\t\tvar result: [Int]?\n\n\t\t\t\tsignal.observeNext { result = $0 }\n\n\t\t\t\texpect(result).to(beNil())\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == []\n\t\t\t}\n\n\t\t\tit(\"should forward errors\") {\n\t\t\t\tlet (original, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet signal = original.collect()\n\n\t\t\t\tvar error: TestError?\n\n\t\t\t\tsignal.observeFailed { error = $0 }\n\n\t\t\t\texpect(error).to(beNil())\n\t\t\t\tobserver.sendFailed(.Default)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\n\t\t\tit(\"should collect an exact count of values\") {\n\t\t\t\tlet (original, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tlet signal = original.collect(count: 3)\n\n\t\t\t\tvar observedValues: [[Int]] = []\n\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\tobservedValues.append(value)\n\t\t\t\t}\n\n\t\t\t\tvar expectation: [[Int]] = []\n\n\t\t\t\tfor i in 1...7 {\n\n\t\t\t\t\tobserver.sendNext(i)\n\n\t\t\t\t\tif i % 3 == 0 {\n\t\t\t\t\t\texpectation.append([Int]((i - 2)...i))\n\t\t\t\t\t\texpect(observedValues) == expectation\n\t\t\t\t\t} else {\n\t\t\t\t\t\texpect(observedValues) == expectation\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendCompleted()\n\n\t\t\t\texpectation.append([7])\n\t\t\t\texpect(observedValues) == expectation\n\t\t\t}\n\n\t\t\tit(\"should collect values until it matches a certain value\") {\n\t\t\t\tlet (original, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tlet signal = original.collect { _, next in next != 5 }\n\n\t\t\t\tvar expectedValues = [\n\t\t\t\t\t[5, 5],\n\t\t\t\t\t[42, 5]\n\t\t\t\t]\n\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\texpect(value) == expectedValues.removeFirst()\n\t\t\t\t}\n\n\t\t\t\tsignal.observeCompleted {\n\t\t\t\t\texpect(expectedValues) == []\n\t\t\t\t}\n\n\t\t\t\texpectedValues\n\t\t\t\t\t.flatMap { $0 }\n\t\t\t\t\t.forEach(observer.sendNext)\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\n\t\t\tit(\"should collect values until it matches a certain condition on values\") {\n\t\t\t\tlet (original, observer) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tlet signal = original.collect { values in values.reduce(0, combine: +) == 10 }\n\n\t\t\t\tvar expectedValues = [\n\t\t\t\t\t[1, 2, 3, 4],\n\t\t\t\t\t[5, 6, 7, 8, 9]\n\t\t\t\t]\n\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\texpect(value) == expectedValues.removeFirst()\n\t\t\t\t}\n\n\t\t\t\tsignal.observeCompleted {\n\t\t\t\t\texpect(expectedValues) == []\n\t\t\t\t}\n\n\t\t\t\texpectedValues\n\t\t\t\t\t.flatMap { $0 }\n\t\t\t\t\t.forEach(observer.sendNext)\n\n\t\t\t\tobserver.sendCompleted()\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeUntil\") {\n\t\t\tvar signal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar triggerObserver: Signal<(), NoError>.Observer!\n\n\t\t\tvar lastValue: Int? = nil\n\t\t\tvar completed: Bool = false\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (triggerSignal, incomingTriggerObserver) = Signal<(), NoError>.pipe()\n\n\t\t\t\tsignal = baseSignal.takeUntil(triggerSignal)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\ttriggerObserver = incomingTriggerObserver\n\n\t\t\t\tlastValue = nil\n\t\t\t\tcompleted = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should take values until the trigger fires\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\texpect(completed) == false\n\t\t\t\ttriggerObserver.sendNext(())\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should take values until the trigger completes\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\ttriggerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should complete if the trigger fires immediately\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\ttriggerObserver.sendNext(())\n\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeUntilReplacement\") {\n\t\t\tvar signal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar replacementObserver: Signal<Int, NoError>.Observer!\n\n\t\t\tvar lastValue: Int? = nil\n\t\t\tvar completed: Bool = false\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (replacementSignal, incomingReplacementObserver) = Signal<Int, NoError>.pipe()\n\n\t\t\t\tsignal = baseSignal.takeUntilReplacement(replacementSignal)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\treplacementObserver = incomingReplacementObserver\n\n\t\t\t\tlastValue = nil\n\t\t\t\tcompleted = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlastValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tit(\"should take values from the original then the replacement\") {\n\t\t\t\texpect(lastValue).to(beNil())\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(lastValue) == 1\n\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(lastValue) == 2\n\n\t\t\t\treplacementObserver.sendNext(3)\n\n\t\t\t\texpect(lastValue) == 3\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tobserver.sendNext(4)\n\n\t\t\t\texpect(lastValue) == 3\n\t\t\t\texpect(completed) == false\n\n\t\t\t\treplacementObserver.sendNext(5)\n\t\t\t\texpect(lastValue) == 5\n\n\t\t\t\texpect(completed) == false\n\t\t\t\treplacementObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeWhile\") {\n\t\t\tvar signal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tsignal = baseSignal.takeWhile { $0 <= 4 }\n\t\t\t\tobserver = incomingObserver\n\t\t\t}\n\n\t\t\tit(\"should take while the predicate is true\") {\n\t\t\t\tvar latestValue: Int!\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlatestValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor value in -1...4 {\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t\texpect(latestValue) == value\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\texpect(latestValue) == 4\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should complete if the predicate starts false\") {\n\t\t\t\tvar latestValue: Int?\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tlatestValue = value\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\texpect(latestValue).to(beNil())\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"observeOn\") {\n\t\t\tit(\"should send events on the given scheduler\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tvar result: [Int] = []\n\t\t\t\t\n\t\t\t\tsignal\n\t\t\t\t\t.observeOn(testScheduler)\n\t\t\t\t\t.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"delay\") {\n\t\t\tit(\"should send events on the given scheduler after the interval\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet signal: Signal<Int, NoError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\t}\n\t\t\t\t\ttestScheduler.scheduleAfter(5, action: {\n\t\t\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t\t})\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar completed = false\n\t\t\t\t\n\t\t\t\tsignal\n\t\t\t\t\t.delay(10, onScheduler: testScheduler)\n\t\t\t\t\t.observe { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(number):\n\t\t\t\t\t\t\tresult.append(number)\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(4) // send initial value\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(10) // send second value and receive first\n\t\t\t\texpect(result) == [ 1 ]\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\ttestScheduler.advanceByInterval(10) // send second value and receive first\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\n\t\t\tit(\"should schedule errors immediately\") {\n\t\t\t\tlet testScheduler = TestScheduler()\n\t\t\t\tlet signal: Signal<Int, TestError> = Signal { observer in\n\t\t\t\t\ttestScheduler.schedule {\n\t\t\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\t\t}\n\t\t\t\t\treturn nil\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar errored = false\n\t\t\t\t\n\t\t\t\tsignal\n\t\t\t\t\t.delay(10, onScheduler: testScheduler)\n\t\t\t\t\t.observeFailed { _ in errored = true }\n\t\t\t\t\n\t\t\t\ttestScheduler.advance()\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"throttle\") {\n\t\t\tvar scheduler: TestScheduler!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar signal: Signal<Int, NoError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tscheduler = TestScheduler()\n\n\t\t\t\tlet (baseSignal, baseObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tobserver = baseObserver\n\n\t\t\t\tsignal = baseSignal.throttle(1, onScheduler: scheduler)\n\t\t\t\texpect(signal).notTo(beNil())\n\t\t\t}\n\n\t\t\tit(\"should send values on the given scheduler at no less than the interval\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\tvalues.append(value)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(values) == []\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tscheduler.advanceByInterval(1.5)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tscheduler.advanceByInterval(3)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(values) == [ 0, 2 ]\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0, 2, 3 ]\n\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0, 2, 3 ]\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == [ 0, 2, 3, 5 ]\n\t\t\t}\n\n\t\t\tit(\"should schedule completion immediately\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0 ]\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 0 ]\n\t\t\t\texpect(completed) == true\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == [ 0 ]\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"debounce\") {\n\t\t\tvar scheduler: TestScheduler!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar signal: Signal<Int, NoError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tscheduler = TestScheduler()\n\n\t\t\t\tlet (baseSignal, baseObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tobserver = baseObserver\n\n\t\t\t\tsignal = baseSignal.debounce(1, onScheduler: scheduler)\n\t\t\t\texpect(signal).notTo(beNil())\n\t\t\t}\n\n\t\t\tit(\"should send values on the given scheduler once the interval has passed since the last value was sent\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tsignal.observeNext { value in\n\t\t\t\t\tvalues.append(value)\n\t\t\t\t}\n\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\texpect(values) == []\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(values) == []\n\n\t\t\t\tscheduler.advanceByInterval(1.5)\n\t\t\t\texpect(values) == [ 2 ]\n\n\t\t\t\tscheduler.advanceByInterval(3)\n\t\t\t\texpect(values) == [ 2 ]\n\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(values) == [ 2 ]\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 2 ]\n\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\tobserver.sendNext(5)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == [ 2 ]\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == [ 2, 5 ]\n\t\t\t}\n\n\t\t\tit(\"should schedule completion immediately\") {\n\t\t\t\tvar values: [Int] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tvalues.append(value)\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tobserver.sendNext(0)\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == []\n\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tscheduler.advance()\n\t\t\t\texpect(values) == []\n\t\t\t\texpect(completed) == true\n\n\t\t\t\tscheduler.run()\n\t\t\t\texpect(values) == []\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"sampleWith\") {\n\t\t\tvar sampledSignal: Signal<(Int, String), NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar samplerObserver: Signal<String, NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (signal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (sampler, incomingSamplerObserver) = Signal<String, NoError>.pipe()\n\t\t\t\tsampledSignal = signal.sampleWith(sampler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tsamplerObserver = incomingSamplerObserver\n\t\t\t}\n\n\t\t\tit(\"should forward the latest value when the sampler fires\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledSignal.observeNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\texpect(result) == [ \"2a\" ]\n\t\t\t}\n\n\t\t\tit(\"should do nothing if sampler fires before signal receives value\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledSignal.observeNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\n\t\t\tit(\"should send lates value with sampler value multiple times when sampler fires multiple times\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tsampledSignal.observeNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tsamplerObserver.sendNext(\"a\")\n\t\t\t\tsamplerObserver.sendNext(\"b\")\n\t\t\t\texpect(result) == [ \"1a\", \"1b\" ]\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tsampledSignal.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"sampleOn\") {\n\t\t\tvar sampledSignal: Signal<Int, NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar samplerObserver: Signal<(), NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (signal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (sampler, incomingSamplerObserver) = Signal<(), NoError>.pipe()\n\t\t\t\tsampledSignal = signal.sampleOn(sampler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tsamplerObserver = incomingSamplerObserver\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest value when the sampler fires\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledSignal.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result) == [ 2 ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should do nothing if sampler fires before signal receives value\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledSignal.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send lates value multiple times when sampler fires multiple times\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tsampledSignal.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\tsamplerObserver.sendNext(())\n\t\t\t\texpect(result) == [ 1, 1 ]\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tsampledSignal.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\tsamplerObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"combineLatestWith\") {\n\t\t\tvar combinedSignal: Signal<(Int, Double), NoError>!\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tvar otherObserver: Signal<Double, NoError>.Observer!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (signal, incomingObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (otherSignal, incomingOtherObserver) = Signal<Double, NoError>.pipe()\n\t\t\t\tcombinedSignal = signal.combineLatestWith(otherSignal)\n\t\t\t\tobserver = incomingObserver\n\t\t\t\totherObserver = incomingOtherObserver\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest values from both inputs\") {\n\t\t\t\tvar latest: (Int, Double)?\n\t\t\t\tcombinedSignal.observeNext { latest = $0 }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(latest).to(beNil())\n\t\t\t\t\n\t\t\t\t// is there a better way to test tuples?\n\t\t\t\totherObserver.sendNext(1.5)\n\t\t\t\texpect(latest?.0) == 1\n\t\t\t\texpect(latest?.1) == 1.5\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(latest?.0) == 2\n\t\t\t\texpect(latest?.1) == 1.5\n\t\t\t}\n\n\t\t\tit(\"should complete when both inputs have completed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tcombinedSignal.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\t\n\t\t\t\totherObserver.sendCompleted()\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"zipWith\") {\n\t\t\tvar leftObserver: Signal<Int, NoError>.Observer!\n\t\t\tvar rightObserver: Signal<String, NoError>.Observer!\n\t\t\tvar zipped: Signal<(Int, String), NoError>!\n\n\t\t\tbeforeEach {\n\t\t\t\tlet (leftSignal, incomingLeftObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (rightSignal, incomingRightObserver) = Signal<String, NoError>.pipe()\n\n\t\t\t\tleftObserver = incomingLeftObserver\n\t\t\t\trightObserver = incomingRightObserver\n\t\t\t\tzipped = leftSignal.zipWith(rightSignal)\n\t\t\t}\n\n\t\t\tit(\"should combine pairs\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tzipped.observeNext { (left, right) in result.append(\"\\(left)\\(right)\") }\n\n\t\t\t\tleftObserver.sendNext(1)\n\t\t\t\tleftObserver.sendNext(2)\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendNext(\"foo\")\n\t\t\t\texpect(result) == [ \"1foo\" ]\n\n\t\t\t\tleftObserver.sendNext(3)\n\t\t\t\trightObserver.sendNext(\"bar\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\" ]\n\n\t\t\t\trightObserver.sendNext(\"buzz\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\" ]\n\n\t\t\t\trightObserver.sendNext(\"fuzz\")\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\" ]\n\n\t\t\t\tleftObserver.sendNext(4)\n\t\t\t\texpect(result) == [ \"1foo\", \"2bar\", \"3buzz\", \"4fuzz\" ]\n\t\t\t}\n\n\t\t\tit(\"should complete when the shorter signal has completed\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tzipped.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(left, right):\n\t\t\t\t\t\tresult.append(\"\\(left)\\(right)\")\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tleftObserver.sendNext(0)\n\t\t\t\tleftObserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendNext(\"foo\")\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(result) == [ \"0foo\" ]\n\t\t\t}\n\n\t\t\tit(\"should complete when both signal have completed\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tzipped.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(left, right):\n\t\t\t\t\t\tresult.append(\"\\(left)\\(right)\")\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tleftObserver.sendNext(0)\n\t\t\t\tleftObserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendCompleted()\n\t\t\t\texpect(result) == [ ]\n\t\t\t}\n\n\t\t\tit(\"should complete and drop unpaired pending values when both signal have completed\") {\n\t\t\t\tvar result: [String] = []\n\t\t\t\tvar completed = false\n\n\t\t\t\tzipped.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(left, right):\n\t\t\t\t\t\tresult.append(\"\\(left)\\(right)\")\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\n\t\t\t\tleftObserver.sendNext(0)\n\t\t\t\tleftObserver.sendNext(1)\n\t\t\t\tleftObserver.sendNext(2)\n\t\t\t\tleftObserver.sendNext(3)\n\t\t\t\tleftObserver.sendCompleted()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(result) == []\n\n\t\t\t\trightObserver.sendNext(\"foo\")\n\t\t\t\trightObserver.sendNext(\"bar\")\n\t\t\t\trightObserver.sendCompleted()\n\t\t\t\texpect(result) == [\"0foo\", \"1bar\"]\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"materialize\") {\n\t\t\tit(\"should reify events from the signal\") {\n\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tvar latestEvent: Event<Int, TestError>?\n\t\t\t\tsignal\n\t\t\t\t\t.materialize()\n\t\t\t\t\t.observeNext { latestEvent = $0 }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\t\n\t\t\t\texpect(latestEvent).toNot(beNil())\n\t\t\t\tif let latestEvent = latestEvent {\n\t\t\t\t\tswitch latestEvent {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\texpect(value) == 2\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tfail()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\tif let latestEvent = latestEvent {\n\t\t\t\t\tswitch latestEvent {\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\t()\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tfail()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"dematerialize\") {\n\t\t\ttypealias IntEvent = Event<Int, TestError>\n\t\t\tvar observer: Signal<IntEvent, NoError>.Observer!\n\t\t\tvar dematerialized: Signal<Int, TestError>!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (signal, incomingObserver) = Signal<IntEvent, NoError>.pipe()\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tdematerialized = signal.dematerialize()\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send values for Next events\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tdematerialized\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Next(2))\n\t\t\t\texpect(result) == [ 2 ]\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Next(4))\n\t\t\t\texpect(result) == [ 2, 4 ]\n\t\t\t}\n\n\t\t\tit(\"should error out for Error events\") {\n\t\t\t\tvar errored = false\n\t\t\t\tdematerialized.observeFailed { _ in errored = true }\n\t\t\t\t\n\t\t\t\texpect(errored) == false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(.Failed(TestError.Default))\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\n\t\t\tit(\"should complete early for Completed events\") {\n\t\t\t\tvar completed = false\n\t\t\t\tdematerialized.observeCompleted { completed = true }\n\t\t\t\t\n\t\t\t\texpect(completed) == false\n\t\t\t\tobserver.sendNext(IntEvent.Completed)\n\t\t\t\texpect(completed) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"takeLast\") {\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\t\t\tvar lastThree: Signal<Int, TestError>!\n\t\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlet (signal, incomingObserver) = Signal<Int, TestError>.pipe()\n\t\t\t\tobserver = incomingObserver\n\t\t\t\tlastThree = signal.takeLast(3)\n\t\t\t}\n\n\t\t\tit(\"should send the last N values upon completion\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tlastThree\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\tobserver.sendNext(4)\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t\t\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == [ 2, 3, 4 ]\n\t\t\t}\n\n\t\t\tit(\"should send less than N values if not enough were received\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tlastThree\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { result.append($0) }\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendCompleted()\n\t\t\t\texpect(result) == [ 1, 2 ]\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should send nothing when errors\") {\n\t\t\t\tvar result: [Int] = []\n\t\t\t\tvar errored = false\n\t\t\t\tlastThree.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\tresult.append(value)\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\tobserver.sendNext(3)\n\t\t\t\texpect(errored) == false\n\t\t\t\t\n\t\t\t\tobserver.sendFailed(TestError.Default)\n\t\t\t\texpect(errored) == true\n\t\t\t\texpect(result).to(beEmpty())\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"timeoutWithError\") {\n\t\t\tvar testScheduler: TestScheduler!\n\t\t\tvar signal: Signal<Int, TestError>!\n\t\t\tvar observer: Signal<Int, TestError>.Observer!\n\n\t\t\tbeforeEach {\n\t\t\t\ttestScheduler = TestScheduler()\n\t\t\t\tlet (baseSignal, incomingObserver) = Signal<Int, TestError>.pipe()\n\t\t\t\tsignal = baseSignal.timeoutWithError(TestError.Default, afterInterval: 2, onScheduler: testScheduler)\n\t\t\t\tobserver = incomingObserver\n\t\t\t}\n\n\t\t\tit(\"should complete if within the interval\") {\n\t\t\t\tvar completed = false\n\t\t\t\tvar errored = false\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttestScheduler.scheduleAfter(1) {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == false\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == true\n\t\t\t\texpect(errored) == false\n\t\t\t}\n\n\t\t\tit(\"should error if not completed before the interval has elapsed\") {\n\t\t\t\tvar completed = false\n\t\t\t\tvar errored = false\n\t\t\t\tsignal.observe { event in\n\t\t\t\t\tswitch event {\n\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\tcompleted = true\n\t\t\t\t\tcase .Failed:\n\t\t\t\t\t\terrored = true\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttestScheduler.scheduleAfter(3) {\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == false\n\n\t\t\t\ttestScheduler.run()\n\t\t\t\texpect(completed) == false\n\t\t\t\texpect(errored) == true\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"attempt\") {\n\t\t\tit(\"should forward original values upon success\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet signal = baseSignal.attempt { _ in\n\t\t\t\t\treturn .Success()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar current: Int?\n\t\t\t\tsignal\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\tcurrent = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor value in 1...5 {\n\t\t\t\t\tobserver.sendNext(value)\n\t\t\t\t\texpect(current) == value\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should error if an attempt fails\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet signal = baseSignal.attempt { _ in\n\t\t\t\t\treturn .Failure(.Default)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar error: TestError?\n\t\t\t\tsignal.observeFailed { err in\n\t\t\t\t\terror = err\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(42)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"attemptMap\") {\n\t\t\tit(\"should forward mapped values upon success\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet signal = baseSignal.attemptMap { num -> Result<Bool, TestError> in\n\t\t\t\t\treturn .Success(num % 2 == 0)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar even: Bool?\n\t\t\t\tsignal\n\t\t\t\t\t.assumeNoErrors()\n\t\t\t\t\t.observeNext { value in\n\t\t\t\t\t\teven = value\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(even) == false\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(even) == true\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should error if a mapping fails\") {\n\t\t\t\tlet (baseSignal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\tlet signal = baseSignal.attemptMap { _ -> Result<Bool, TestError> in\n\t\t\t\t\treturn .Failure(.Default)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar error: TestError?\n\t\t\t\tsignal.observeFailed { err in\n\t\t\t\t\terror = err\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobserver.sendNext(42)\n\t\t\t\texpect(error) == TestError.Default\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"combinePrevious\") {\n\t\t\tvar observer: Signal<Int, NoError>.Observer!\n\t\t\tlet initialValue: Int = 0\n\t\t\tvar latestValues: (Int, Int)?\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tlatestValues = nil\n\t\t\t\t\n\t\t\t\tlet (signal, baseObserver) = Signal<Int, NoError>.pipe()\n\t\t\t\tobserver = baseObserver\n\t\t\t\tsignal.combinePrevious(initialValue).observeNext { latestValues = $0 }\n\t\t\t}\n\t\t\t\n\t\t\tit(\"should forward the latest value with previous value\") {\n\t\t\t\texpect(latestValues).to(beNil())\n\t\t\t\t\n\t\t\t\tobserver.sendNext(1)\n\t\t\t\texpect(latestValues?.0) == initialValue\n\t\t\t\texpect(latestValues?.1) == 1\n\t\t\t\t\n\t\t\t\tobserver.sendNext(2)\n\t\t\t\texpect(latestValues?.0) == 1\n\t\t\t\texpect(latestValues?.1) == 2\n\t\t\t}\n\t\t}\n\n\t\tdescribe(\"combineLatest\") {\n\t\t\tvar signalA: Signal<Int, NoError>!\n\t\t\tvar signalB: Signal<Int, NoError>!\n\t\t\tvar signalC: Signal<Int, NoError>!\n\t\t\tvar observerA: Signal<Int, NoError>.Observer!\n\t\t\tvar observerB: Signal<Int, NoError>.Observer!\n\t\t\tvar observerC: Signal<Int, NoError>.Observer!\n\t\t\t\n\t\t\tvar combinedValues: [Int]?\n\t\t\tvar completed: Bool!\n\t\t\t\n\t\t\tbeforeEach {\n\t\t\t\tcombinedValues = nil\n\t\t\t\tcompleted = false\n\t\t\t\t\n\t\t\t\tlet (baseSignalA, baseObserverA) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (baseSignalB, baseObserverB) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (baseSignalC, baseObserverC) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tsignalA = baseSignalA\n\t\t\t\tsignalB = baseSignalB\n\t\t\t\tsignalC = baseSignalC\n\t\t\t\t\n\t\t\t\tobserverA = baseObserverA\n\t\t\t\tobserverB = baseObserverB\n\t\t\t\tobserverC = baseObserverC\n\t\t\t}\n\t\t\t\n\t\t\tlet combineLatestExampleName = \"combineLatest examples\"\n\t\t\tsharedExamples(combineLatestExampleName) {\n\t\t\t\tit(\"should forward the latest values from all inputs\"){\n\t\t\t\t\texpect(combinedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(0)\n\t\t\t\t\tobserverB.sendNext(1)\n\t\t\t\t\tobserverC.sendNext(2)\n\t\t\t\t\texpect(combinedValues) == [0, 1, 2]\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(10)\n\t\t\t\t\texpect(combinedValues) == [10, 1, 2]\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should not forward the latest values before all inputs\"){\n\t\t\t\t\texpect(combinedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(0)\n\t\t\t\t\texpect(combinedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverB.sendNext(1)\n\t\t\t\t\texpect(combinedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverC.sendNext(2)\n\t\t\t\t\texpect(combinedValues) == [0, 1, 2]\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should complete when all inputs have completed\"){\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendCompleted()\n\t\t\t\t\tobserverB.sendCompleted()\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\t\n\t\t\t\t\tobserverC.sendCompleted()\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"tuple\") {\n\t\t\t\tbeforeEach {\n\t\t\t\t\tcombineLatest(signalA, signalB, signalC)\n\t\t\t\t\t\t.observe { event in\n\t\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\t\tcombinedValues = [value.0, value.1, value.2]\n\t\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\titBehavesLike(combineLatestExampleName)\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"sequence\") {\n\t\t\t\tbeforeEach {\n\t\t\t\t\tcombineLatest([signalA, signalB, signalC])\n\t\t\t\t\t.observe { event in\n\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\tcase let .Next(values):\n\t\t\t\t\t\t\tcombinedValues = values\n\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\titBehavesLike(combineLatestExampleName)\n\t\t\t}\n\t\t}\n\t\t\n\t\tdescribe(\"zip\") {\n\t\t\tvar signalA: Signal<Int, NoError>!\n\t\t\tvar signalB: Signal<Int, NoError>!\n\t\t\tvar signalC: Signal<Int, NoError>!\n\t\t\tvar observerA: Signal<Int, NoError>.Observer!\n\t\t\tvar observerB: Signal<Int, NoError>.Observer!\n\t\t\tvar observerC: Signal<Int, NoError>.Observer!\n\n\t\t\tvar zippedValues: [Int]?\n\t\t\tvar completed: Bool!\n            \n\t\t\tbeforeEach {\n\t\t\t\tzippedValues = nil\n\t\t\t\tcompleted = false\n                \n\t\t\t\tlet (baseSignalA, baseObserverA) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (baseSignalB, baseObserverB) = Signal<Int, NoError>.pipe()\n\t\t\t\tlet (baseSignalC, baseObserverC) = Signal<Int, NoError>.pipe()\n\t\t\t\t\n\t\t\t\tsignalA = baseSignalA\n\t\t\t\tsignalB = baseSignalB\n\t\t\t\tsignalC = baseSignalC\n\t\t\t\t\n\t\t\t\tobserverA = baseObserverA\n\t\t\t\tobserverB = baseObserverB\n\t\t\t\tobserverC = baseObserverC\n\t\t\t}\n\t\t\t\n\t\t\tlet zipExampleName = \"zip examples\"\n\t\t\tsharedExamples(zipExampleName) {\n\t\t\t\tit(\"should combine all set\"){\n\t\t\t\t\texpect(zippedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(0)\n\t\t\t\t\texpect(zippedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverB.sendNext(1)\n\t\t\t\t\texpect(zippedValues).to(beNil())\n\t\t\t\t\t\n\t\t\t\t\tobserverC.sendNext(2)\n\t\t\t\t\texpect(zippedValues) == [0, 1, 2]\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(10)\n\t\t\t\t\texpect(zippedValues) == [0, 1, 2]\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(20)\n\t\t\t\t\texpect(zippedValues) == [0, 1, 2]\n\t\t\t\t\t\n\t\t\t\t\tobserverB.sendNext(11)\n\t\t\t\t\texpect(zippedValues) == [0, 1, 2]\n\t\t\t\t\t\n\t\t\t\t\tobserverC.sendNext(12)\n\t\t\t\t\texpect(zippedValues) == [10, 11, 12]\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should complete when the shorter signal has completed\"){\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\t\n\t\t\t\t\tobserverB.sendNext(1)\n\t\t\t\t\tobserverC.sendNext(2)\n\t\t\t\t\tobserverB.sendCompleted()\n\t\t\t\t\tobserverC.sendCompleted()\n\t\t\t\t\texpect(completed) == false\n\t\t\t\t\t\n\t\t\t\t\tobserverA.sendNext(0)\n\t\t\t\t\texpect(completed) == true\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"tuple\") {\n\t\t\t\tbeforeEach {\n\t\t\t\t\tzip(signalA, signalB, signalC)\n\t\t\t\t\t\t.observe { event in\n\t\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\t\tcase let .Next(value):\n\t\t\t\t\t\t\t\tzippedValues = [value.0, value.1, value.2]\n\t\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\titBehavesLike(zipExampleName)\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"sequence\") {\n\t\t\t\tbeforeEach {\n\t\t\t\t\tzip([signalA, signalB, signalC])\n\t\t\t\t\t\t.observe { event in\n\t\t\t\t\t\t\tswitch event {\n\t\t\t\t\t\t\tcase let .Next(values):\n\t\t\t\t\t\t\t\tzippedValues = values\n\t\t\t\t\t\t\tcase .Completed:\n\t\t\t\t\t\t\t\tcompleted = true\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\titBehavesLike(zipExampleName)\n\t\t\t}\n\t\t\t\n\t\t\tdescribe(\"log events\") {\n\t\t\t\tit(\"should output the correct event without identifier\") {\n\t\t\t\t\tlet expectations: [String -> Void] = [\n\t\t\t\t\t\t{ event in expect(event) == \"[] Next 1\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Completed\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Terminated\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[] Disposed\" },\n\t\t\t\t\t]\n\n\t\t\t\t\tlet logger = TestLogger(expectations: expectations)\n\t\t\t\t\t\n\t\t\t\t\tlet (signal, observer) = Signal<Int, NoError>.pipe()\n\t\t\t\t\tsignal\n\t\t\t\t\t\t.logEvents(logger: logger.logEvent)\n\t\t\t\t\t\t.observe { _ in }\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendCompleted()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should output the correct event with identifier\") {\n\t\t\t\t\tlet expectations: [String -> Void] = [\n\t\t\t\t\t\t{ event in expect(event) == \"[test.rac] Next 1\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[test.rac] Failed Error1\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[test.rac] Terminated\" },\n\t\t\t\t\t\t{ event in expect(event) == \"[test.rac] Disposed\" },\n\t\t\t\t\t]\n\n\t\t\t\t\tlet logger = TestLogger(expectations: expectations)\n\n\t\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\t\tsignal\n\t\t\t\t\t\t.logEvents(identifier: \"test.rac\", logger: logger.logEvent)\n\t\t\t\t\t\t.observe { _ in }\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendFailed(.Error1)\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tit(\"should only output the events specified in the `events` parameter\") {\n\t\t\t\t\tlet expectations: [String -> Void] = [\n\t\t\t\t\t\t{ event in expect(event) == \"[test.rac] Failed Error1\" },\n\t\t\t\t\t]\n\t\t\t\t\t\n\t\t\t\t\tlet logger = TestLogger(expectations: expectations)\n\t\t\t\t\t\n\t\t\t\t\tlet (signal, observer) = Signal<Int, TestError>.pipe()\n\t\t\t\t\tsignal\n\t\t\t\t\t\t.logEvents(identifier: \"test.rac\", events: [.Failed], logger: logger.logEvent)\n\t\t\t\t\t\t.observe { _ in }\n\t\t\t\t\t\n\t\t\t\t\tobserver.sendNext(1)\n\t\t\t\t\tobserver.sendFailed(.Error1)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/TestError.swift",
    "content": "//\n//  TestError.swift\n//  ReactiveCocoa\n//\n//  Created by Almas Sapargali on 1/26/15.\n//  Copyright (c) 2015 GitHub. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nenum TestError: Int {\n\tcase Default = 0\n\tcase Error1 = 1\n\tcase Error2 = 2\n}\n\nextension TestError: ErrorType {\n}\n\n\ninternal extension SignalProducerType {\n\t/// Halts if an error is emitted in the receiver signal.\n\t/// This is useful in tests to be able to just use `startWithNext`\n\t/// in cases where we know that an error won't be emitted.\n\tfunc assumeNoErrors() -> SignalProducer<Value, NoError> {\n\t\treturn self.lift { $0.assumeNoErrors() }\n\t}\n}\n\ninternal extension SignalType {\n\t/// Halts if an error is emitted in the receiver signal.\n\t/// This is useful in tests to be able to just use `startWithNext`\n\t/// in cases where we know that an error won't be emitted.\n\tfunc assumeNoErrors() -> Signal<Value, NoError> {\n\t\treturn self.mapError { error in\n\t\t\tfatalError(\"Unexpected error: \\(error)\")\n\n\t\t\t()\n\t\t}\n\t}\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/Swift/TestLogger.swift",
    "content": "//\n//  TestLogger.swift\n//  ReactiveCocoa\n//\n//  Created by Rui Peres on 29/04/2016.\n//  Copyright © 2016 GitHub. All rights reserved.\n//\n\nimport Foundation\n@testable import ReactiveCocoa\n\nfinal class TestLogger {\n\tprivate var expectations: [String -> Void]\n\t\n\tinit(expectations: [String -> Void]) {\n\t\tself.expectations = expectations\n\t}\n}\n\nextension TestLogger {\n\t\n\tfunc logEvent(identifier: String, event: String, fileName: String, functionName: String, lineNumber: Int) {\n\t\texpectations.removeFirst()(\"[\\(identifier)] \\(event)\")\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/ReactiveCocoaTests/test-data.json",
    "content": "[\n  { \"item\": 1 },\n  { \"item\": 2 },\n  { \"item\": 3 }\n]\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/LICENSE.md",
    "content": "**Copyright (c) 2013 Justin Spahr-Summers**\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\nthe Software, and to permit persons to whom the Software is furnished to do so,\nsubject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\nFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\nCOPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\nIN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/README.md",
    "content": "# objc-build-scripts\n\nThis project is a collection of scripts created with two goals:\n\n 1. To standardize how Objective-C projects are bootstrapped after cloning\n 1. To easily build Objective-C projects on continuous integration servers\n\n## Scripts\n\nRight now, there are two important scripts: [`bootstrap`](#bootstrap) and\n[`cibuild`](#cibuild). Both are Bash scripts, to maximize compatibility and\neliminate pesky system configuration issues (like setting up a working Ruby\nenvironment).\n\nThe structure of the scripts on disk is meant to follow that of a typical Ruby\nproject:\n\n```\nscript/\n    bootstrap\n    cibuild\n```\n\n### bootstrap\n\nThis script is responsible for bootstrapping (initializing) your project after\nit's been checked out. Here, you should install or clone any dependencies that\nare required for a working build and development environment.\n\nBy default, the script will verify that [xctool][] is installed, then initialize\nand update submodules recursively. If any submodules contain `script/bootstrap`,\nthat will be run as well.\n\nTo check that other tools are installed, you can set the `REQUIRED_TOOLS`\nenvironment variable before running `script/bootstrap`, or edit it within the\nscript directly. Note that no installation is performed automatically, though\nthis can always be added within your specific project.\n\n### cibuild\n\nThis script is responsible for building the project, as you would want it built\nfor continuous integration. This is preferable to putting the logic on the CI\nserver itself, since it ensures that any changes are versioned along with the\nsource.\n\nBy default, the script will run [`bootstrap`](#bootstrap), look for any Xcode\nworkspace or project in the working directory, then build all targets/schemes\n(as found by `xcodebuild -list`) using [xctool][].\n\nYou can also specify the schemes to build by passing them into the script:\n\n```sh\nscript/cibuild ReactiveCocoa-Mac ReactiveCocoa-iOS\n```\n\nAs with the `bootstrap` script, there are several environment variables that can\nbe used to customize behavior. They can be set on the command line before\ninvoking the script, or the defaults changed within the script directly.\n\n## Getting Started\n\nTo add the scripts to your project, read the contents of this repository into\na `script` folder:\n\n```\n$ git remote add objc-build-scripts https://github.com/jspahrsummers/objc-build-scripts.git\n$ git fetch objc-build-scripts\n$ git read-tree --prefix=script/ -u objc-build-scripts/master\n```\n\nThen commit the changes, to incorporate the scripts into your own repository's\nhistory. You can also freely tweak the scripts for your specific project's\nneeds.\n\nTo merge in upstream changes later:\n\n```\n$ git fetch -p objc-build-scripts\n$ git merge --ff --squash -Xsubtree=script objc-build-scripts/master\n```\n\n[xctool]: https://github.com/facebook/xctool\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/bootstrap",
    "content": "#!/bin/bash\n\nexport SCRIPT_DIR=$(dirname \"$0\")\n\n##\n## Bootstrap Process\n##\n\nmain ()\n{\n    local submodules=$(git submodule status)\n    local result=$?\n\n    if [ \"$result\" -ne \"0\" ]\n    then\n        exit $result\n    fi\n\n    if [ -n \"$submodules\" ]\n    then\n        echo \"*** Updating submodules...\"\n        update_submodules\n    fi\n}\n\nbootstrap_submodule ()\n{\n    local bootstrap=\"script/bootstrap\"\n\n    if [ -e \"$bootstrap\" ]\n    then\n        echo \"*** Bootstrapping $name...\"\n        \"$bootstrap\" >/dev/null\n    else\n        update_submodules\n    fi\n}\n\nupdate_submodules ()\n{\n    git submodule sync --quiet && git submodule update --init && git submodule foreach --quiet bootstrap_submodule\n}\n\nexport -f bootstrap_submodule\nexport -f update_submodules\n\nmain\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/build",
    "content": "#!/bin/bash\n\nBUILD_DIRECTORY=\"build\"\nCONFIGURATION=Release\n\nif [[ -z $TRAVIS_XCODE_WORKSPACE ]]; then\n    echo \"Error: \\$TRAVIS_XCODE_WORKSPACE is not set.\"\n    exit 1\nfi\n\nif [[ -z $TRAVIS_XCODE_SCHEME ]]; then\n    echo \"Error: \\$TRAVIS_XCODE_SCHEME is not set!\"\n    exit 1\nfi\n\nif [[ -z $XCODE_ACTION ]]; then\n    echo \"Error: \\$XCODE_ACTION is not set!\"\n    exit 1\nfi\n\nif [[ -z $XCODE_SDK ]]; then\n    echo \"Error: \\$XCODE_SDK is not set!\"\n    exit 1\nfi\n\nif [[ -z $XCODE_DESTINATION ]]; then\n    echo \"Error: \\$XCODE_DESTINATION is not set!\"\n    exit 1\nfi\n\nset -o pipefail\nxcodebuild $XCODE_ACTION \\\n    -workspace \"$TRAVIS_XCODE_WORKSPACE\" \\\n    -scheme \"$TRAVIS_XCODE_SCHEME\" \\\n    -sdk \"$XCODE_SDK\" \\\n    -destination \"$XCODE_DESTINATION\" \\\n    -derivedDataPath \"${BUILD_DIRECTORY}\" \\\n    -configuration $CONFIGURATION \\\n    ENABLE_TESTABILITY=YES \\\n    GCC_GENERATE_DEBUGGING_SYMBOLS=NO \\\n    RUN_CLANG_STATIC_ANALYZER=NO | xcpretty\nresult=$?\n\nif [ \"$result\" -ne 0 ]; then\n    exit $result\nfi\n\n# Compile code in playgrounds \nif [[ $XCODE_SDK = \"macosx\" ]]; then\n    echo \"SDK is $XCODE_SDK, validating playground...\"\n    . script/validate-playground.sh\nfi\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/cibuild",
    "content": "#!/bin/bash\n\nexport SCRIPT_DIR=$(dirname \"$0\")\n\n##\n## Configuration Variables\n##\n\nSCHEMES=\"$@\"\n\nconfig ()\n{\n    # The workspace to build.\n    #\n    # If not set and no workspace is found, the -workspace flag will not be passed\n    # to `xctool`.\n    #\n    # Only one of `XCWORKSPACE` and `XCODEPROJ` needs to be set. The former will\n    # take precedence.\n    : ${XCWORKSPACE=$(find_pattern \"*.xcworkspace\")}\n\n    # The project to build.\n    #\n    # If not set and no project is found, the -project flag will not be passed\n    # to `xctool`.\n    #\n    # Only one of `XCWORKSPACE` and `XCODEPROJ` needs to be set. The former will\n    # take precedence.\n    : ${XCODEPROJ=$(find_pattern \"*.xcodeproj\")}\n\n    # A bootstrap script to run before building.\n    #\n    # If this file does not exist, it is not considered an error.\n    : ${BOOTSTRAP=\"$SCRIPT_DIR/bootstrap\"}\n\n    # Extra options to pass to xctool.\n    : ${XCTOOL_OPTIONS=\"RUN_CLANG_STATIC_ANALYZER=NO\"}\n\n    # A whitespace-separated list of default schemes to build.\n    #\n    # Individual names can be quoted to avoid word splitting.\n    : ${SCHEMES:=$(xcodebuild -list -project \"$XCODEPROJ\" 2>/dev/null | awk -f \"$SCRIPT_DIR/schemes.awk\")}\n\n    # A whitespace-separated list of executables that must be present and locatable.\n    : ${REQUIRED_TOOLS=\"xctool\"}\n\n    export XCWORKSPACE\n    export XCODEPROJ\n    export BOOTSTRAP\n    export XCTOOL_OPTIONS\n    export SCHEMES\n    export REQUIRED_TOOLS\n}\n\n##\n## Build Process\n##\n\nmain ()\n{\n    config\n\n    if [ -n \"$REQUIRED_TOOLS\" ]\n    then\n        echo \"*** Checking dependencies...\"\n        check_deps\n    fi\n\n    if [ -f \"$BOOTSTRAP\" ]\n    then\n        echo \"*** Bootstrapping...\"\n        \"$BOOTSTRAP\" || exit $?\n    fi\n\n    echo \"*** The following schemes will be built:\"\n    echo \"$SCHEMES\" | xargs -n 1 echo \"  \"\n    echo\n\n    echo \"$SCHEMES\" | xargs -n 1 | (\n        local status=0\n\n        while read scheme\n        do\n            build_scheme \"$scheme\" || status=1\n        done\n\n        exit $status\n    )\n}\n\ncheck_deps ()\n{\n    for tool in $REQUIRED_TOOLS\n    do\n        which -s \"$tool\"\n        if [ \"$?\" -ne \"0\" ]\n        then\n            echo \"*** Error: $tool not found. Please install it and cibuild again.\"\n            exit 1\n        fi\n    done\n}\n\nfind_pattern ()\n{\n    ls -d $1 2>/dev/null | head -n 1\n}\n\nrun_xctool ()\n{\n    if [ -n \"$XCWORKSPACE\" ]\n    then\n        xctool -workspace \"$XCWORKSPACE\" $XCTOOL_OPTIONS \"$@\" 2>&1\n    elif [ -n \"$XCODEPROJ\" ]\n    then\n        xctool -project \"$XCODEPROJ\" $XCTOOL_OPTIONS \"$@\" 2>&1\n    else\n        echo \"*** No workspace or project file found.\"\n        exit 1\n    fi\n}\n\nparse_build ()\n{\n    awk -f \"$SCRIPT_DIR/xctool.awk\" 2>&1 >/dev/null\n}\n\nbuild_scheme ()\n{\n    local scheme=$1\n\n    echo \"*** Building and testing $scheme...\"\n    echo\n\n    local sdkflag=\n    local action=test\n\n    # Determine whether we can run unit tests for this target.\n    run_xctool -scheme \"$scheme\" run-tests | parse_build\n\n    local awkstatus=$?\n\n    if [ \"$awkstatus\" -eq \"1\" ]\n    then\n        # SDK not found, try for iphonesimulator.\n        sdkflag=\"-sdk iphonesimulator\"\n\n        # Determine whether the unit tests will run with iphonesimulator\n        run_xctool $sdkflag -scheme \"$scheme\" run-tests | parse_build\n\n        awkstatus=$?\n\n        if [ \"$awkstatus\" -ne \"0\" ]\n        then\n            # Unit tests will not run on iphonesimulator.\n            sdkflag=\"\"\n        fi\n    fi\n\n    if [ \"$awkstatus\" -ne \"0\" ]\n    then\n        # Unit tests aren't supported.\n        action=build\n    fi\n\n    run_xctool $sdkflag -scheme \"$scheme\" $action\n}\n\nexport -f build_scheme\nexport -f run_xctool\nexport -f parse_build\n\nmain\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/schemes.awk",
    "content": "BEGIN {\n    FS = \"\\n\";\n}\n\n/Schemes:/ {\n    while (getline && $0 != \"\") {\n        sub(/^ +/, \"\");\n        print \"'\" $0 \"'\";\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/targets.awk",
    "content": "BEGIN {\n    FS = \"\\n\";\n}\n\n/Targets:/ {\n    while (getline && $0 != \"\") {\n        if ($0 ~ /Tests/) continue;\n\n        sub(/^ +/, \"\");\n        print \"'\" $0 \"'\";\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/validate-playground.sh",
    "content": "#!/bin/bash\n\n# Bash script to lint the content of playgrounds\n# Heavily based on RxSwift's \n# https://github.com/ReactiveX/RxSwift/blob/master/scripts/validate-playgrounds.sh\n\nif [ -z \"$BUILD_DIRECTORY\" ]; then\n\techo \"\\$BUILD_DIRECTORY is not set. Are you trying to run \\`validate-playgrounds.sh\\` without building RAC first?\\n\"\n\techo \"To validate the playground, run \\`script/build\\`.\"\n\texit 1\nfi\n\nPAGES_PATH=${BUILD_DIRECTORY}/Build/Products/${CONFIGURATION}/all-playground-pages.swift\n\ncat ReactiveCocoa.playground/Sources/*.swift ReactiveCocoa.playground/Pages/**/*.swift > ${PAGES_PATH}\n\nswift -v -D NOT_IN_PLAYGROUND -F ${BUILD_DIRECTORY}/Build/Products/${CONFIGURATION} ${PAGES_PATH} > /dev/null\nresult=$?\n\n# Cleanup\nrm -Rf $BUILD_DIRECTORY\n\nexit $result\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/xcodebuild.awk",
    "content": "# Exit statuses:\n#\n# 0 - No errors found.\n# 1 - Build or test failure. Errors will be logged automatically.\n# 2 - Untestable target. Retry with the \"build\" action.\n\nBEGIN {\n    status = 0;\n}\n\n{\n    print;\n    fflush(stdout);\n}\n\n/is not valid for Testing/ {\n    exit 2;\n}\n\n/[0-9]+: (error|warning):/ {\n    errors = errors $0 \"\\n\";\n}\n\n/(TEST|BUILD) FAILED/ {\n    status = 1;\n}\n\nEND {\n    if (length(errors) > 0) {\n        print \"\\n*** All errors:\\n\" errors;\n    }\n\n    fflush(stdout);\n    exit status;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/ReactiveCocoa/script/xctool.awk",
    "content": "# Exit statuses:\n#\n# 0 - No errors found.\n# 1 - Wrong SDK. Retry with SDK `iphonesimulator`.\n# 2 - Missing target.\n\nBEGIN {\n    status = 0;\n}\n\n{\n    print;\n}\n\n/Testing with the '(.+)' SDK is not yet supported/ {\n    status = 1;\n}\n\n/does not contain a target named/ {\n    status = 2;\n}\n\nEND {\n    exit status;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/.gitignore",
    "content": ".DS_Store\nxcuserdata\n*.xcuserdatad\n*.xccheckout\n*.mode*\n*.pbxuser\n\nCarthage/Build\n.build\n"
  },
  {
    "path": "Carthage/Checkouts/Result/.gitmodules",
    "content": "[submodule \"Carthage/Checkouts/Box\"]\n\tpath = Carthage/Checkouts/Box\n\turl = https://github.com/robrix/Box.git\n"
  },
  {
    "path": "Carthage/Checkouts/Result/.swift-version",
    "content": "DEVELOPMENT-SNAPSHOT-2016-05-31-a\n"
  },
  {
    "path": "Carthage/Checkouts/Result/.travis.yml",
    "content": "matrix:\n  include:\n    - script:\n        - xcodebuild test -scheme Result-Mac\n        - xcodebuild test -scheme Result-iOS -sdk iphonesimulator\n        - xcodebuild test -scheme Result-tvOS -sdk appletvsimulator\n        - xcodebuild build -scheme Result-watchOS -sdk watchsimulator\n        - pod lib lint\n      env: JOB=Xcode7.3\n      os: osx\n      osx_image: xcode7.3\n      language: objective-c\n    - script:\n        - xcodebuild test -scheme Result-Mac\n        - xcodebuild build -scheme Result-iOS -sdk iphonesimulator -destination \"name=iPhone 6s\"\n        - xcodebuild test -scheme Result-tvOS -sdk appletvsimulator -destination \"name=Apple TV 1080p\"\n        - xcodebuild build -scheme Result-watchOS -sdk watchsimulator -destination \"name=Apple Watch - 38mm\"\n      env: JOB=Xcode8\n      os: osx\n      osx_image: xcode8\n      language: objective-c\n    - script:\n        - swift build\n        - swift test\n      env: JOB=SPM\n      os: osx\n      osx_image: xcode7.3\n      language: objective-c\n      install:\n        - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\n    - script:\n        - swift build\n        - swift test\n      env: JOB=Linux\n      sudo: required\n      dist: trusty\n      language: generic\n      install:\n        - eval \"$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/02090c7ede5a637b76e6df1710e83cd0bbe7dcdf/swiftenv-install.sh)\"\nnotifications:\n  email: false\n"
  },
  {
    "path": "Carthage/Checkouts/Result/CONTRIBUTING.md",
    "content": "We love that you're interested in contributing to this project!\n\nTo make the process as painless as possible, we have just a couple of guidelines\nthat should make life easier for everyone involved.\n\n## Prefer Pull Requests\n\nIf you know exactly how to implement the feature being suggested or fix the bug\nbeing reported, please open a pull request instead of an issue. Pull requests are easier than\npatches or inline code blocks for discussing and merging the changes.\n\nIf you can't make the change yourself, please open an issue after making sure\nthat one isn't already logged.\n\n## Contributing Code\n\nFork this repository, make it awesomer (preferably in a branch named for the\ntopic), send a pull request!\n\nAll code contributions should match our [coding\nconventions](https://github.com/github/swift-style-guide).\n\nThanks for contributing! :boom::camel:\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Cartfile",
    "content": "github \"robrix/Box\"\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Cartfile.resolved",
    "content": "github \"robrix/Box\" \"1.2.2\"\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/.gitignore",
    "content": ".DS_Store\nbuild\nxcuserdata\n*.mode*\n*.pbxuser\n*.xcuserdatad\n*.xccheckout\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box/Box.h",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\n/// Project version number for Box.\nextern double BoxVersionNumber;\n\n/// Project version string for Box.\nextern const unsigned char BoxVersionString[];\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box/Box.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\n/// Wraps a type `T` in a reference type.\n///\n/// Typically this is used to work around limitations of value types (for example, the lack of codegen for recursive value types and type-parameterized enums with >1 case). It is also useful for sharing a single (presumably large) value without copying it.\npublic final class Box<T>: BoxType, Printable {\n\t/// Initializes a `Box` with the given value.\n\tpublic init(_ value: T) {\n\t\tself.value = value\n\t}\n\n\n\t/// Constructs a `Box` with the given `value`.\n\tpublic class func unit(value: T) -> Box<T> {\n\t\treturn Box(value)\n\t}\n\n\n\t/// The (immutable) value wrapped by the receiver.\n\tpublic let value: T\n\n\t/// Constructs a new Box by transforming `value` by `f`.\n\tpublic func map<U>(@noescape f: T -> U) -> Box<U> {\n\t\treturn Box<U>(f(value))\n\t}\n\n\n\t// MARK: Printable\n\n\tpublic var description: String {\n\t\treturn toString(value)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box/BoxType.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\n// MARK: BoxType\n\n/// The type conformed to by all boxes.\npublic protocol BoxType {\n\t/// The type of the wrapped value.\n\ttypealias Value\n\n\t/// Initializes an intance of the type with a value.\n\tinit(_ value: Value)\n\n\t/// The wrapped value.\n\tvar value: Value { get }\n}\n\n/// The type conformed to by mutable boxes.\npublic protocol MutableBoxType: BoxType {\n\t/// The (mutable) wrapped value.\n\tvar value: Value { get set }\n}\n\n\n// MARK: Equality\n\n/// Equality of `BoxType`s of `Equatable` types.\n///\n/// We cannot declare that e.g. `Box<T: Equatable>` conforms to `Equatable`, so this is a relatively ad hoc definition.\npublic func == <B: BoxType where B.Value: Equatable> (lhs: B, rhs: B) -> Bool {\n\treturn lhs.value == rhs.value\n}\n\n/// Inequality of `BoxType`s of `Equatable` types.\n///\n/// We cannot declare that e.g. `Box<T: Equatable>` conforms to `Equatable`, so this is a relatively ad hoc definition.\npublic func != <B: BoxType where B.Value: Equatable> (lhs: B, rhs: B) -> Bool {\n\treturn lhs.value != rhs.value\n}\n\n\n// MARK: Map\n\n/// Maps the value of a box into a new box.\npublic func map<B: BoxType, C: BoxType>(v: B, @noescape f: B.Value -> C.Value) -> C {\n\treturn C(f(v.value))\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.antitypical.$(PRODUCT_NAME:rfc1034identifier)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.2.1</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2014 Rob Rix. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box/MutableBox.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\n/// Wraps a type `T` in a mutable reference type.\n///\n/// While this, like `Box<T>` could be used to work around limitations of value types, it is much more useful for sharing a single mutable value such that mutations are shared.\n///\n/// As with all mutable state, this should be used carefully, for example as an optimization, rather than a default design choice. Most of the time, `Box<T>` will suffice where any `BoxType` is needed.\npublic final class MutableBox<T>: MutableBoxType, Printable {\n\t/// Initializes a `MutableBox` with the given value.\n\tpublic init(_ value: T) {\n\t\tself.value = value\n\t}\n\n\t/// The (mutable) value wrapped by the receiver.\n\tpublic var value: T\n\n\t/// Constructs a new MutableBox by transforming `value` by `f`.\n\tpublic func map<U>(@noescape f: T -> U) -> MutableBox<U> {\n\t\treturn MutableBox<U>(f(value))\n\t}\n\n\t// MARK: Printable\n\n\tpublic var description: String {\n\t\treturn toString(value)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\tD470AC3D19E86128003DA6C6 /* Box.h in Headers */ = {isa = PBXBuildFile; fileRef = D470AC3C19E86128003DA6C6 /* Box.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD470AC4319E86128003DA6C6 /* Box.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D470AC3719E86128003DA6C6 /* Box.framework */; };\n\t\tD470AC4A19E86128003DA6C6 /* BoxTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC4919E86128003DA6C6 /* BoxTests.swift */; };\n\t\tD470AC5619E861E2003DA6C6 /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5519E861E2003DA6C6 /* Box.swift */; };\n\t\tD470AC5819E86790003DA6C6 /* BoxType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5719E86790003DA6C6 /* BoxType.swift */; };\n\t\tD470AC5A19E868D3003DA6C6 /* MutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5919E868D3003DA6C6 /* MutableBox.swift */; };\n\t\tD470AC5C19E86A2E003DA6C6 /* MutableBoxTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5B19E86A2E003DA6C6 /* MutableBoxTests.swift */; };\n\t\tD470AC5E19E86B2C003DA6C6 /* BoxTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5D19E86B2C003DA6C6 /* BoxTypeTests.swift */; };\n\t\tF8BB81DE1A939B67001AA352 /* Box.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8BB81D31A939B66001AA352 /* Box.framework */; };\n\t\tF8BB81EC1A939C03001AA352 /* Box.h in Headers */ = {isa = PBXBuildFile; fileRef = D470AC3C19E86128003DA6C6 /* Box.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tF8BB81ED1A939C09001AA352 /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5519E861E2003DA6C6 /* Box.swift */; };\n\t\tF8BB81EE1A939C0D001AA352 /* BoxType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5719E86790003DA6C6 /* BoxType.swift */; };\n\t\tF8BB81EF1A939C0D001AA352 /* MutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5919E868D3003DA6C6 /* MutableBox.swift */; };\n\t\tF8BB81F01A939C1A001AA352 /* BoxTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC4919E86128003DA6C6 /* BoxTests.swift */; };\n\t\tF8BB81F11A939C1A001AA352 /* BoxTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5D19E86B2C003DA6C6 /* BoxTypeTests.swift */; };\n\t\tF8BB81F21A939C1A001AA352 /* MutableBoxTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D470AC5B19E86A2E003DA6C6 /* MutableBoxTests.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\tD470AC4419E86128003DA6C6 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D470AC2E19E86128003DA6C6 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D470AC3619E86128003DA6C6;\n\t\t\tremoteInfo = Box;\n\t\t};\n\t\tF8BB81DF1A939B67001AA352 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D470AC2E19E86128003DA6C6 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = F8BB81D21A939B66001AA352;\n\t\t\tremoteInfo = \"Box-iOS\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\tD470AC3719E86128003DA6C6 /* Box.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Box.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD470AC3B19E86128003DA6C6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD470AC3C19E86128003DA6C6 /* Box.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Box.h; sourceTree = \"<group>\"; };\n\t\tD470AC4219E86128003DA6C6 /* Box-MacTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Box-MacTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD470AC4819E86128003DA6C6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD470AC4919E86128003DA6C6 /* BoxTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BoxTests.swift; sourceTree = \"<group>\"; };\n\t\tD470AC5519E861E2003DA6C6 /* Box.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Box.swift; sourceTree = \"<group>\"; };\n\t\tD470AC5719E86790003DA6C6 /* BoxType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoxType.swift; sourceTree = \"<group>\"; };\n\t\tD470AC5919E868D3003DA6C6 /* MutableBox.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MutableBox.swift; sourceTree = \"<group>\"; };\n\t\tD470AC5B19E86A2E003DA6C6 /* MutableBoxTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MutableBoxTests.swift; sourceTree = \"<group>\"; };\n\t\tD470AC5D19E86B2C003DA6C6 /* BoxTypeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoxTypeTests.swift; sourceTree = \"<group>\"; };\n\t\tF8BB81D31A939B66001AA352 /* Box.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Box.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF8BB81DD1A939B67001AA352 /* Box-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Box-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\tD470AC3319E86128003DA6C6 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD470AC3F19E86128003DA6C6 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD470AC4319E86128003DA6C6 /* Box.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81CF1A939B66001AA352 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81DA1A939B67001AA352 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF8BB81DE1A939B67001AA352 /* Box.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tD470AC2D19E86128003DA6C6 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC3919E86128003DA6C6 /* Box */,\n\t\t\t\tD470AC4619E86128003DA6C6 /* BoxTests */,\n\t\t\t\tD470AC3819E86128003DA6C6 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD470AC3819E86128003DA6C6 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC3719E86128003DA6C6 /* Box.framework */,\n\t\t\t\tD470AC4219E86128003DA6C6 /* Box-MacTests.xctest */,\n\t\t\t\tF8BB81D31A939B66001AA352 /* Box.framework */,\n\t\t\t\tF8BB81DD1A939B67001AA352 /* Box-iOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD470AC3919E86128003DA6C6 /* Box */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC3C19E86128003DA6C6 /* Box.h */,\n\t\t\t\tD470AC5519E861E2003DA6C6 /* Box.swift */,\n\t\t\t\tD470AC5719E86790003DA6C6 /* BoxType.swift */,\n\t\t\t\tD470AC5919E868D3003DA6C6 /* MutableBox.swift */,\n\t\t\t\tD470AC3A19E86128003DA6C6 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = Box;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD470AC3A19E86128003DA6C6 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC3B19E86128003DA6C6 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD470AC4619E86128003DA6C6 /* BoxTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC4919E86128003DA6C6 /* BoxTests.swift */,\n\t\t\t\tD470AC5D19E86B2C003DA6C6 /* BoxTypeTests.swift */,\n\t\t\t\tD470AC5B19E86A2E003DA6C6 /* MutableBoxTests.swift */,\n\t\t\t\tD470AC4719E86128003DA6C6 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = BoxTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD470AC4719E86128003DA6C6 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD470AC4819E86128003DA6C6 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\tD470AC3419E86128003DA6C6 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD470AC3D19E86128003DA6C6 /* Box.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81D01A939B66001AA352 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF8BB81EC1A939C03001AA352 /* Box.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\tD470AC3619E86128003DA6C6 /* Box-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D470AC4D19E86128003DA6C6 /* Build configuration list for PBXNativeTarget \"Box-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD470AC3219E86128003DA6C6 /* Sources */,\n\t\t\t\tD470AC3319E86128003DA6C6 /* Frameworks */,\n\t\t\t\tD470AC3419E86128003DA6C6 /* Headers */,\n\t\t\t\tD470AC3519E86128003DA6C6 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Box-Mac\";\n\t\t\tproductName = Box;\n\t\t\tproductReference = D470AC3719E86128003DA6C6 /* Box.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD470AC4119E86128003DA6C6 /* Box-MacTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D470AC5019E86128003DA6C6 /* Build configuration list for PBXNativeTarget \"Box-MacTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD470AC3E19E86128003DA6C6 /* Sources */,\n\t\t\t\tD470AC3F19E86128003DA6C6 /* Frameworks */,\n\t\t\t\tD470AC4019E86128003DA6C6 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD470AC4519E86128003DA6C6 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Box-MacTests\";\n\t\t\tproductName = BoxTests;\n\t\t\tproductReference = D470AC4219E86128003DA6C6 /* Box-MacTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tF8BB81D21A939B66001AA352 /* Box-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F8BB81E61A939B67001AA352 /* Build configuration list for PBXNativeTarget \"Box-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF8BB81CE1A939B66001AA352 /* Sources */,\n\t\t\t\tF8BB81CF1A939B66001AA352 /* Frameworks */,\n\t\t\t\tF8BB81D01A939B66001AA352 /* Headers */,\n\t\t\t\tF8BB81D11A939B66001AA352 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Box-iOS\";\n\t\t\tproductName = Box;\n\t\t\tproductReference = F8BB81D31A939B66001AA352 /* Box.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tF8BB81DC1A939B67001AA352 /* Box-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F8BB81E91A939B67001AA352 /* Build configuration list for PBXNativeTarget \"Box-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF8BB81D91A939B67001AA352 /* Sources */,\n\t\t\t\tF8BB81DA1A939B67001AA352 /* Frameworks */,\n\t\t\t\tF8BB81DB1A939B67001AA352 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tF8BB81E01A939B67001AA352 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Box-iOSTests\";\n\t\t\tproductName = \"Box-iOSTests\";\n\t\t\tproductReference = F8BB81DD1A939B67001AA352 /* Box-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tD470AC2E19E86128003DA6C6 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0610;\n\t\t\t\tORGANIZATIONNAME = \"Rob Rix\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\tD470AC3619E86128003DA6C6 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t};\n\t\t\t\t\tD470AC4119E86128003DA6C6 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.1;\n\t\t\t\t\t};\n\t\t\t\t\tF8BB81D21A939B66001AA352 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t};\n\t\t\t\t\tF8BB81DC1A939B67001AA352 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = D470AC3119E86128003DA6C6 /* Build configuration list for PBXProject \"Box\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = D470AC2D19E86128003DA6C6;\n\t\t\tproductRefGroup = D470AC3819E86128003DA6C6 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tD470AC3619E86128003DA6C6 /* Box-Mac */,\n\t\t\t\tD470AC4119E86128003DA6C6 /* Box-MacTests */,\n\t\t\t\tF8BB81D21A939B66001AA352 /* Box-iOS */,\n\t\t\t\tF8BB81DC1A939B67001AA352 /* Box-iOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\tD470AC3519E86128003DA6C6 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD470AC4019E86128003DA6C6 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81D11A939B66001AA352 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81DB1A939B67001AA352 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\tD470AC3219E86128003DA6C6 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD470AC5619E861E2003DA6C6 /* Box.swift in Sources */,\n\t\t\t\tD470AC5819E86790003DA6C6 /* BoxType.swift in Sources */,\n\t\t\t\tD470AC5A19E868D3003DA6C6 /* MutableBox.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD470AC3E19E86128003DA6C6 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD470AC5C19E86A2E003DA6C6 /* MutableBoxTests.swift in Sources */,\n\t\t\t\tD470AC4A19E86128003DA6C6 /* BoxTests.swift in Sources */,\n\t\t\t\tD470AC5E19E86B2C003DA6C6 /* BoxTypeTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81CE1A939B66001AA352 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF8BB81ED1A939C09001AA352 /* Box.swift in Sources */,\n\t\t\t\tF8BB81EE1A939C0D001AA352 /* BoxType.swift in Sources */,\n\t\t\t\tF8BB81EF1A939C0D001AA352 /* MutableBox.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF8BB81D91A939B67001AA352 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF8BB81F01A939C1A001AA352 /* BoxTests.swift in Sources */,\n\t\t\t\tF8BB81F11A939C1A001AA352 /* BoxTypeTests.swift in Sources */,\n\t\t\t\tF8BB81F21A939C1A001AA352 /* MutableBoxTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\tD470AC4519E86128003DA6C6 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D470AC3619E86128003DA6C6 /* Box-Mac */;\n\t\t\ttargetProxy = D470AC4419E86128003DA6C6 /* PBXContainerItemProxy */;\n\t\t};\n\t\tF8BB81E01A939B67001AA352 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = F8BB81D21A939B66001AA352 /* Box-iOS */;\n\t\t\ttargetProxy = F8BB81DF1A939B67001AA352 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\tD470AC4B19E86128003DA6C6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD470AC4C19E86128003DA6C6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD470AC4E19E86128003DA6C6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Box/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Box;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD470AC4F19E86128003DA6C6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Box/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Box;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD470AC5119E86128003DA6C6 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = BoxTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD470AC5219E86128003DA6C6 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = BoxTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF8BB81E71A939B67001AA352 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Box/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Box;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF8BB81E81A939B67001AA352 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Box/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Box;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF8BB81EA1A939B67001AA352 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = BoxTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF8BB81EB1A939B67001AA352 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(SDKROOT)/Developer/Library/Frameworks\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = BoxTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tD470AC3119E86128003DA6C6 /* Build configuration list for PBXProject \"Box\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD470AC4B19E86128003DA6C6 /* Debug */,\n\t\t\t\tD470AC4C19E86128003DA6C6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD470AC4D19E86128003DA6C6 /* Build configuration list for PBXNativeTarget \"Box-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD470AC4E19E86128003DA6C6 /* Debug */,\n\t\t\t\tD470AC4F19E86128003DA6C6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD470AC5019E86128003DA6C6 /* Build configuration list for PBXNativeTarget \"Box-MacTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD470AC5119E86128003DA6C6 /* Debug */,\n\t\t\t\tD470AC5219E86128003DA6C6 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF8BB81E61A939B67001AA352 /* Build configuration list for PBXNativeTarget \"Box-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF8BB81E71A939B67001AA352 /* Debug */,\n\t\t\t\tF8BB81E81A939B67001AA352 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF8BB81E91A939B67001AA352 /* Build configuration list for PBXNativeTarget \"Box-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF8BB81EA1A939B67001AA352 /* Debug */,\n\t\t\t\tF8BB81EB1A939B67001AA352 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = D470AC2E19E86128003DA6C6 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Box.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box.xcodeproj/xcshareddata/xcschemes/Box-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0630\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D470AC3619E86128003DA6C6\"\n               BuildableName = \"Box.framework\"\n               BlueprintName = \"Box-Mac\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D470AC4119E86128003DA6C6\"\n               BuildableName = \"Box-MacTests.xctest\"\n               BlueprintName = \"Box-MacTests\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D470AC4119E86128003DA6C6\"\n               BuildableName = \"Box-MacTests.xctest\"\n               BlueprintName = \"Box-MacTests\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D470AC3619E86128003DA6C6\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-Mac\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D470AC3619E86128003DA6C6\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-Mac\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D470AC3619E86128003DA6C6\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-Mac\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/Box.xcodeproj/xcshareddata/xcschemes/Box-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0630\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F8BB81D21A939B66001AA352\"\n               BuildableName = \"Box.framework\"\n               BlueprintName = \"Box-iOS\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F8BB81DC1A939B67001AA352\"\n               BuildableName = \"Box-iOSTests.xctest\"\n               BlueprintName = \"Box-iOSTests\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F8BB81DC1A939B67001AA352\"\n               BuildableName = \"Box-iOSTests.xctest\"\n               BlueprintName = \"Box-iOSTests\"\n               ReferencedContainer = \"container:Box.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F8BB81D21A939B66001AA352\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-iOS\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F8BB81D21A939B66001AA352\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-iOS\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F8BB81D21A939B66001AA352\"\n            BuildableName = \"Box.framework\"\n            BlueprintName = \"Box-iOS\"\n            ReferencedContainer = \"container:Box.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/BoxTests/BoxTests.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\nimport Box\nimport XCTest\n\nclass BoxTests: XCTestCase {\n\tfunc testBox() {\n\t\tlet box = Box(1)\n\t\tXCTAssertEqual(box.value, 1)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/BoxTests/BoxTypeTests.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\nimport Box\nimport XCTest\n\nclass BoxTypeTests: XCTestCase {\n\tfunc testEquality() {\n\t\tlet (a, b, c) = (Box(1), Box(1), Box(2))\n\t\tXCTAssertTrue(a == b)\n\t\tXCTAssertFalse(b == c)\n\t}\n\n\tfunc testInequality() {\n\t\tlet (a, b, c) = (Box(1), Box(1), Box(2))\n\t\tXCTAssertFalse(a != b)\n\t\tXCTAssertTrue(b != c)\n\t}\n\n\tfunc testMap() {\n\t\tlet a = Box(1)\n\t\tlet b: Box<String> = map(a, toString)\n\t\tXCTAssertEqual(b.value, \"1\")\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/BoxTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.antitypical.$(PRODUCT_NAME:rfc1034identifier)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/BoxTests/MutableBoxTests.swift",
    "content": "//  Copyright (c) 2014 Rob Rix. All rights reserved.\n\nimport Box\nimport XCTest\n\nclass MutableBoxTests: XCTestCase {\n\tfunc testBox() {\n\t\tlet box = MutableBox(1)\n\t\tXCTAssertEqual(box.value, 1)\n\t}\n\n\tfunc testMutation() {\n\t\tlet box = MutableBox(1)\n\t\tbox.value = 2\n\t\tXCTAssertEqual(box.value, 2)\n\t}\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2014 Rob Rix\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."
  },
  {
    "path": "Carthage/Checkouts/Result/Carthage/Checkouts/Box/README.md",
    "content": "# Box\n\nThis is a Swift microframework which implements `Box<T>` & `MutableBox<T>`, with implementations of `==`/`!=` where `T`: `Equatable`.\n\n`Box` is typically used to work around limitations of value types:\n\n- recursive `struct`s/`enum`s\n- type-parameterized `enum`s where more than one `case` has a value\n\n## Use\n\nWrapping & unwrapping a `Box`:\n\n```swift\n// Wrap:\nlet box = Box(1)\n\n// Unwrap:\nlet value = box.value\n```\n\nChanging the value of a `MutableBox`:\n\n```swift\n// Mutation:\nlet mutableBox = MutableBox(1)\nmutableBox.value = 2\n```\n\nBuilding a recursive value type:\n\n```swift\nstruct BinaryTree {\n\tlet value: Int\n\tlet left: Box<BinaryTree>?\n\tlet right: Box<BinaryTree>?\n}\n```\n\nBuilding a parameterized `enum`:\n\n```swift\nenum Result<T> {\n\tcase Success(Box<T>)\n\tcase Failure(NSError)\n}\n```\n\nSee the sources for more details.\n\n## Integration\n\n1. Add this repo as a submodule in e.g. `External/Box`:\n  \n        git submodule add https://github.com/robrix/Box.git External/Box\n2. Drag `Box.xcodeproj` into your `.xcworkspace`/`.xcodeproj`.\n3. Add `Box.framework` to your target’s `Link Binary With Libraries` build phase.\n4. You may also want to add a `Copy Files` phase which copies `Box.framework` (and any other framework dependencies you need) into your bundle’s `Frameworks` directory. If your target is a framework, you may instead want the client app to include `Box.framework`.\n"
  },
  {
    "path": "Carthage/Checkouts/Result/LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2014 Rob Rix\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."
  },
  {
    "path": "Carthage/Checkouts/Result/Package.swift",
    "content": "import PackageDescription\n\nlet package = Package(\n    name: \"Result\",\n    targets: [\n        Target(\n            name: \"Result\"\n        )\n    ]\n)\n"
  },
  {
    "path": "Carthage/Checkouts/Result/README.md",
    "content": "# Result\n\n[![Build Status](https://travis-ci.org/antitypical/Result.svg?branch=master)](https://travis-ci.org/antitypical/Result)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![CocoaPods](https://img.shields.io/cocoapods/v/Result.svg)](https://cocoapods.org/)\n[![Reference Status](https://www.versioneye.com/objective-c/result/reference_badge.svg?style=flat)](https://www.versioneye.com/objective-c/result/references)\n\nThis is a Swift µframework providing `Result<Value, Error>`.\n\n`Result<Value, Error>` values are either successful (wrapping `Value`) or failed (wrapping `Error`). This is similar to Swift’s native `Optional` type: `Success` is like `Some`, and `Failure` is like `None` except with an associated `ErrorType` value. The addition of an associated `ErrorType` allows errors to be passed along for logging or displaying to the user.\n\nUsing this µframework instead of rolling your own `Result` type allows you to easily interface with other frameworks that also use `Result`.\n\n## Use\n\nUse `Result` whenever an operation has the possibility of failure. Consider the following example of a function that tries to extract a `String` for a given key from a JSON `Dictionary`.\n\n```swift\ntypealias JSONObject = [String:AnyObject]\n\nenum JSONError : ErrorType {\n    case NoSuchKey(String)\n    case TypeMismatch\n}\n\nfunc stringForKey(json: JSONObject, key: String) -> Result<String, JSONError> {\n    guard let value = json[key] else {\n        return .Failure(.NoSuchKey(key))\n    }\n    \n    if let value = value as? String {\n        return .Success(value)\n    }\n    else {\n        return .Failure(.TypeMismatch)\n    }\n}\n```\n\nThis function provides a more robust wrapper around the default subscripting provided by `Dictionary`. Rather than return `AnyObject?`, it returns a `Result` that either contains the `String` value for the given key, or an `ErrorType` detailing what went wrong.\n\nOne simple way to handle a `Result` is to deconstruct it using a `switch` statement.\n\n```swift\nswitch stringForKey(json, key: \"email\") {\n\ncase let .Success(email):\n    print(\"The email is \\(email)\")\n    \ncase let .Failure(JSONError.NoSuchKey(key)):\n    print(\"\\(key) is not a valid key\")\n    \ncase .Failure(JSONError.TypeMismatch):\n    print(\"Didn't have the right type\")\n}\n```\n\nUsing a `switch` statement allows powerful pattern matching, and ensures all possible results are covered. Swift 2.0 offers new ways to deconstruct enums like the `if-case` statement, but be wary as such methods do not ensure errors are handled.\n\nOther methods available for processing `Result` are detailed in the [API documentation](http://cocoadocs.org/docsets/Result/).\n\n## Result vs. Throws\n\nSwift 2.0 introduces error handling via throwing and catching `ErrorType`. `Result` accomplishes the same goal by encapsulating the result instead of hijacking control flow. The `Result` abstraction enables powerful functionality such as `map` and `flatMap`, making `Result` more composable than `throw`.\n\nSince dealing with APIs that throw is common, you can convert such functions into a `Result` by using the `materialize` method. Conversely, a `Result` can be used to throw an error by calling `dematerialize`.\n\n## Higher Order Functions\n\n`map` and `flatMap` operate the same as `Optional.map` and `Optional.flatMap` except they apply to `Result`.\n\n`map` transforms a `Result` into a `Result` of a new type. It does this by taking a function that transforms the `Value` type into a new value. This transformation is only applied in the case of a `Success`. In the case of a `Failure`, the associated error is re-wrapped in the new `Result`.\n\n```swift\n// transforms a Result<Int, JSONError> to a Result<String, JSONError>\nlet idResult = intForKey(json, key:\"id\").map { id in String(id) }\n```\n\nHere, the final result is either the id as a `String`, or carries over the `.Failure` from the previous result.\n\n`flatMap` is similar to `map` in that in transforms the `Result` into another `Result`. However, the function passed into `flatMap` must return a `Result`.\n\nAn in depth discussion of `map` and `flatMap` is beyond the scope of this documentation. If you would like a deeper understanding, read about functors and monads. This article is a good place to [start](http://www.javiersoto.me/post/106875422394).\n\n## Integration\n\n1. Add this repository as a submodule and/or [add it to your Cartfile](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfile) if you’re using [carthage](https://github.com/Carthage/Carthage/) to manage your dependencies.\n2. Drag `Result.xcodeproj` into your project or workspace.\n3. Link your target against `Result.framework`.\n4. Application targets should ensure that the framework gets copied into their application bundle. (Framework targets should instead require the application linking them to include Result.)\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.1.3</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2015 Rob Rix. All rights reserved.</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result/Result.h",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n/// Project version number for Result.\nextern double ResultVersionNumber;\n\n/// Project version string for Result.\nextern const unsigned char ResultVersionString[];\n\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result/Result.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n/// An enum representing either a failure with an explanatory error, or a success with a result value.\npublic enum Result<T, Error: ResultErrorType>: ResultType, CustomStringConvertible, CustomDebugStringConvertible {\n\tcase Success(T)\n\tcase Failure(Error)\n\n\t// MARK: Constructors\n\n\t/// Constructs a success wrapping a `value`.\n\tpublic init(value: T) {\n\t\tself = .Success(value)\n\t}\n\n\t/// Constructs a failure wrapping an `error`.\n\tpublic init(error: Error) {\n\t\tself = .Failure(error)\n\t}\n\n\t/// Constructs a result from an Optional, failing with `Error` if `nil`.\n#if swift(>=3)\n\tpublic init(_ value: T?, failWith: @autoclosure () -> Error) {\n\t\tself = value.map(Result.Success) ?? .Failure(failWith())\n\t}\n#else\n\tpublic init(_ value: T?, @autoclosure failWith: () -> Error) {\n\t\tself = value.map(Result.Success) ?? .Failure(failWith())\n\t}\n#endif\n\n\t/// Constructs a result from a function that uses `throw`, failing with `Error` if throws.\n#if swift(>=3)\n\tpublic init(_ f: @autoclosure () throws -> T) {\n\t\tself.init(attempt: f)\n\t}\n#else\n\tpublic init(@autoclosure _ f: () throws -> T) {\n\t\tself.init(attempt: f)\n\t}\n#endif\n\n\t/// Constructs a result from a function that uses `throw`, failing with `Error` if throws.\n#if swift(>=3)\n\tpublic init(attempt f: @noescape () throws -> T) {\n\t\tdo {\n\t\t\tself = .Success(try f())\n\t\t} catch {\n\t\t\tself = .Failure(error as! Error)\n\t\t}\n\t}\n#else\n\tpublic init(@noescape attempt f: () throws -> T) {\n\t\tdo {\n\t\t\tself = .Success(try f())\n\t\t} catch {\n\t\t\tself = .Failure(error as! Error)\n\t\t}\n\t}\n#endif\n\n\t// MARK: Deconstruction\n\n\t/// Returns the value from `Success` Results or `throw`s the error.\n\tpublic func dematerialize() throws -> T {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn value\n\t\tcase let .Failure(error):\n\t\t\tthrow error\n\t\t}\n\t}\n\n\t/// Case analysis for Result.\n\t///\n\t/// Returns the value produced by applying `ifFailure` to `Failure` Results, or `ifSuccess` to `Success` Results.\n#if swift(>=3)\n\tpublic func analysis<Result>(ifSuccess: @noescape (T) -> Result, ifFailure: @noescape (Error) -> Result) -> Result {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn ifSuccess(value)\n\t\tcase let .Failure(value):\n\t\t\treturn ifFailure(value)\n\t\t}\n\t}\n#else\n\tpublic func analysis<Result>(@noescape ifSuccess ifSuccess: T -> Result, @noescape ifFailure: Error -> Result) -> Result {\n\t\tswitch self {\n\t\tcase let .Success(value):\n\t\t\treturn ifSuccess(value)\n\t\tcase let .Failure(value):\n\t\t\treturn ifFailure(value)\n\t\t}\n\t}\n#endif\n\n\t// MARK: Errors\n\n\t/// The domain for errors constructed by Result.\n\tpublic static var errorDomain: String { return \"com.antitypical.Result\" }\n\n\t/// The userInfo key for source functions in errors constructed by Result.\n\tpublic static var functionKey: String { return \"\\(errorDomain).function\" }\n\n\t/// The userInfo key for source file paths in errors constructed by Result.\n\tpublic static var fileKey: String { return \"\\(errorDomain).file\" }\n\n\t/// The userInfo key for source file line numbers in errors constructed by Result.\n\tpublic static var lineKey: String { return \"\\(errorDomain).line\" }\n\n\t#if os(Linux)\n\tprivate typealias UserInfoType = Any\n\t#else\n\tprivate typealias UserInfoType = AnyObject\n\t#endif\n\n\t/// Constructs an error.\n#if swift(>=3)\n\tpublic static func error(_ message: String? = nil, function: String = #function, file: String = #file, line: Int = #line) -> NSError {\n\t\tvar userInfo: [String: UserInfoType] = [\n\t\t                                       \tfunctionKey: function,\n\t\t                                       \tfileKey: file,\n\t\t                                       \tlineKey: line,\n\t\t                                       \t]\n\t\t\n\t\tif let message = message {\n\t\t\tuserInfo[NSLocalizedDescriptionKey] = message\n\t\t}\n\t\t\n\t\treturn NSError(domain: errorDomain, code: 0, userInfo: userInfo)\n\t}\n#else\n\tpublic static func error(message: String? = nil, function: String = #function, file: String = #file, line: Int = #line) -> NSError {\n\t\tvar userInfo: [String: UserInfoType] = [\n\t\t\tfunctionKey: function,\n\t\t\tfileKey: file,\n\t\t\tlineKey: line,\n\t\t]\n\n\t\tif let message = message {\n\t\t\tuserInfo[NSLocalizedDescriptionKey] = message\n\t\t}\n\n\t\treturn NSError(domain: errorDomain, code: 0, userInfo: userInfo)\n\t}\n#endif\n\n\n\t// MARK: CustomStringConvertible\n\n\tpublic var description: String {\n\t\treturn analysis(\n\t\t\tifSuccess: { \".Success(\\($0))\" },\n\t\t\tifFailure: { \".Failure(\\($0))\" })\n\t}\n\n\n\t// MARK: CustomDebugStringConvertible\n\n\tpublic var debugDescription: String {\n\t\treturn description\n\t}\n}\n\n// MARK: - Derive result from failable closure\n\n#if swift(>=3)\npublic func materialize<T>(_ f: @noescape () throws -> T) -> Result<T, NSError> {\n\treturn materialize(try f())\n}\n\npublic func materialize<T>(_ f: @autoclosure () throws -> T) -> Result<T, NSError> {\n\tdo {\n\t\treturn .Success(try f())\n\t} catch let error as NSError {\n\t\treturn .Failure(error)\n\t}\n}\n#else\npublic func materialize<T>(@noescape f: () throws -> T) -> Result<T, NSError> {\n\treturn materialize(try f())\n}\n\t\npublic func materialize<T>(@autoclosure f: () throws -> T) -> Result<T, NSError> {\n\tdo {\n\t\treturn .Success(try f())\n\t} catch let error as NSError {\n\t\treturn .Failure(error)\n\t}\n}\n#endif\n\n// MARK: - Cocoa API conveniences\n\n#if !os(Linux)\n\n/// Constructs a Result with the result of calling `try` with an error pointer.\n///\n/// This is convenient for wrapping Cocoa API which returns an object or `nil` + an error, by reference. e.g.:\n///\n///     Result.try { NSData(contentsOfURL: URL, options: .DataReadingMapped, error: $0) }\n#if swift(>=3)\npublic func `try`<T>(_ function: String = #function, file: String = #file, line: Int = #line, `try`: (NSErrorPointer) -> T?) -> Result<T, NSError> {\n\tvar error: NSError?\n\treturn `try`(&error).map(Result.Success) ?? .Failure(error ?? Result<T, NSError>.error(function: function, file: file, line: line))\n}\n#else\npublic func `try`<T>(function: String = #function, file: String = #file, line: Int = #line, `try`: NSErrorPointer -> T?) -> Result<T, NSError> {\n\tvar error: NSError?\n\treturn `try`(&error).map(Result.Success) ?? .Failure(error ?? Result<T, NSError>.error(function: function, file: file, line: line))\n}\n#endif\n\n/// Constructs a Result with the result of calling `try` with an error pointer.\n///\n/// This is convenient for wrapping Cocoa API which returns a `Bool` + an error, by reference. e.g.:\n///\n///     Result.try { NSFileManager.defaultManager().removeItemAtURL(URL, error: $0) }\n#if swift(>=3)\npublic func `try`(_ function: String = #function, file: String = #file, line: Int = #line, `try`: (NSErrorPointer) -> Bool) -> Result<(), NSError> {\n\tvar error: NSError?\n\treturn `try`(&error) ?\n\t\t.Success(())\n\t\t:\t.Failure(error ?? Result<(), NSError>.error(function: function, file: file, line: line))\n}\n#else\npublic func `try`(function: String = #function, file: String = #file, line: Int = #line, `try`: NSErrorPointer -> Bool) -> Result<(), NSError> {\n\tvar error: NSError?\n\treturn `try`(&error) ?\n\t\t.Success(())\n\t:\t.Failure(error ?? Result<(), NSError>.error(function: function, file: file, line: line))\n}\n#endif\n\n#endif\n\n// MARK: - ErrorTypeConvertible conformance\n\t\nextension NSError: ErrorTypeConvertible {\n#if swift(>=3)\n\tpublic static func errorFromErrorType(_ error: ResultErrorType) -> Self {\n\t\tfunc cast<T: NSError>(_ error: ResultErrorType) -> T {\n\t\t\treturn error as! T\n\t\t}\n\n\t\treturn cast(error)\n\t}\n#else\n\tpublic static func errorFromErrorType(error: ResultErrorType) -> Self {\n\t\tfunc cast<T: NSError>(error: ResultErrorType) -> T {\n\t\t\treturn error as! T\n\t\t}\n\n\t\treturn cast(error)\n\t}\n#endif\n}\n\n// MARK: -\n\n/// An “error” that is impossible to construct.\n///\n/// This can be used to describe `Result`s where failures will never\n/// be generated. For example, `Result<Int, NoError>` describes a result that\n/// contains an `Int`eger and is guaranteed never to be a `Failure`.\npublic enum NoError: ResultErrorType { }\n\nimport Foundation\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result/ResultType.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\n#if swift(>=3.0)\n\tpublic typealias ResultErrorType = ErrorProtocol\n#else\n\tpublic typealias ResultErrorType = ErrorType\n#endif\n\n/// A type that can represent either failure with an error or success with a result value.\npublic protocol ResultType {\n\tassociatedtype Value\n\tassociatedtype Error: ResultErrorType\n\t\n\t/// Constructs a successful result wrapping a `value`.\n\tinit(value: Value)\n\n\t/// Constructs a failed result wrapping an `error`.\n\tinit(error: Error)\n\t\n\t/// Case analysis for ResultType.\n\t///\n\t/// Returns the value produced by appliying `ifFailure` to the error if self represents a failure, or `ifSuccess` to the result value if self represents a success.\n#if swift(>=3)\n\tfunc analysis<U>(ifSuccess: @noescape (Value) -> U, ifFailure: @noescape (Error) -> U) -> U\n#else\n\tfunc analysis<U>(@noescape ifSuccess ifSuccess: Value -> U, @noescape ifFailure: Error -> U) -> U\n#endif\n\n\t/// Returns the value if self represents a success, `nil` otherwise.\n\t///\n\t/// A default implementation is provided by a protocol extension. Conforming types may specialize it.\n\tvar value: Value? { get }\n\n\t/// Returns the error if self represents a failure, `nil` otherwise.\n\t///\n\t/// A default implementation is provided by a protocol extension. Conforming types may specialize it.\n\tvar error: Error? { get }\n}\n\npublic extension ResultType {\n\t\n\t/// Returns the value if self represents a success, `nil` otherwise.\n\tpublic var value: Value? {\n\t\treturn analysis(ifSuccess: { $0 }, ifFailure: { _ in nil })\n\t}\n\t\n\t/// Returns the error if self represents a failure, `nil` otherwise.\n\tpublic var error: Error? {\n\t\treturn analysis(ifSuccess: { _ in nil }, ifFailure: { $0 })\n\t}\n\n\t/// Returns a new Result by mapping `Success`es’ values using `transform`, or re-wrapping `Failure`s’ errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func map<U>(_ transform: @noescape (Value) -> U) -> Result<U, Error> {\n\t\treturn flatMap { .Success(transform($0)) }\n\t}\n#else\n\t@warn_unused_result\n\tpublic func map<U>(@noescape transform: Value -> U) -> Result<U, Error> {\n\t\treturn flatMap { .Success(transform($0)) }\n\t}\n#endif\n\n\t/// Returns the result of applying `transform` to `Success`es’ values, or re-wrapping `Failure`’s errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func flatMap<U>(_ transform: @noescape (Value) -> Result<U, Error>) -> Result<U, Error> {\n\t\treturn analysis(\n\t\t\tifSuccess: transform,\n\t\t\tifFailure: Result<U, Error>.Failure)\n\t}\n#else\n\t@warn_unused_result\n\tpublic func flatMap<U>(@noescape transform: Value -> Result<U, Error>) -> Result<U, Error> {\n\t\treturn analysis(\n\t\t\tifSuccess: transform,\n\t\t\tifFailure: Result<U, Error>.Failure)\n\t}\n#endif\n\t\n\t/// Returns a new Result by mapping `Failure`'s values using `transform`, or re-wrapping `Success`es’ values.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func mapError<Error2>(_ transform: @noescape (Error) -> Error2) -> Result<Value, Error2> {\n\t\treturn flatMapError { .Failure(transform($0)) }\n\t}\n#else\n\t@warn_unused_result\n\tpublic func mapError<Error2>(@noescape transform: Error -> Error2) -> Result<Value, Error2> {\n\t\treturn flatMapError { .Failure(transform($0)) }\n\t}\n#endif\n\n\t/// Returns the result of applying `transform` to `Failure`’s errors, or re-wrapping `Success`es’ values.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func flatMapError<Error2>(_ transform: @noescape (Error) -> Result<Value, Error2>) -> Result<Value, Error2> {\n\t\treturn analysis(\n\t\t\tifSuccess: Result<Value, Error2>.Success,\n\t\t\tifFailure: transform)\n\t}\n#else\n\t@warn_unused_result\n\tpublic func flatMapError<Error2>(@noescape transform: Error -> Result<Value, Error2>) -> Result<Value, Error2> {\n\t\treturn analysis(\n\t\t\tifSuccess: Result<Value, Error2>.Success,\n\t\t\tifFailure: transform)\n\t}\n#endif\n}\n\npublic extension ResultType {\n\n\t// MARK: Higher-order functions\n\n\t/// Returns `self.value` if this result is a .Success, or the given value otherwise. Equivalent with `??`\n#if swift(>=3)\n\tpublic func recover(_ value: @autoclosure () -> Value) -> Value {\n\t\treturn self.value ?? value()\n\t}\n#else\n\tpublic func recover(@autoclosure value: () -> Value) -> Value {\n\t\treturn self.value ?? value()\n\t}\n#endif\n\n\t/// Returns this result if it is a .Success, or the given result otherwise. Equivalent with `??`\n#if swift(>=3)\n\tpublic func recoverWith(_ result: @autoclosure () -> Self) -> Self {\n\t\treturn analysis(\n\t\t\tifSuccess: { _ in self },\n\t\t\tifFailure: { _ in result() })\n\t}\n#else\n\tpublic func recoverWith(@autoclosure result: () -> Self) -> Self {\n\t\treturn analysis(\n\t\t\tifSuccess: { _ in self },\n\t\t\tifFailure: { _ in result() })\n\t}\n#endif\n}\n\n/// Protocol used to constrain `tryMap` to `Result`s with compatible `Error`s.\npublic protocol ErrorTypeConvertible: ResultErrorType {\n#if swift(>=3)\n\tstatic func errorFromErrorType(_ error: ResultErrorType) -> Self\n#else\n\tstatic func errorFromErrorType(error: ResultErrorType) -> Self\n#endif\n}\n\npublic extension ResultType where Error: ErrorTypeConvertible {\n\n\t/// Returns the result of applying `transform` to `Success`es’ values, or wrapping thrown errors.\n#if swift(>=3)\n\t@warn_unused_result\n\tpublic func tryMap<U>(_ transform: @noescape (Value) throws -> U) -> Result<U, Error> {\n\t\treturn flatMap { value in\n\t\t\tdo {\n\t\t\t\treturn .Success(try transform(value))\n\t\t\t}\n\t\t\tcatch {\n\t\t\t\tlet convertedError = Error.errorFromErrorType(error)\n\t\t\t\t// Revisit this in a future version of Swift. https://twitter.com/jckarter/status/672931114944696321\n\t\t\t\treturn .Failure(convertedError)\n\t\t\t}\n\t\t}\n\t}\n#else\n\t@warn_unused_result\n\tpublic func tryMap<U>(@noescape transform: Value throws -> U) -> Result<U, Error> {\n\t\treturn flatMap { value in\n\t\t\tdo {\n\t\t\t\treturn .Success(try transform(value))\n\t\t\t}\n\t\t\tcatch {\n\t\t\t\tlet convertedError = Error.errorFromErrorType(error)\n\t\t\t\t// Revisit this in a future version of Swift. https://twitter.com/jckarter/status/672931114944696321\n\t\t\t\treturn .Failure(convertedError)\n\t\t\t}\n\t\t}\n\t}\n#endif\n}\n\n// MARK: - Operators\n\ninfix operator &&& {\n\t/// Same associativity as &&.\n\tassociativity left\n\n\t/// Same precedence as &&.\n\tprecedence 120\n}\n\n/// Returns a Result with a tuple of `left` and `right` values if both are `Success`es, or re-wrapping the error of the earlier `Failure`.\n#if swift(>=3)\npublic func &&& <L: ResultType, R: ResultType where L.Error == R.Error> (left: L, right: @autoclosure () -> R) -> Result<(L.Value, R.Value), L.Error> {\n\treturn left.flatMap { left in right().map { right in (left, right) } }\n}\n#else\npublic func &&& <L: ResultType, R: ResultType where L.Error == R.Error> (left: L, @autoclosure right: () -> R) -> Result<(L.Value, R.Value), L.Error> {\n\treturn left.flatMap { left in right().map { right in (left, right) } }\n}\n#endif\n\ninfix operator >>- {\n\t// Left-associativity so that chaining works like you’d expect, and for consistency with Haskell, Runes, swiftz, etc.\n\tassociativity left\n\n\t// Higher precedence than function application, but lower than function composition.\n\tprecedence 100\n}\n\n/// Returns the result of applying `transform` to `Success`es’ values, or re-wrapping `Failure`’s errors.\n///\n/// This is a synonym for `flatMap`.\n#if swift(>=3)\npublic func >>- <T: ResultType, U> (result: T, transform: @noescape (T.Value) -> Result<U, T.Error>) -> Result<U, T.Error> {\n\treturn result.flatMap(transform)\n}\n#else\npublic func >>- <T: ResultType, U> (result: T, @noescape transform: T.Value -> Result<U, T.Error>) -> Result<U, T.Error> {\n\treturn result.flatMap(transform)\n}\n#endif\n\n/// Returns `true` if `left` and `right` are both `Success`es and their values are equal, or if `left` and `right` are both `Failure`s and their errors are equal.\npublic func == <T: ResultType where T.Value: Equatable, T.Error: Equatable> (left: T, right: T) -> Bool {\n\tif let left = left.value, right = right.value {\n\t\treturn left == right\n\t} else if let left = left.error, right = right.error {\n\t\treturn left == right\n\t}\n\treturn false\n}\n\n/// Returns `true` if `left` and `right` represent different cases, or if they represent the same case but different values.\npublic func != <T: ResultType where T.Value: Equatable, T.Error: Equatable> (left: T, right: T) -> Bool {\n\treturn !(left == right)\n}\n\n/// Returns the value of `left` if it is a `Success`, or `right` otherwise. Short-circuits.\n#if swift(>=3)\npublic func ?? <T: ResultType> (left: T, right: @autoclosure () -> T.Value) -> T.Value {\n\treturn left.recover(right())\n}\n#else\npublic func ?? <T: ResultType> (left: T, @autoclosure right: () -> T.Value) -> T.Value {\n\treturn left.recover(right())\n}\n#endif\n\n/// Returns `left` if it is a `Success`es, or `right` otherwise. Short-circuits.\n#if swift(>=3)\npublic func ?? <T: ResultType> (left: T, right: @autoclosure () -> T) -> T {\n\treturn left.recoverWith(right())\n}\n#else\npublic func ?? <T: ResultType> (left: T, @autoclosure right: () -> T) -> T {\n\treturn left.recoverWith(right())\n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name         = 'Result'\n  s.version      = '2.1.3'\n  s.summary      = 'Swift type modelling the success/failure of arbitrary operations'\n\n  s.homepage     = 'https://github.com/antitypical/Result'\n  s.license      = { :type => 'MIT', :file => 'LICENSE' }\n  s.author       = { 'Rob Rix' => 'rob.rix@github.com' }\n  s.source       = { :git => 'https://github.com/antitypical/Result.git', :tag => s.version }\n  s.source_files  = 'Result/*.swift'\n  s.requires_arc = true\n  s.pod_target_xcconfig = { 'SWIFT_VERSION' => '2.3' }\n  s.ios.deployment_target = '8.0'\n  s.osx.deployment_target = '10.9'\n  s.watchos.deployment_target = '2.0'\n  s.tvos.deployment_target = '9.0'\nend\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t45AE89E61B3A6564007B99D7 /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\t57FCDE3E1BA280DC00130C48 /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\t57FCDE3F1BA280DC00130C48 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\t57FCDE421BA280DC00130C48 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t57FCDE4D1BA280E000130C48 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\t57FCDE561BA2814300130C48 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 57FCDE471BA280DC00130C48 /* Result.framework */; };\n\t\tD035799B1B2B788F005D26AE /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD035799E1B2B788F005D26AE /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD03579A91B2B78A1005D26AE /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD03579B41B2B78C4005D26AE /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03579A31B2B788F005D26AE /* Result.framework */; };\n\t\tD454805D1A9572F5009D7229 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tD45480681A9572F5009D7229 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D45480571A9572F5009D7229 /* Result.framework */; };\n\t\tD454806F1A9572F5009D7229 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD45480881A957362009D7229 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D454807D1A957361009D7229 /* Result.framework */; };\n\t\tD45480971A957465009D7229 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD45480981A957465009D7229 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = D45480961A957465009D7229 /* Result.swift */; };\n\t\tD45480991A9574B8009D7229 /* ResultTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D454806E1A9572F5009D7229 /* ResultTests.swift */; };\n\t\tD454809A1A9574BB009D7229 /* Result.h in Headers */ = {isa = PBXBuildFile; fileRef = D454805C1A9572F5009D7229 /* Result.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tE93621461B35596200948F2A /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n\t\tE93621471B35596200948F2A /* ResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E93621451B35596200948F2A /* ResultType.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t57FCDE571BA2814A00130C48 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 57FCDE3C1BA280DC00130C48;\n\t\t\tremoteInfo = \"Result-tvOS\";\n\t\t};\n\t\tD03579B21B2B78BB005D26AE /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D03579991B2B788F005D26AE;\n\t\t\tremoteInfo = \"Result-watchOS\";\n\t\t};\n\t\tD45480691A9572F5009D7229 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D45480561A9572F5009D7229;\n\t\t\tremoteInfo = Result;\n\t\t};\n\t\tD45480891A957362009D7229 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = D454804E1A9572F5009D7229 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = D454807C1A957361009D7229;\n\t\t\tremoteInfo = \"Result-iOS\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t57FCDE471BA280DC00130C48 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-tvOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD03579A31B2B788F005D26AE /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-watchOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480571A9572F5009D7229 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD454805B1A9572F5009D7229 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD454805C1A9572F5009D7229 /* Result.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Result.h; sourceTree = \"<group>\"; };\n\t\tD45480671A9572F5009D7229 /* Result-MacTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-MacTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD454806D1A9572F5009D7229 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tD454806E1A9572F5009D7229 /* ResultTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResultTests.swift; sourceTree = \"<group>\"; };\n\t\tD454807D1A957361009D7229 /* Result.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Result.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480871A957362009D7229 /* Result-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"Result-iOSTests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tD45480961A957465009D7229 /* Result.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = \"<group>\"; };\n\t\tE93621451B35596200948F2A /* ResultType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ResultType.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t57FCDE401BA280DC00130C48 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE4E1BA280E000130C48 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE561BA2814300130C48 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799C1B2B788F005D26AE /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579AA1B2B78A1005D26AE /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD03579B41B2B78C4005D26AE /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480531A9572F5009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480641A9572F5009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480681A9572F5009D7229 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480791A957361009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480841A957362009D7229 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480881A957362009D7229 /* Result.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tD454804D1A9572F5009D7229 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD45480591A9572F5009D7229 /* Result */,\n\t\t\t\tD454806B1A9572F5009D7229 /* ResultTests */,\n\t\t\t\tD45480581A9572F5009D7229 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t\tusesTabs = 1;\n\t\t};\n\t\tD45480581A9572F5009D7229 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD45480571A9572F5009D7229 /* Result.framework */,\n\t\t\t\tD45480671A9572F5009D7229 /* Result-MacTests.xctest */,\n\t\t\t\tD454807D1A957361009D7229 /* Result.framework */,\n\t\t\t\tD45480871A957362009D7229 /* Result-iOSTests.xctest */,\n\t\t\t\tD03579A31B2B788F005D26AE /* Result.framework */,\n\t\t\t\tD03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */,\n\t\t\t\t57FCDE471BA280DC00130C48 /* Result.framework */,\n\t\t\t\t57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD45480591A9572F5009D7229 /* Result */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454805C1A9572F5009D7229 /* Result.h */,\n\t\t\t\tD45480961A957465009D7229 /* Result.swift */,\n\t\t\t\tE93621451B35596200948F2A /* ResultType.swift */,\n\t\t\t\tD454805A1A9572F5009D7229 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = Result;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454805A1A9572F5009D7229 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454805B1A9572F5009D7229 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454806B1A9572F5009D7229 /* ResultTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454806E1A9572F5009D7229 /* ResultTests.swift */,\n\t\t\t\tD454806C1A9572F5009D7229 /* Supporting Files */,\n\t\t\t);\n\t\t\tname = ResultTests;\n\t\t\tpath = Tests/Result;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tD454806C1A9572F5009D7229 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD454806D1A9572F5009D7229 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t57FCDE411BA280DC00130C48 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE421BA280DC00130C48 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799D1B2B788F005D26AE /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD035799E1B2B788F005D26AE /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480541A9572F5009D7229 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454805D1A9572F5009D7229 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD454807A1A957361009D7229 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454809A1A9574BB009D7229 /* Result.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t57FCDE3C1BA280DC00130C48 /* Result-tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 57FCDE441BA280DC00130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t57FCDE3D1BA280DC00130C48 /* Sources */,\n\t\t\t\t57FCDE401BA280DC00130C48 /* Frameworks */,\n\t\t\t\t57FCDE411BA280DC00130C48 /* Headers */,\n\t\t\t\t57FCDE431BA280DC00130C48 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-tvOS\";\n\t\t\tproductName = \"Result-iOS\";\n\t\t\tproductReference = 57FCDE471BA280DC00130C48 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t57FCDE491BA280E000130C48 /* Result-tvOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 57FCDE511BA280E000130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t57FCDE4C1BA280E000130C48 /* Sources */,\n\t\t\t\t57FCDE4E1BA280E000130C48 /* Frameworks */,\n\t\t\t\t57FCDE501BA280E000130C48 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t57FCDE581BA2814A00130C48 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-tvOSTests\";\n\t\t\tproductName = \"Result-iOSTests\";\n\t\t\tproductReference = 57FCDE541BA280E000130C48 /* Result-tvOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD03579991B2B788F005D26AE /* Result-watchOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D03579A01B2B788F005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD035799A1B2B788F005D26AE /* Sources */,\n\t\t\t\tD035799C1B2B788F005D26AE /* Frameworks */,\n\t\t\t\tD035799D1B2B788F005D26AE /* Headers */,\n\t\t\t\tD035799F1B2B788F005D26AE /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-watchOS\";\n\t\t\tproductName = Result;\n\t\t\tproductReference = D03579A31B2B788F005D26AE /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD03579A51B2B78A1005D26AE /* Result-watchOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D03579AD1B2B78A1005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD03579A81B2B78A1005D26AE /* Sources */,\n\t\t\t\tD03579AA1B2B78A1005D26AE /* Frameworks */,\n\t\t\t\tD03579AC1B2B78A1005D26AE /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD03579B31B2B78BB005D26AE /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-watchOSTests\";\n\t\t\tproductName = ResultTests;\n\t\t\tproductReference = D03579B01B2B78A1005D26AE /* Result-watchOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD45480561A9572F5009D7229 /* Result-Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480721A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480521A9572F5009D7229 /* Sources */,\n\t\t\t\tD45480531A9572F5009D7229 /* Frameworks */,\n\t\t\t\tD45480541A9572F5009D7229 /* Headers */,\n\t\t\t\tD45480551A9572F5009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-Mac\";\n\t\t\tproductName = Result;\n\t\t\tproductReference = D45480571A9572F5009D7229 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD45480661A9572F5009D7229 /* Result-MacTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480751A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-MacTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480631A9572F5009D7229 /* Sources */,\n\t\t\t\tD45480641A9572F5009D7229 /* Frameworks */,\n\t\t\t\tD45480651A9572F5009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD454806A1A9572F5009D7229 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-MacTests\";\n\t\t\tproductName = ResultTests;\n\t\t\tproductReference = D45480671A9572F5009D7229 /* Result-MacTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tD454807C1A957361009D7229 /* Result-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480941A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480781A957361009D7229 /* Sources */,\n\t\t\t\tD45480791A957361009D7229 /* Frameworks */,\n\t\t\t\tD454807A1A957361009D7229 /* Headers */,\n\t\t\t\tD454807B1A957361009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Result-iOS\";\n\t\t\tproductName = \"Result-iOS\";\n\t\t\tproductReference = D454807D1A957361009D7229 /* Result.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tD45480861A957362009D7229 /* Result-iOSTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = D45480951A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOSTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tD45480831A957362009D7229 /* Sources */,\n\t\t\t\tD45480841A957362009D7229 /* Frameworks */,\n\t\t\t\tD45480851A957362009D7229 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tD454808A1A957362009D7229 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Result-iOSTests\";\n\t\t\tproductName = \"Result-iOSTests\";\n\t\t\tproductReference = D45480871A957362009D7229 /* Result-iOSTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tD454804E1A9572F5009D7229 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = \"Rob Rix\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t57FCDE3C1BA280DC00130C48 = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t57FCDE491BA280E000130C48 = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD03579991B2B788F005D26AE = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD03579A51B2B78A1005D26AE = {\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480561A9572F5009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480661A9572F5009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD454807C1A957361009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tD45480861A957362009D7229 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = D45480511A9572F5009D7229 /* Build configuration list for PBXProject \"Result\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = D454804D1A9572F5009D7229;\n\t\t\tproductRefGroup = D45480581A9572F5009D7229 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tD45480561A9572F5009D7229 /* Result-Mac */,\n\t\t\t\tD45480661A9572F5009D7229 /* Result-MacTests */,\n\t\t\t\tD454807C1A957361009D7229 /* Result-iOS */,\n\t\t\t\tD45480861A957362009D7229 /* Result-iOSTests */,\n\t\t\t\t57FCDE3C1BA280DC00130C48 /* Result-tvOS */,\n\t\t\t\t57FCDE491BA280E000130C48 /* Result-tvOSTests */,\n\t\t\t\tD03579991B2B788F005D26AE /* Result-watchOS */,\n\t\t\t\tD03579A51B2B78A1005D26AE /* Result-watchOSTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t57FCDE431BA280DC00130C48 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE501BA280E000130C48 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799F1B2B788F005D26AE /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579AC1B2B78A1005D26AE /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480551A9572F5009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480651A9572F5009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD454807B1A957361009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480851A957362009D7229 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t57FCDE3D1BA280DC00130C48 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE3E1BA280DC00130C48 /* ResultType.swift in Sources */,\n\t\t\t\t57FCDE3F1BA280DC00130C48 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t57FCDE4C1BA280E000130C48 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t57FCDE4D1BA280E000130C48 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD035799A1B2B788F005D26AE /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t45AE89E61B3A6564007B99D7 /* ResultType.swift in Sources */,\n\t\t\t\tD035799B1B2B788F005D26AE /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD03579A81B2B78A1005D26AE /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD03579A91B2B78A1005D26AE /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480521A9572F5009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tE93621461B35596200948F2A /* ResultType.swift in Sources */,\n\t\t\t\tD45480971A957465009D7229 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480631A9572F5009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD454806F1A9572F5009D7229 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480781A957361009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tE93621471B35596200948F2A /* ResultType.swift in Sources */,\n\t\t\t\tD45480981A957465009D7229 /* Result.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tD45480831A957362009D7229 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tD45480991A9574B8009D7229 /* ResultTests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t57FCDE581BA2814A00130C48 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 57FCDE3C1BA280DC00130C48 /* Result-tvOS */;\n\t\t\ttargetProxy = 57FCDE571BA2814A00130C48 /* PBXContainerItemProxy */;\n\t\t};\n\t\tD03579B31B2B78BB005D26AE /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D03579991B2B788F005D26AE /* Result-watchOS */;\n\t\t\ttargetProxy = D03579B21B2B78BB005D26AE /* PBXContainerItemProxy */;\n\t\t};\n\t\tD454806A1A9572F5009D7229 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D45480561A9572F5009D7229 /* Result-Mac */;\n\t\t\ttargetProxy = D45480691A9572F5009D7229 /* PBXContainerItemProxy */;\n\t\t};\n\t\tD454808A1A957362009D7229 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = D454807C1A957361009D7229 /* Result-iOS */;\n\t\t\ttargetProxy = D45480891A957362009D7229 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin XCBuildConfiguration section */\n\t\t57FCDE451BA280DC00130C48 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t57FCDE461BA280DC00130C48 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t57FCDE521BA280E000130C48 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t57FCDE531BA280E000130C48 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD03579A11B2B788F005D26AE /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD03579A21B2B788F005D26AE /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = watchos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD03579AE1B2B78A1005D26AE /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = watchos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD03579AF1B2B78A1005D26AE /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = watchos;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480701A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.antitypical.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480711A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGNING_REQUIRED = NO;\n\t\t\t\tCODE_SIGN_IDENTITY = \"\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"com.antitypical.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t\tWATCHOS_DEPLOYMENT_TARGET = 2.0;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480731A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480741A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"@rpath\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tVALID_ARCHS = x86_64;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480761A9572F5009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480771A9572F5009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(DEVELOPER_FRAMEWORKS_DIR)\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480901A957362009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480911A957362009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBITCODE_GENERATION_MODE = bitcode;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tENABLE_BITCODE = YES;\n\t\t\t\tINFOPLIST_FILE = Result/Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = Result;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tD45480921A957362009D7229 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tD45480931A957362009D7229 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = NO;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = Tests/Result/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t57FCDE441BA280DC00130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t57FCDE451BA280DC00130C48 /* Debug */,\n\t\t\t\t57FCDE461BA280DC00130C48 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t57FCDE511BA280E000130C48 /* Build configuration list for PBXNativeTarget \"Result-tvOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t57FCDE521BA280E000130C48 /* Debug */,\n\t\t\t\t57FCDE531BA280E000130C48 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD03579A01B2B788F005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD03579A11B2B788F005D26AE /* Debug */,\n\t\t\t\tD03579A21B2B788F005D26AE /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD03579AD1B2B78A1005D26AE /* Build configuration list for PBXNativeTarget \"Result-watchOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD03579AE1B2B78A1005D26AE /* Debug */,\n\t\t\t\tD03579AF1B2B78A1005D26AE /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480511A9572F5009D7229 /* Build configuration list for PBXProject \"Result\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480701A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480711A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480721A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480731A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480741A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480751A9572F5009D7229 /* Build configuration list for PBXNativeTarget \"Result-MacTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480761A9572F5009D7229 /* Debug */,\n\t\t\t\tD45480771A9572F5009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480941A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480901A957362009D7229 /* Debug */,\n\t\t\t\tD45480911A957362009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tD45480951A957362009D7229 /* Build configuration list for PBXNativeTarget \"Result-iOSTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tD45480921A957362009D7229 /* Debug */,\n\t\t\t\tD45480931A957362009D7229 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = D454804E1A9572F5009D7229 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:Result.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-Mac.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-Mac\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480661A9572F5009D7229\"\n               BuildableName = \"Result-MacTests.xctest\"\n               BlueprintName = \"Result-MacTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480661A9572F5009D7229\"\n               BuildableName = \"Result-MacTests.xctest\"\n               BlueprintName = \"Result-MacTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D45480561A9572F5009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-Mac\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D454807C1A957361009D7229\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-iOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"NO\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480861A957362009D7229\"\n               BuildableName = \"Result-iOSTests.xctest\"\n               BlueprintName = \"Result-iOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D45480861A957362009D7229\"\n               BuildableName = \"Result-iOSTests.xctest\"\n               BlueprintName = \"Result-iOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D454807C1A957361009D7229\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-iOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-tvOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"57FCDE491BA280E000130C48\"\n               BuildableName = \"Result-tvOSTests.xctest\"\n               BlueprintName = \"Result-tvOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"57FCDE3C1BA280DC00130C48\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-tvOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcodeproj/xcshareddata/xcschemes/Result-watchOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n               BuildableName = \"Result.framework\"\n               BlueprintName = \"Result-watchOS\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"D03579A51B2B78A1005D26AE\"\n               BuildableName = \"Result-watchOSTests.xctest\"\n               BlueprintName = \"Result-watchOSTests\"\n               ReferencedContainer = \"container:Result.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"D03579991B2B788F005D26AE\"\n            BuildableName = \"Result.framework\"\n            BlueprintName = \"Result-watchOS\"\n            ReferencedContainer = \"container:Result.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Result.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Result.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Carthage/Checkouts/Box/Box.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/ResultTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/ResultTests/ResultTests.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\nfinal class ResultTests: XCTestCase {\n\tfunc testMapTransformsSuccesses() {\n\t\tXCTAssertEqual(success.map { $0.characters.count } ?? 0, 7)\n\t}\n\n\tfunc testMapRewrapsFailures() {\n\t\tXCTAssertEqual(failure.map { $0.characters.count } ?? 0, 0)\n\t}\n\n\tfunc testInitOptionalSuccess() {\n\t\tXCTAssert(Result(\"success\" as String?, failWith: error) == success)\n\t}\n\n\tfunc testInitOptionalFailure() {\n\t\tXCTAssert(Result(nil, failWith: error) == failure)\n\t}\n\n\n\t// MARK: Errors\n\n\tfunc testErrorsIncludeTheSourceFile() {\n\t\tlet file = __FILE__\n\t\tXCTAssert(Result<(), NSError>.error().file == file)\n\t}\n\n\tfunc testErrorsIncludeTheSourceLine() {\n\t\tlet (line, error) = (__LINE__, Result<(), NSError>.error())\n\t\tXCTAssertEqual(error.line ?? -1, line)\n\t}\n\n\tfunc testErrorsIncludeTheCallingFunction() {\n\t\tlet function = __FUNCTION__\n\t\tXCTAssert(Result<(), NSError>.error().function == function)\n\t}\n\n\t// MARK: Try - Catch\n\t\n\tfunc testTryCatchProducesSuccesses() {\n\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result == success)\n\t}\n\t\n\tfunc testTryCatchProducesFailures() {\n\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(nil))\n\t\tXCTAssert(result.error == error)\n\t}\n\n\tfunc testTryCatchWithFunctionProducesSuccesses() {\n\t\tlet function = { try tryIsSuccess(\"success\") }\n\n\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryCatchWithFunctionCatchProducesFailures() {\n\t\tlet function = { try tryIsSuccess(nil) }\n\n\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\tXCTAssert(result.error == error)\n\t}\n\n\tfunc testMaterializeProducesSuccesses() {\n\t\tlet result1 = materialize(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result1 == success)\n\n\t\tlet result2 = materialize { try tryIsSuccess(\"success\") }\n\t\tXCTAssert(result2 == success)\n\t}\n\n\tfunc testMaterializeProducesFailures() {\n\t\tlet result1 = materialize(try tryIsSuccess(nil))\n\t\tXCTAssert(result1.error == error)\n\n\t\tlet result2 = materialize { try tryIsSuccess(nil) }\n\t\tXCTAssert(result2.error == error)\n\t}\n\n\t// MARK: Cocoa API idioms\n\n\tfunc testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(true, succeed: false, error: $0) }\n\t\tXCTAssertFalse(result ?? false)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesFailuresForOptionalWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(1, succeed: false, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 0)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForBooleanAPI() {\n\t\tlet result = `try` { attempt(true, succeed: true, error: $0) }\n\t\tXCTAssertTrue(result ?? false)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForOptionalAPI() {\n\t\tlet result = `try` { attempt(1, succeed: true, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 1)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryMapProducesSuccess() {\n\t\tlet result = success.tryMap(tryIsSuccess)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryMapProducesFailure() {\n\t\tlet result = Result<String, NSError>.Success(\"fail\").tryMap(tryIsSuccess)\n\t\tXCTAssert(result == failure)\n\t}\n\n\t// MARK: Operators\n\n\tfunc testConjunctionOperator() {\n\t\tlet resultSuccess = success &&& success\n\t\tif let (x, y) = resultSuccess.value {\n\t\t\tXCTAssertTrue(x == \"success\" && y == \"success\")\n\t\t} else {\n\t\t\tXCTFail()\n\t\t}\n\n\t\tlet resultFailureBoth = failure &&& failure2\n\t\tXCTAssert(resultFailureBoth.error == error)\n\n\t\tlet resultFailureLeft = failure &&& success\n\t\tXCTAssert(resultFailureLeft.error == error)\n\n\t\tlet resultFailureRight = success &&& failure2\n\t\tXCTAssert(resultFailureRight.error == error2)\n\t}\n}\n\n\n// MARK: - Fixtures\n\nlet success = Result<String, NSError>.Success(\"success\")\nlet error = NSError(domain: \"com.antitypical.Result\", code: 1, userInfo: nil)\nlet error2 = NSError(domain: \"com.antitypical.Result\", code: 2, userInfo: nil)\nlet failure = Result<String, NSError>.Failure(error)\nlet failure2 = Result<String, NSError>.Failure(error2)\n\n\n// MARK: - Helpers\n\nfunc attempt<T>(value: T, succeed: Bool, error: NSErrorPointer) -> T? {\n\tif succeed {\n\t\treturn value\n\t} else {\n\t\terror.memory = Result<(), NSError>.error()\n\t\treturn nil\n\t}\n}\n\nfunc tryIsSuccess(text: String?) throws -> String {\n\tguard let text = text where text == \"success\" else {\n\t\tthrow error\n\t}\n\t\n\treturn text\n}\n\nextension NSError {\n\tvar function: String? {\n\t\treturn userInfo[Result<(), NSError>.functionKey as NSString] as? String\n\t}\n\t\n\tvar file: String? {\n\t\treturn userInfo[Result<(), NSError>.fileKey as NSString] as? String\n\t}\n\n\tvar line: Int? {\n\t\treturn userInfo[Result<(), NSError>.lineKey as NSString] as? Int\n\t}\n}\n\n\nimport Result\nimport XCTest\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Tests/LinuxMain.swift",
    "content": "import XCTest\n\n@testable import ResultTestSuite\n\nXCTMain([\n  testCase(ResultTests.allTests),\n])\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Tests/Result/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>2.1.3</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/Result/Tests/Result/ResultTests.swift",
    "content": "//  Copyright (c) 2015 Rob Rix. All rights reserved.\n\nfinal class ResultTests: XCTestCase {\n\tfunc testMapTransformsSuccesses() {\n\t\tXCTAssertEqual(success.map { $0.characters.count } ?? 0, 7)\n\t}\n\n\tfunc testMapRewrapsFailures() {\n\t\tXCTAssertEqual(failure.map { $0.characters.count } ?? 0, 0)\n\t}\n\n\tfunc testInitOptionalSuccess() {\n\t\tXCTAssert(Result(\"success\" as String?, failWith: error) == success)\n\t}\n\n\tfunc testInitOptionalFailure() {\n\t\tXCTAssert(Result(nil, failWith: error) == failure)\n\t}\n\n\n\t// MARK: Errors\n\n\tfunc testErrorsIncludeTheSourceFile() {\n\t\tlet file = #file\n\t\tXCTAssert(Result<(), NSError>.error().file == file)\n\t}\n\n\tfunc testErrorsIncludeTheSourceLine() {\n\t\tlet (line, error) = (#line, Result<(), NSError>.error())\n\t\tXCTAssertEqual(error.line ?? -1, line)\n\t}\n\n\tfunc testErrorsIncludeTheCallingFunction() {\n\t\tlet function = #function\n\t\tXCTAssert(Result<(), NSError>.error().function == function)\n\t}\n\n\t// MARK: Try - Catch\n\t\n\tfunc testTryCatchProducesSuccesses() {\n\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result == success)\n\t}\n\t\n\tfunc testTryCatchProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet result: Result<String, NSError> = Result(try tryIsSuccess(nil))\n\t\t\tXCTAssert(result.error == error)\n\t\t#endif\n\t}\n\n\tfunc testTryCatchWithFunctionProducesSuccesses() {\n\t\tlet function = { try tryIsSuccess(\"success\") }\n\n\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryCatchWithFunctionCatchProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet function = { try tryIsSuccess(nil) }\n\n\t\t\tlet result: Result<String, NSError> = Result(attempt: function)\n\t\t\tXCTAssert(result.error == error)\n\t\t#endif\n\t}\n\n\tfunc testMaterializeProducesSuccesses() {\n\t\tlet result1 = materialize(try tryIsSuccess(\"success\"))\n\t\tXCTAssert(result1 == success)\n\n\t\tlet result2: Result<String, NSError> = materialize { try tryIsSuccess(\"success\") }\n\t\tXCTAssert(result2 == success)\n\t}\n\n\tfunc testMaterializeProducesFailures() {\n\t\t#if os(Linux)\n\t\t\t/// FIXME: skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\n\t\t\tprint(\"Test Case `\\(#function)` skipped on Linux because of crash with swift-DEVELOPMENT-SNAPSHOT-2016-05-31-a.\")\n\t\t#else\n\t\t\tlet result1 = materialize(try tryIsSuccess(nil))\n\t\t\tXCTAssert(result1.error == error)\n\n\t\t\tlet result2: Result<String, NSError> = materialize { try tryIsSuccess(nil) }\n\t\t\tXCTAssert(result2.error == error)\n\t\t#endif\n\t}\n\n\t// MARK: Recover\n\n\tfunc testRecoverProducesLeftForLeftSuccess() {\n\t\tlet left = Result<String, NSError>.Success(\"left\")\n\t\tXCTAssertEqual(left.recover(\"right\"), \"left\")\n\t}\n\n\tfunc testRecoverProducesRightForLeftFailure() {\n\t\tstruct Error: ResultErrorType {}\n\n\t\tlet left = Result<String, Error>.Failure(Error())\n\t\tXCTAssertEqual(left.recover(\"right\"), \"right\")\n\t}\n\n\t// MARK: Recover With\n\n\tfunc testRecoverWithProducesLeftForLeftSuccess() {\n\t\tlet left = Result<String, NSError>.Success(\"left\")\n\t\tlet right = Result<String, NSError>.Success(\"right\")\n\n\t\tXCTAssertEqual(left.recoverWith(right).value, \"left\")\n\t}\n\n\tfunc testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess() {\n\t\tstruct Error: ResultErrorType {}\n\n\t\tlet left = Result<String, Error>.Failure(Error())\n\t\tlet right = Result<String, Error>.Success(\"right\")\n\n\t\tXCTAssertEqual(left.recoverWith(right).value, \"right\")\n\t}\n\n\tfunc testRecoverWithProducesRightFailureForLeftFailureAndRightFailure() {\n\t\tenum Error: ResultErrorType { case Left, Right }\n\n\t\tlet left = Result<String, Error>.Failure(.Left)\n\t\tlet right = Result<String, Error>.Failure(.Right)\n\n\t\tXCTAssertEqual(left.recoverWith(right).error, .Right)\n\t}\n\n\t// MARK: Cocoa API idioms\n\n\t#if !os(Linux)\n\n\tfunc testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(true, succeed: false, error: $0) }\n\t\tXCTAssertFalse(result ?? false)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesFailuresForOptionalWithErrorReturnedByReference() {\n\t\tlet result = `try` { attempt(1, succeed: false, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 0)\n\t\tXCTAssertNotNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForBooleanAPI() {\n\t\tlet result = `try` { attempt(true, succeed: true, error: $0) }\n\t\tXCTAssertTrue(result ?? false)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryProducesSuccessesForOptionalAPI() {\n\t\tlet result = `try` { attempt(1, succeed: true, error: $0) }\n\t\tXCTAssertEqual(result ?? 0, 1)\n\t\tXCTAssertNil(result.error)\n\t}\n\n\tfunc testTryMapProducesSuccess() {\n\t\tlet result = success.tryMap(tryIsSuccess)\n\t\tXCTAssert(result == success)\n\t}\n\n\tfunc testTryMapProducesFailure() {\n\t\tlet result = Result<String, NSError>.Success(\"fail\").tryMap(tryIsSuccess)\n\t\tXCTAssert(result == failure)\n\t}\n\n\t#endif\n\n\t// MARK: Operators\n\n\tfunc testConjunctionOperator() {\n\t\tlet resultSuccess = success &&& success\n\t\tif let (x, y) = resultSuccess.value {\n\t\t\tXCTAssertTrue(x == \"success\" && y == \"success\")\n\t\t} else {\n\t\t\tXCTFail()\n\t\t}\n\n\t\tlet resultFailureBoth = failure &&& failure2\n\t\tXCTAssert(resultFailureBoth.error == error)\n\n\t\tlet resultFailureLeft = failure &&& success\n\t\tXCTAssert(resultFailureLeft.error == error)\n\n\t\tlet resultFailureRight = success &&& failure2\n\t\tXCTAssert(resultFailureRight.error == error2)\n\t}\n}\n\n\n// MARK: - Fixtures\n\nlet success = Result<String, NSError>.Success(\"success\")\nlet error = NSError(domain: \"com.antitypical.Result\", code: 1, userInfo: nil)\nlet error2 = NSError(domain: \"com.antitypical.Result\", code: 2, userInfo: nil)\nlet failure = Result<String, NSError>.Failure(error)\nlet failure2 = Result<String, NSError>.Failure(error2)\n\n\n// MARK: - Helpers\n\n#if !os(Linux)\n\n\n#if swift(>=3.0)\nfunc attempt<T>(_ value: T, succeed: Bool, error: NSErrorPointer) -> T? {\n\tif succeed {\n\t\treturn value\n\t} else {\n\t\terror?.pointee = Result<(), NSError>.error()\n\t\treturn nil\n\t}\n}\n#else\nfunc attempt<T>(value: T, succeed: Bool, error: NSErrorPointer) -> T? {\n\tif succeed {\n\t\treturn value\n\t} else {\n\t\terror.memory = Result<(), NSError>.error()\n\t\treturn nil\n\t}\n}\n#endif\n\n#endif\n\n#if swift(>=3)\nfunc tryIsSuccess(_ text: String?) throws -> String {\n\tguard let text = text where text == \"success\" else {\n\t\tthrow error\n\t}\n\n\treturn text\n}\n#else\nfunc tryIsSuccess(text: String?) throws -> String {\n\tguard let text = text where text == \"success\" else {\n\t\tthrow error\n\t}\n\t\n\treturn text\n}\n#endif\n\nextension NSError {\n\tvar function: String? {\n\t\treturn userInfo[Result<(), NSError>.functionKey] as? String\n\t}\n\t\n\tvar file: String? {\n\t\treturn userInfo[Result<(), NSError>.fileKey] as? String\n\t}\n\n\tvar line: Int? {\n\t\treturn userInfo[Result<(), NSError>.lineKey] as? Int\n\t}\n}\n\n#if os(Linux)\n\nextension ResultTests {\n\tstatic var allTests: [(String, (ResultTests) -> () throws -> Void)] {\n\t\treturn [\n\t\t\t(\"testMapTransformsSuccesses\", testMapTransformsSuccesses),\n\t\t\t(\"testMapRewrapsFailures\", testMapRewrapsFailures),\n\t\t\t(\"testInitOptionalSuccess\", testInitOptionalSuccess),\n\t\t\t(\"testInitOptionalFailure\", testInitOptionalFailure),\n\t\t\t(\"testErrorsIncludeTheSourceFile\", testErrorsIncludeTheSourceFile),\n\t\t\t(\"testErrorsIncludeTheSourceLine\", testErrorsIncludeTheSourceLine),\n\t\t\t(\"testErrorsIncludeTheCallingFunction\", testErrorsIncludeTheCallingFunction),\n\t\t\t(\"testTryCatchProducesSuccesses\", testTryCatchProducesSuccesses),\n\t\t\t(\"testTryCatchProducesFailures\", testTryCatchProducesFailures),\n\t\t\t(\"testTryCatchWithFunctionProducesSuccesses\", testTryCatchWithFunctionProducesSuccesses),\n\t\t\t(\"testTryCatchWithFunctionCatchProducesFailures\", testTryCatchWithFunctionCatchProducesFailures),\n\t\t\t(\"testMaterializeProducesSuccesses\", testMaterializeProducesSuccesses),\n\t\t\t(\"testMaterializeProducesFailures\", testMaterializeProducesFailures),\n\t\t\t(\"testRecoverProducesLeftForLeftSuccess\", testRecoverProducesLeftForLeftSuccess),\n\t\t\t(\"testRecoverProducesRightForLeftFailure\", testRecoverProducesRightForLeftFailure),\n\t\t\t(\"testRecoverWithProducesLeftForLeftSuccess\", testRecoverWithProducesLeftForLeftSuccess),\n\t\t\t(\"testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess\", testRecoverWithProducesRightSuccessForLeftFailureAndRightSuccess),\n\t\t\t(\"testRecoverWithProducesRightFailureForLeftFailureAndRightFailure\", testRecoverWithProducesRightFailureForLeftFailureAndRightFailure),\n//\t\t\t(\"testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference\", testTryProducesFailuresForBooleanAPIWithErrorReturnedByReference),\n//\t\t\t(\"testTryProducesFailuresForOptionalWithErrorReturnedByReference\", testTryProducesFailuresForOptionalWithErrorReturnedByReference),\n//\t\t\t(\"testTryProducesSuccessesForBooleanAPI\", testTryProducesSuccessesForBooleanAPI),\n//\t\t\t(\"testTryProducesSuccessesForOptionalAPI\", testTryProducesSuccessesForOptionalAPI),\n//\t\t\t(\"testTryMapProducesSuccess\", testTryMapProducesSuccess),\n//\t\t\t(\"testTryMapProducesFailure\", testTryMapProducesFailure),\n\t\t\t(\"testConjunctionOperator\", testConjunctionOperator),\n\t\t]\n\t}\n}\n#endif\n\nimport Foundation\nimport Result\nimport XCTest\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/.gitignore",
    "content": "project.xcworkspace\nxcuserdata\nExamples/\n.DS_Store\nGemfile\nGemfile.lock\n*.sketch\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/.travis.yml",
    "content": "language: objective-c\nosx_image: xcode7.3\nbranches:\n  only:\n    - master\n    - develop\nenv:\n  - LC_CTYPE=en_US.UTF-8 LANG=en_US.UTF-8\nbefore_install:\n  - gem install xcpretty -N\nscript:\n  - set -o pipefail\n  - xcodebuild -project SnapKit.xcodeproj -scheme \"SnapKit iOS\" -sdk iphonesimulator -destination \"platform=iOS Simulator,name=iPhone 6\" ONLY_ACTIVE_ARCH=NO  test | xcpretty -c\n  - xcodebuild -project SnapKit.xcodeproj -scheme \"SnapKit OSX\" ONLY_ACTIVE_ARCH=YES test | xcpretty -c\n  - pod lib lint --quick\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/CHANGELOG.md",
    "content": "CHANGELOG\n=======\n\n# 0.21.1 - June 20 2016\n\n* Added support for Swift 2.3\n\n# 0.21.0 - May 11 2016\n\n* Added `equalToSuperview()` convenience\n* Enabled app extension API for tvOS and OSX\n\n# 0.20.0 - March 25 2016\n\n* Swift 2.2 Support\n* Added a `labeled(\"Hello\")` to constraint chain to label your constraints for debugging output.\n\n# 0.19.1 - January 26 2016\n\n* Rebased from 0.16.0 with only desired commits to resolve many unexpected issues\n\n# 0.19.0 - January 21 2016\n\n* Improved `.insets()` for `width` and `height` #183\n* Added Carthage tvOS support #179\n* Added Package.swift #175\n* Codesign is set to Distribution on Release #181\n\n# 0.15.0 - September 22 2015\n\n* Fixed issues with layout guides on iOS 9\n* Fixed warnings related to `guard #available` statements\n* Better support for legacy platforms (iOS 7 / OS X 10.9). [Documentation Here](http://snapkit.io/legacy-platforms)\n\n# 0.14.0 - September 12 2015\n\n* Swift 2.0 / Xcode 7 GM\n\n# 0.13.0 - July 30 2015\n\n* **BREAKING:** Refactored `insets` to `inset` and it now accepts Float/Double/CGFloat/Int/UInt as well as EdgeInsets\n* Size constraints to fixed constants like `make.width.equalTo(50)` now install directly on the from view rather than it’s superview\n* Debugging should generate property object pointer descriptions\n* Debugging now includes file/line number where the closure that created the constraint is in your code\n\n# 0.11.0 - April 26 2015\n\n* Removed `final` declarations as they were causing crashes in certain circumstances\n\n# 0.10.0 - April 15 2015\n\n* **ANNOUNCEMENT**: Snap is now SnapKit\n* **BREAKING:** The constraint making chain now utilises protocols to tighten the API's to avoid user error. This may break some syntaxes.\n* **BREAKING:** Semantic `and` and `with` chain variables were removed\n* Added `update###` functions to `Constraint` so their constants and priorities can be updated\n* Added a `SnapKit.Config.interfaceLayoutDirection` variable for richer Leading/Trailing support.\n* Fixed memory leaks that could occur on long lived views\n* Ensure Swift 1.2 compatibility\n\n# 0.9.x - March 2015\n\n* Re-worked some internal API to allow for future updates\n* Added `snp_prepareConstraints -> [Constraint]` which allows pre-building of constraints\n* Added a fatal error to `and` when it is used after relation has been set\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/CONTRIBUTING.md",
    "content": "# Contributing\n\n### Pull Requests\n\nWe gladly accept any PR's assuming they are well written, documented ( if necessary ) and preferably have test code. If you're unsure if we'll accept a new feature please open an issue requesting it and we can have a discussion before you code and submit a PR.\n\n### Issues\n\nPlease use the issue tracker *strictly* for bugs you think are caused by a code issue in SnapKit. We’re very busy and as a free open source library do not have the time to adequately help with questions that are more tutorial/training in nature and recommend using Stack Overflow and Google as alternatives.\n\nPlease do not be offended if we close your issue and reference this document. If you believe the issue is truely a fault in SnapKit’s codebase re-open it.\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/CodeSnippets/SnapKit Constraint Make.codesnippet",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDECodeSnippetCompletionPrefix</key>\n\t<string>snp_make</string>\n\t<key>IDECodeSnippetCompletionScopes</key>\n\t<array>\n\t\t<string>CodeBlock</string>\n\t</array>\n\t<key>IDECodeSnippetContents</key>\n\t<string>&lt;#view#&gt;.snp_makeConstraints { make in\n    &lt;#code#&gt;\n}</string>\n\t<key>IDECodeSnippetIdentifier</key>\n\t<string>FF434629-7B96-4AB9-BD96-522275E7B106</string>\n\t<key>IDECodeSnippetLanguage</key>\n\t<string>Xcode.SourceCodeLanguage.Swift</string>\n\t<key>IDECodeSnippetTitle</key>\n\t<string>SnapKit Constraint Make</string>\n\t<key>IDECodeSnippetUserSnippet</key>\n\t<true/>\n\t<key>IDECodeSnippetVersion</key>\n\t<integer>2</integer>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/CodeSnippets/SnapKit Constraint Remake.codesnippet",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDECodeSnippetCompletionPrefix</key>\n\t<string>snp_remake</string>\n\t<key>IDECodeSnippetCompletionScopes</key>\n\t<array>\n\t\t<string>TopLevel</string>\n\t</array>\n\t<key>IDECodeSnippetContents</key>\n\t<string>&lt;#view#&gt;.snp_remakeConstraints { make in\n    &lt;#code#&gt;\n}</string>\n\t<key>IDECodeSnippetIdentifier</key>\n\t<string>FD093546-D614-4311-82C3-E8FE842F62B1</string>\n\t<key>IDECodeSnippetLanguage</key>\n\t<string>Xcode.SourceCodeLanguage.Swift</string>\n\t<key>IDECodeSnippetTitle</key>\n\t<string>SnapKit Constraint Remake</string>\n\t<key>IDECodeSnippetUserSnippet</key>\n\t<true/>\n\t<key>IDECodeSnippetVersion</key>\n\t<integer>0</integer>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/AppDelegate.swift",
    "content": "//\n//  AppDelegate.swift\n//  Example-iOS\n//\n//  Created by Spiros Gerokostas on 01/03/16.\n//  Copyright © 2016 SnapKit Team. All rights reserved.\n//\n\nimport UIKit\n\n@UIApplicationMain\nclass AppDelegate: UIResponder, UIApplicationDelegate {\n\n    var window: UIWindow?\n\n    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {\n        \n        self.window = UIWindow(frame: UIScreen.mainScreen().bounds)\n        \n        let listViewController:ListViewController = ListViewController()\n        let navigationController:UINavigationController = UINavigationController(rootViewController: listViewController);\n        \n        self.window!.rootViewController = navigationController;\n        \n        self.window!.backgroundColor = UIColor.whiteColor()\n        self.window!.makeKeyAndVisible()\n        \n        return true\n    }\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"29x29\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"29x29\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"40x40\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"40x40\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"60x60\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"60x60\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/Base.lproj/LaunchScreen.storyboard",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3.0\" toolsVersion=\"8150\" systemVersion=\"15A204g\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" launchScreen=\"YES\" useTraitCollections=\"YES\" initialViewController=\"01J-lp-oVM\">\n    <dependencies>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"8122\"/>\n    </dependencies>\n    <scenes>\n        <!--View Controller-->\n        <scene sceneID=\"EHf-IW-A2E\">\n            <objects>\n                <viewController id=\"01J-lp-oVM\" sceneMemberID=\"viewController\">\n                    <layoutGuides>\n                        <viewControllerLayoutGuide type=\"top\" id=\"Llm-lL-Icb\"/>\n                        <viewControllerLayoutGuide type=\"bottom\" id=\"xb3-aO-Qok\"/>\n                    </layoutGuides>\n                    <view key=\"view\" contentMode=\"scaleToFill\" id=\"Ze5-6b-2t3\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"600\" height=\"600\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <animations/>\n                        <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                    </view>\n                </viewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"iYj-Kq-Ea1\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"53\" y=\"375\"/>\n        </scene>\n    </scenes>\n</document>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UILaunchStoryboardName</key>\n\t<string>LaunchScreen</string>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/ListViewController.swift",
    "content": "//\n//  ViewController.swift\n//  Example-iOS\n//\n//  Created by Spiros Gerokostas on 01/03/16.\n//  Copyright © 2016 SnapKit Team. All rights reserved.\n//\n\nimport UIKit\nimport SnapKit\n\nclass ListViewController: UITableViewController {\n\n    let kCellIdentifier = \"CellIdentifier\"\n    let demos = [\"Simple Layout\", \"Basic UIScrollView\"]\n    \n    override func viewDidLoad() {\n        super.viewDidLoad()\n        \n        self.title = \"SnapKit iOS Demos\"\n        \n        self.tableView?.registerClass(UITableViewCell.self, forCellReuseIdentifier: kCellIdentifier)\n    }\n\n    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {\n        let cell = tableView.dequeueReusableCellWithIdentifier(kCellIdentifier)! as UITableViewCell\n        \n        cell.textLabel?.text = demos[indexPath.row]\n        \n        return cell\n    }\n    \n    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\n        return demos.count\n    }\n    \n    override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {\n        if indexPath.row == 0 {\n            let viewController = SimpleLayoutViewController()\n            navigationController?.pushViewController(viewController, animated: true)\n        } else if indexPath.row == 1 {\n            let viewController = BasicUIScrollViewController()\n            navigationController?.pushViewController(viewController, animated: true)\n        }\n    }\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/demos/BasicUIScrollViewController.swift",
    "content": "//\n//  BasicUIScrollViewController.swift\n//  SnapKit\n//\n//  Created by Spiros Gerokostas on 01/03/16.\n//  Copyright © 2016 SnapKit Team. All rights reserved.\n//\n\nimport UIKit\n\nclass BasicUIScrollViewController: UIViewController {\n\n    var didSetupConstraints = false\n    \n    let scrollView  = UIScrollView()\n    let contentView = UIView()\n    \n    let label: UILabel = {\n        let label = UILabel()\n        label.backgroundColor = .blueColor()\n        label.numberOfLines = 0\n        label.lineBreakMode = .ByClipping\n        label.textColor = .whiteColor()\n        label.text = NSLocalizedString(\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\", comment: \"\")\n        return label\n    }()\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        view.backgroundColor = UIColor.whiteColor()\n        \n        view.addSubview(scrollView)\n        \n        contentView.backgroundColor = UIColor.lightGrayColor()\n        scrollView.addSubview(contentView)\n        contentView.addSubview(label)\n        \n        view.setNeedsUpdateConstraints()\n    }\n    \n    override func updateViewConstraints() {\n        \n        if (!didSetupConstraints) {\n            \n            scrollView.snp_makeConstraints { make in\n                make.edges.equalTo(view).inset(UIEdgeInsetsZero)\n            }\n            \n            contentView.snp_makeConstraints { make in\n                make.edges.equalTo(scrollView).inset(UIEdgeInsetsZero)\n                make.width.equalTo(scrollView)\n            }\n            \n            label.snp_makeConstraints { make in\n                make.top.equalTo(contentView).inset(20)\n                make.leading.equalTo(contentView).inset(20)\n                make.trailing.equalTo(contentView).inset(20)\n                make.bottom.equalTo(contentView).inset(20)\n            }\n            \n            didSetupConstraints = true\n        }\n        \n        super.updateViewConstraints()\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Example-iOS/demos/SimpleLayoutViewController.swift",
    "content": "//\n//  SimpleLayoutViewController.swift\n//  SnapKit\n//\n//  Created by Spiros Gerokostas on 01/03/16.\n//  Copyright © 2016 SnapKit Team. All rights reserved.\n//\n\nimport UIKit\n\nclass SimpleLayoutViewController: UIViewController {\n\n    var didSetupConstraints = false\n\n    let blackView: UIView = {\n        let view = UIView()\n        view.backgroundColor = .blackColor()\n        return view\n    }()\n\n    let redView: UIView = {\n        let view = UIView()\n        view.backgroundColor = .redColor()\n        return view\n    }()\n\n    let yellowView: UIView = {\n        let view = UIView()\n        view.backgroundColor = .yellowColor()\n        return view\n    }()\n\n    let blueView: UIView = {\n        let view = UIView()\n        view.backgroundColor = .blueColor()\n        return view\n    }()\n\n    let greenView: UIView = {\n        let view = UIView()\n        view.backgroundColor = .greenColor()\n        return view\n    }()\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        view.backgroundColor = UIColor.whiteColor()\n\n        view.addSubview(blackView)\n        view.addSubview(redView)\n        view.addSubview(yellowView)\n        view.addSubview(blueView)\n        view.addSubview(greenView)\n\n        view.setNeedsUpdateConstraints()\n    }\n\n    override func updateViewConstraints() {\n\n        if (!didSetupConstraints) {\n\n            blackView.snp_makeConstraints { make in\n                make.center.equalTo(view)\n                make.size.equalTo(CGSizeMake(100.0, 100.0))\n            }\n\n            redView.snp_makeConstraints { make in\n                make.top.equalTo(blackView.snp_bottom).offset(20.0)\n                make.left.equalTo(20.0)\n                make.size.equalTo(CGSizeMake(100.0, 100.0))\n            }\n\n            yellowView.snp_makeConstraints { make in\n                make.top.equalTo(blackView.snp_bottom).offset(20.0)\n                make.left.equalTo(blackView.snp_right).offset(20.0)\n                make.size.equalTo(CGSizeMake(100.0, 100.0))\n            }\n\n            blueView.snp_makeConstraints { make in\n                make.bottom.equalTo(blackView.snp_top).offset(-20.0)\n                make.left.equalTo(blackView.snp_right).offset(20.0)\n                make.size.equalTo(CGSizeMake(100.0, 100.0))\n            }\n\n            greenView.snp_makeConstraints { make in\n                make.bottom.equalTo(blackView.snp_top).offset(-20.0)\n                make.right.equalTo(blackView.snp_left).offset(-20.0)\n                make.size.equalTo(CGSizeMake(100.0, 100.0))\n            }\n\n            didSetupConstraints = true\n        }\n\n        super.updateViewConstraints()\n    }\n\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/ISSUE_TEMPLATE.md",
    "content": "### New Issue Checklist\n\n* [ ] I have looked at the [Documentation](http://snapkit.io/docs)\n* [ ] I have read the [F.A.Q.](http://snapkit.io/faq)\n\n### Issue Info\n\n Info                    | Value                               |\n-------------------------|-------------------------------------|\n Platform                | e.g. ios/osx/tvos\n Platform Version        | e.g. 8.0\n SnapKit Version         | e.g. 0.19.0\n Integration Method      | e.g. carthage/cocoapods/manually\n \n\n### Issue Description\n\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/LICENSE",
    "content": "Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Package.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n\nimport PackageDescription\n\nlet package = Package(\n    name: \"SnapKit\"\n)\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/README.md",
    "content": "<img src=\"http://snapkit.io/images/banner.jpg\" alt=\"\" />\n\nSnapKit is a DSL to make Auto Layout easy on both iOS and OS X.\n\n[![Build Status](https://travis-ci.org/SnapKit/SnapKit.svg)](https://travis-ci.org/SnapKit/SnapKit)\n[![Cocoapods Compatible](https://img.shields.io/cocoapods/v/SnapKit.svg)](https://img.shields.io/cocoapods/v/SnapKit.svg)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n\n```swift\nimport SnapKit\n\nclass MyViewController: UIViewController {\n\n    lazy var box = UIView()\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        self.view.addSubview(box)\n        box.snp_makeConstraints { make in\n           make.width.height.equalTo(50)\n           make.center.equalTo(self.view)\n        }\n    }\n\n}\n```\n\n## Resources\n\n* [Documentation](http://snapkit.io/docs/)\n* [F.A.Q.](http://snapkit.io/faq/)\n* [Legacy Platforms (iOS 7.0, OS X 10.9)](http://snapkit.io/legacy-platforms/)\n\n## License\n\nMIT license. See the `LICENSE` file for details.\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.podspec",
    "content": "Pod::Spec.new do |s|\n  s.name = 'SnapKit'\n  s.version = '0.21.1'\n  s.license = 'MIT'\n  s.summary = 'Harness the power of auto layout with a simplified, chainable, and compile time safe syntax.'\n  s.homepage = 'https://github.com/SnapKit/SnapKit'\n  s.authors = { 'Robert Payne' => 'robertpayne@me.com' }\n  s.social_media_url = 'http://twitter.com/robertjpayne'\n  s.source = { :git => 'https://github.com/SnapKit/SnapKit.git', :tag => '0.21.1' }\n\n  s.ios.deployment_target = '8.0'\n  s.osx.deployment_target = '10.10'\n  s.tvos.deployment_target = '9.0'\n\n  s.source_files = 'Source/*.swift'\n\n  s.requires_arc = true\nend\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t537DCE9B1C35CD4100B5B899 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 537DCE9A1C35CD4100B5B899 /* UIKit.framework */; };\n\t\t537DCE9C1C35CD9A00B5B899 /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35E1AC0C95C006BBC11 /* Constraint.swift */; };\n\t\t537DCE9D1C35CDA300B5B899 /* SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32E1AD926AE00A425FA /* SnapKit.swift */; };\n\t\t537DCE9E1C35CDAA00B5B899 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32B1AD910B900A425FA /* Debugging.swift */; };\n\t\t537DCE9F1C35CDB700B5B899 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3601AC0C95C006BBC11 /* ConstraintItem.swift */; };\n\t\t537DCEA01C35CDF800B5B899 /* SnapKit.h in Headers */ = {isa = PBXBuildFile; fileRef = EECDB3661AC0C95C006BBC11 /* SnapKit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t537DCEA11C35CE0000B5B899 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF3311AD9432400A425FA /* ConstraintDescription.swift */; };\n\t\t537DCEA21C35CE0500B5B899 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3611AC0C95C006BBC11 /* ConstraintMaker.swift */; };\n\t\t537DCEA31C35CE0900B5B899 /* View+SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3671AC0C95C006BBC11 /* View+SnapKit.swift */; };\n\t\t537DCEA41C35CE1500B5B899 /* ViewController+SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE4910971B19A26000A54F1F /* ViewController+SnapKit.swift */; };\n\t\t537DCEA51C35CE1B00B5B899 /* EdgeInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3631AC0C95C006BBC11 /* EdgeInsets.swift */; };\n\t\t537DCEA61C35CE2000B5B899 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3651AC0C95C006BBC11 /* LayoutConstraint.swift */; };\n\t\t537DCEA81C35CE3800B5B899 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3621AC0C95C006BBC11 /* ConstraintRelation.swift */; };\n\t\t537DCEA91C35CE3E00B5B899 /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35F1AC0C95C006BBC11 /* ConstraintAttributes.swift */; };\n\t\t537DCEB41C35D90A00B5B899 /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 537DCE921C35CC8800B5B899 /* SnapKit.framework */; };\n\t\t537DCEBA1C35DA9700B5B899 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB36A1AC0C95C006BBC11 /* Tests.swift */; };\n\t\t56A0DC0E1C859E30005973AB /* ListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56A0DC0D1C859E30005973AB /* ListViewController.swift */; };\n\t\t56A0DC131C859E30005973AB /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 56A0DC121C859E30005973AB /* Assets.xcassets */; };\n\t\t56A0DC161C859E30005973AB /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 56A0DC141C859E30005973AB /* LaunchScreen.storyboard */; };\n\t\t56A0DC1C1C859E9A005973AB /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EEBCC9D819CC627D0083B827 /* SnapKit.framework */; };\n\t\t56A0DC1D1C859E9A005973AB /* SnapKit.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EEBCC9D819CC627D0083B827 /* SnapKit.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t56A0DC221C859F15005973AB /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56A0DC211C859F15005973AB /* AppDelegate.swift */; };\n\t\t56A0DC321C85A2C1005973AB /* BasicUIScrollViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56A0DC311C85A2C1005973AB /* BasicUIScrollViewController.swift */; };\n\t\t56A0DC341C85AFBF005973AB /* SimpleLayoutViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56A0DC331C85AFBF005973AB /* SimpleLayoutViewController.swift */; };\n\t\tEE4910981B19A26000A54F1F /* ViewController+SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE4910971B19A26000A54F1F /* ViewController+SnapKit.swift */; };\n\t\tEE4910991B19A40200A54F1F /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EEBCC9D819CC627D0083B827 /* SnapKit.framework */; };\n\t\tEE94F6091AC0F10A008767FF /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE94F6081AC0F10A008767FF /* UIKit.framework */; };\n\t\tEE94F60B1AC0F10F008767FF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE94F60A1AC0F10F008767FF /* AppKit.framework */; };\n\t\tEE94F6111AC0F146008767FF /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EECDB37A1AC0C9D4006BBC11 /* SnapKit.framework */; };\n\t\tEECDB36C1AC0C9A6006BBC11 /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35E1AC0C95C006BBC11 /* Constraint.swift */; };\n\t\tEECDB36D1AC0C9A6006BBC11 /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35F1AC0C95C006BBC11 /* ConstraintAttributes.swift */; };\n\t\tEECDB36E1AC0C9A6006BBC11 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3601AC0C95C006BBC11 /* ConstraintItem.swift */; };\n\t\tEECDB36F1AC0C9A6006BBC11 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3611AC0C95C006BBC11 /* ConstraintMaker.swift */; };\n\t\tEECDB3701AC0C9A6006BBC11 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3621AC0C95C006BBC11 /* ConstraintRelation.swift */; };\n\t\tEECDB3711AC0C9A6006BBC11 /* EdgeInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3631AC0C95C006BBC11 /* EdgeInsets.swift */; };\n\t\tEECDB3721AC0C9A6006BBC11 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3651AC0C95C006BBC11 /* LayoutConstraint.swift */; };\n\t\tEECDB3731AC0C9A6006BBC11 /* View+SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3671AC0C95C006BBC11 /* View+SnapKit.swift */; };\n\t\tEECDB3741AC0C9B6006BBC11 /* SnapKit.h in Headers */ = {isa = PBXBuildFile; fileRef = EECDB3661AC0C95C006BBC11 /* SnapKit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tEECDB3931AC0CB52006BBC11 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB36A1AC0C95C006BBC11 /* Tests.swift */; };\n\t\tEECDB3941AC0CB52006BBC11 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB36A1AC0C95C006BBC11 /* Tests.swift */; };\n\t\tEECDB3951AC0CBFF006BBC11 /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35E1AC0C95C006BBC11 /* Constraint.swift */; };\n\t\tEECDB3961AC0CBFF006BBC11 /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB35F1AC0C95C006BBC11 /* ConstraintAttributes.swift */; };\n\t\tEECDB3971AC0CBFF006BBC11 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3601AC0C95C006BBC11 /* ConstraintItem.swift */; };\n\t\tEECDB3981AC0CBFF006BBC11 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3611AC0C95C006BBC11 /* ConstraintMaker.swift */; };\n\t\tEECDB3991AC0CBFF006BBC11 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3621AC0C95C006BBC11 /* ConstraintRelation.swift */; };\n\t\tEECDB39A1AC0CBFF006BBC11 /* EdgeInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3631AC0C95C006BBC11 /* EdgeInsets.swift */; };\n\t\tEECDB39B1AC0CBFF006BBC11 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3651AC0C95C006BBC11 /* LayoutConstraint.swift */; };\n\t\tEECDB39C1AC0CBFF006BBC11 /* View+SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EECDB3671AC0C95C006BBC11 /* View+SnapKit.swift */; };\n\t\tEECDB39D1AC0CC03006BBC11 /* SnapKit.h in Headers */ = {isa = PBXBuildFile; fileRef = EECDB3661AC0C95C006BBC11 /* SnapKit.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\tEEFCF32C1AD910B900A425FA /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32B1AD910B900A425FA /* Debugging.swift */; };\n\t\tEEFCF32D1AD9250C00A425FA /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32B1AD910B900A425FA /* Debugging.swift */; };\n\t\tEEFCF32F1AD926AE00A425FA /* SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32E1AD926AE00A425FA /* SnapKit.swift */; };\n\t\tEEFCF3301AD92C2200A425FA /* SnapKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF32E1AD926AE00A425FA /* SnapKit.swift */; };\n\t\tEEFCF3321AD9432400A425FA /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF3311AD9432400A425FA /* ConstraintDescription.swift */; };\n\t\tEEFCF3331AD9432400A425FA /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEFCF3311AD9432400A425FA /* ConstraintDescription.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t56A0DC1E1C859E9A005973AB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DDC9FD8D1981B4DD009612C7 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = EEBCC9D719CC627D0083B827;\n\t\t\tremoteInfo = \"SnapKit iOS\";\n\t\t};\n\t\tEECDB3861AC0C9D4006BBC11 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = DDC9FD8D1981B4DD009612C7 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = EECDB3791AC0C9D4006BBC11;\n\t\t\tremoteInfo = \"SnapKit OSX\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\t56A0DC201C859E9A005973AB /* Embed Frameworks */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t\t56A0DC1D1C859E9A005973AB /* SnapKit.framework in Embed Frameworks */,\n\t\t\t);\n\t\t\tname = \"Embed Frameworks\";\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\t537DCE921C35CC8800B5B899 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t537DCE9A1C35CD4100B5B899 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS9.1.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };\n\t\t537DCEAF1C35D90A00B5B899 /* SnapKit tvOS Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"SnapKit tvOS Tests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t56A0DC091C859E30005973AB /* Example-iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = \"Example-iOS.app\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t56A0DC0D1C859E30005973AB /* ListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListViewController.swift; sourceTree = \"<group>\"; };\n\t\t56A0DC121C859E30005973AB /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = \"<group>\"; };\n\t\t56A0DC151C859E30005973AB /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = \"<group>\"; };\n\t\t56A0DC171C859E30005973AB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t56A0DC211C859F15005973AB /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = \"<group>\"; };\n\t\t56A0DC311C85A2C1005973AB /* BasicUIScrollViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BasicUIScrollViewController.swift; sourceTree = \"<group>\"; };\n\t\t56A0DC331C85AFBF005973AB /* SimpleLayoutViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SimpleLayoutViewController.swift; sourceTree = \"<group>\"; };\n\t\tEE4910971B19A26000A54F1F /* ViewController+SnapKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = \"ViewController+SnapKit.swift\"; sourceTree = \"<group>\"; };\n\t\tEE94F6081AC0F10A008767FF /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\tEE94F60A1AC0F10F008767FF /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = DEVELOPER_DIR; };\n\t\tEEBCC9D819CC627D0083B827 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEEBCC9E219CC627E0083B827 /* SnapKit iOS Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"SnapKit iOS Tests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEECDB35E1AC0C95C006BBC11 /* Constraint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constraint.swift; sourceTree = \"<group>\"; };\n\t\tEECDB35F1AC0C95C006BBC11 /* ConstraintAttributes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConstraintAttributes.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3601AC0C95C006BBC11 /* ConstraintItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConstraintItem.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3611AC0C95C006BBC11 /* ConstraintMaker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConstraintMaker.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3621AC0C95C006BBC11 /* ConstraintRelation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConstraintRelation.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3631AC0C95C006BBC11 /* EdgeInsets.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EdgeInsets.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3641AC0C95C006BBC11 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tEECDB3651AC0C95C006BBC11 /* LayoutConstraint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LayoutConstraint.swift; sourceTree = \"<group>\"; };\n\t\tEECDB3661AC0C95C006BBC11 /* SnapKit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SnapKit.h; sourceTree = \"<group>\"; };\n\t\tEECDB3671AC0C95C006BBC11 /* View+SnapKit.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = \"View+SnapKit.swift\"; sourceTree = \"<group>\"; };\n\t\tEECDB3691AC0C95C006BBC11 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tEECDB36A1AC0C95C006BBC11 /* Tests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests.swift; sourceTree = \"<group>\"; };\n\t\tEECDB37A1AC0C9D4006BBC11 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEECDB3841AC0C9D4006BBC11 /* SnapKit OSX Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = \"SnapKit OSX Tests.xctest\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tEEFCF32B1AD910B900A425FA /* Debugging.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Debugging.swift; sourceTree = \"<group>\"; };\n\t\tEEFCF32E1AD926AE00A425FA /* SnapKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SnapKit.swift; sourceTree = \"<group>\"; };\n\t\tEEFCF3311AD9432400A425FA /* ConstraintDescription.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConstraintDescription.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t537DCE8E1C35CC8800B5B899 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t537DCE9B1C35CD4100B5B899 /* UIKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t537DCEAC1C35D90A00B5B899 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t537DCEB41C35D90A00B5B899 /* SnapKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t56A0DC061C859E30005973AB /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t56A0DC1C1C859E9A005973AB /* SnapKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEE94F60D1AC0F132008767FF /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEE94F6111AC0F146008767FF /* SnapKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEE94F60E1AC0F136008767FF /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEE4910991B19A40200A54F1F /* SnapKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9D419CC627D0083B827 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEE94F6091AC0F10A008767FF /* UIKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3761AC0C9D4006BBC11 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEE94F60B1AC0F10F008767FF /* AppKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t56A0DC0A1C859E30005973AB /* Example-iOS */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t56A0DC301C85A20E005973AB /* demos */,\n\t\t\t\t56A0DC211C859F15005973AB /* AppDelegate.swift */,\n\t\t\t\t56A0DC0D1C859E30005973AB /* ListViewController.swift */,\n\t\t\t\t56A0DC121C859E30005973AB /* Assets.xcassets */,\n\t\t\t\t56A0DC141C859E30005973AB /* LaunchScreen.storyboard */,\n\t\t\t\t56A0DC171C859E30005973AB /* Info.plist */,\n\t\t\t);\n\t\t\tpath = \"Example-iOS\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t56A0DC301C85A20E005973AB /* demos */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t56A0DC311C85A2C1005973AB /* BasicUIScrollViewController.swift */,\n\t\t\t\t56A0DC331C85AFBF005973AB /* SimpleLayoutViewController.swift */,\n\t\t\t);\n\t\t\tpath = demos;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDDC9FD8C1981B4DD009612C7 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEECDB35D1AC0C95C006BBC11 /* Source */,\n\t\t\t\t56A0DC0A1C859E30005973AB /* Example-iOS */,\n\t\t\t\tEE94F60C1AC0F113008767FF /* Frameworks */,\n\t\t\t\tDDC9FD961981B4DD009612C7 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tDDC9FD961981B4DD009612C7 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEEBCC9D819CC627D0083B827 /* SnapKit.framework */,\n\t\t\t\tEEBCC9E219CC627E0083B827 /* SnapKit iOS Tests.xctest */,\n\t\t\t\tEECDB37A1AC0C9D4006BBC11 /* SnapKit.framework */,\n\t\t\t\tEECDB3841AC0C9D4006BBC11 /* SnapKit OSX Tests.xctest */,\n\t\t\t\t537DCE921C35CC8800B5B899 /* SnapKit.framework */,\n\t\t\t\t537DCEAF1C35D90A00B5B899 /* SnapKit tvOS Tests.xctest */,\n\t\t\t\t56A0DC091C859E30005973AB /* Example-iOS.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEE94F60C1AC0F113008767FF /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t537DCE9A1C35CD4100B5B899 /* UIKit.framework */,\n\t\t\t\tEE94F60A1AC0F10F008767FF /* AppKit.framework */,\n\t\t\t\tEE94F6081AC0F10A008767FF /* UIKit.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEECDB35D1AC0C95C006BBC11 /* Source */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEECDB3661AC0C95C006BBC11 /* SnapKit.h */,\n\t\t\t\tEEFCF32E1AD926AE00A425FA /* SnapKit.swift */,\n\t\t\t\tEECDB35E1AC0C95C006BBC11 /* Constraint.swift */,\n\t\t\t\tEEFCF3311AD9432400A425FA /* ConstraintDescription.swift */,\n\t\t\t\tEECDB3611AC0C95C006BBC11 /* ConstraintMaker.swift */,\n\t\t\t\tEECDB3671AC0C95C006BBC11 /* View+SnapKit.swift */,\n\t\t\t\tEE4910971B19A26000A54F1F /* ViewController+SnapKit.swift */,\n\t\t\t\tEECDB3601AC0C95C006BBC11 /* ConstraintItem.swift */,\n\t\t\t\tEECDB3631AC0C95C006BBC11 /* EdgeInsets.swift */,\n\t\t\t\tEECDB3651AC0C95C006BBC11 /* LayoutConstraint.swift */,\n\t\t\t\tEEFCF32B1AD910B900A425FA /* Debugging.swift */,\n\t\t\t\tEECDB3621AC0C95C006BBC11 /* ConstraintRelation.swift */,\n\t\t\t\tEECDB35F1AC0C95C006BBC11 /* ConstraintAttributes.swift */,\n\t\t\t\tEECDB36B1AC0C967006BBC11 /* Supporting Files */,\n\t\t\t\tEECDB3681AC0C95C006BBC11 /* Tests */,\n\t\t\t);\n\t\t\tpath = Source;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEECDB3681AC0C95C006BBC11 /* Tests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEECDB3691AC0C95C006BBC11 /* Info.plist */,\n\t\t\t\tEECDB36A1AC0C95C006BBC11 /* Tests.swift */,\n\t\t\t);\n\t\t\tname = Tests;\n\t\t\tpath = ../Tests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tEECDB36B1AC0C967006BBC11 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tEECDB3641AC0C95C006BBC11 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t537DCE8F1C35CC8800B5B899 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t537DCEA01C35CDF800B5B899 /* SnapKit.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9D519CC627D0083B827 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB3741AC0C9B6006BBC11 /* SnapKit.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3771AC0C9D4006BBC11 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB39D1AC0CC03006BBC11 /* SnapKit.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t537DCE911C35CC8800B5B899 /* SnapKit tvOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 537DCE991C35CC8800B5B899 /* Build configuration list for PBXNativeTarget \"SnapKit tvOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t537DCE8D1C35CC8800B5B899 /* Sources */,\n\t\t\t\t537DCE8E1C35CC8800B5B899 /* Frameworks */,\n\t\t\t\t537DCE8F1C35CC8800B5B899 /* Headers */,\n\t\t\t\t537DCE901C35CC8800B5B899 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"SnapKit tvOS\";\n\t\t\tproductName = \"SnapKit tvOS\";\n\t\t\tproductReference = 537DCE921C35CC8800B5B899 /* SnapKit.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\t537DCEAE1C35D90A00B5B899 /* SnapKit tvOS Tests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 537DCEB91C35D90A00B5B899 /* Build configuration list for PBXNativeTarget \"SnapKit tvOS Tests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t537DCEAB1C35D90A00B5B899 /* Sources */,\n\t\t\t\t537DCEAC1C35D90A00B5B899 /* Frameworks */,\n\t\t\t\t537DCEAD1C35D90A00B5B899 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"SnapKit tvOS Tests\";\n\t\t\tproductName = \"SnapKit tvOS Tests\";\n\t\t\tproductReference = 537DCEAF1C35D90A00B5B899 /* SnapKit tvOS Tests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\t56A0DC081C859E30005973AB /* Example-iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 56A0DC1A1C859E30005973AB /* Build configuration list for PBXNativeTarget \"Example-iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t56A0DC051C859E30005973AB /* Sources */,\n\t\t\t\t56A0DC061C859E30005973AB /* Frameworks */,\n\t\t\t\t56A0DC071C859E30005973AB /* Resources */,\n\t\t\t\t56A0DC201C859E9A005973AB /* Embed Frameworks */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t56A0DC1F1C859E9A005973AB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"Example-iOS\";\n\t\t\tproductName = \"Example-iOS\";\n\t\t\tproductReference = 56A0DC091C859E30005973AB /* Example-iOS.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n\t\tEEBCC9D719CC627D0083B827 /* SnapKit iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EEBCC9E819CC627E0083B827 /* Build configuration list for PBXNativeTarget \"SnapKit iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEEBCC9D319CC627D0083B827 /* Sources */,\n\t\t\t\tEEBCC9D419CC627D0083B827 /* Frameworks */,\n\t\t\t\tEEBCC9D519CC627D0083B827 /* Headers */,\n\t\t\t\tEEBCC9D619CC627D0083B827 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"SnapKit iOS\";\n\t\t\tproductName = SnapKit;\n\t\t\tproductReference = EEBCC9D819CC627D0083B827 /* SnapKit.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tEEBCC9E119CC627D0083B827 /* SnapKit iOS Tests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EEBCC9EB19CC627E0083B827 /* Build configuration list for PBXNativeTarget \"SnapKit iOS Tests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEEBCC9DE19CC627D0083B827 /* Sources */,\n\t\t\t\tEE94F60E1AC0F136008767FF /* Frameworks */,\n\t\t\t\tEEBCC9E019CC627D0083B827 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"SnapKit iOS Tests\";\n\t\t\tproductName = SnapKitTests;\n\t\t\tproductReference = EEBCC9E219CC627E0083B827 /* SnapKit iOS Tests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n\t\tEECDB3791AC0C9D4006BBC11 /* SnapKit OSX */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EECDB38D1AC0C9D4006BBC11 /* Build configuration list for PBXNativeTarget \"SnapKit OSX\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEECDB3751AC0C9D4006BBC11 /* Sources */,\n\t\t\t\tEECDB3761AC0C9D4006BBC11 /* Frameworks */,\n\t\t\t\tEECDB3771AC0C9D4006BBC11 /* Headers */,\n\t\t\t\tEECDB3781AC0C9D4006BBC11 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"SnapKit OSX\";\n\t\t\tproductName = \"SnapKit OSX\";\n\t\t\tproductReference = EECDB37A1AC0C9D4006BBC11 /* SnapKit.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n\t\tEECDB3831AC0C9D4006BBC11 /* SnapKit OSX Tests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = EECDB3901AC0C9D4006BBC11 /* Build configuration list for PBXNativeTarget \"SnapKit OSX Tests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tEECDB3801AC0C9D4006BBC11 /* Sources */,\n\t\t\t\tEE94F60D1AC0F132008767FF /* Frameworks */,\n\t\t\t\tEECDB3821AC0C9D4006BBC11 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tEECDB3871AC0C9D4006BBC11 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"SnapKit OSX Tests\";\n\t\t\tproductName = \"SnapKit OSXTests\";\n\t\t\tproductReference = EECDB3841AC0C9D4006BBC11 /* SnapKit OSX Tests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tDDC9FD8D1981B4DD009612C7 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftUpdateCheck = 0720;\n\t\t\t\tLastUpgradeCheck = 0700;\n\t\t\t\tORGANIZATIONNAME = \"SnapKit Team\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t537DCE911C35CC8800B5B899 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t537DCEAE1C35D90A00B5B899 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t56A0DC081C859E30005973AB = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.2.1;\n\t\t\t\t\t};\n\t\t\t\t\tEEBCC9D719CC627D0083B827 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tEEBCC9E119CC627D0083B827 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.0;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tEECDB3791AC0C9D4006BBC11 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\tEECDB3831AC0C9D4006BBC11 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.2;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = DDC9FD901981B4DD009612C7 /* Build configuration list for PBXProject \"SnapKit\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tBase,\n\t\t\t);\n\t\t\tmainGroup = DDC9FD8C1981B4DD009612C7;\n\t\t\tproductRefGroup = DDC9FD961981B4DD009612C7 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tEEBCC9D719CC627D0083B827 /* SnapKit iOS */,\n\t\t\t\t537DCE911C35CC8800B5B899 /* SnapKit tvOS */,\n\t\t\t\tEECDB3791AC0C9D4006BBC11 /* SnapKit OSX */,\n\t\t\t\tEEBCC9E119CC627D0083B827 /* SnapKit iOS Tests */,\n\t\t\t\t537DCEAE1C35D90A00B5B899 /* SnapKit tvOS Tests */,\n\t\t\t\tEECDB3831AC0C9D4006BBC11 /* SnapKit OSX Tests */,\n\t\t\t\t56A0DC081C859E30005973AB /* Example-iOS */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t537DCE901C35CC8800B5B899 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t537DCEAD1C35D90A00B5B899 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t56A0DC071C859E30005973AB /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t56A0DC161C859E30005973AB /* LaunchScreen.storyboard in Resources */,\n\t\t\t\t56A0DC131C859E30005973AB /* Assets.xcassets in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9D619CC627D0083B827 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9E019CC627D0083B827 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3781AC0C9D4006BBC11 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3821AC0C9D4006BBC11 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t537DCE8D1C35CC8800B5B899 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t537DCEA61C35CE2000B5B899 /* LayoutConstraint.swift in Sources */,\n\t\t\t\t537DCE9F1C35CDB700B5B899 /* ConstraintItem.swift in Sources */,\n\t\t\t\t537DCEA81C35CE3800B5B899 /* ConstraintRelation.swift in Sources */,\n\t\t\t\t537DCE9D1C35CDA300B5B899 /* SnapKit.swift in Sources */,\n\t\t\t\t537DCEA51C35CE1B00B5B899 /* EdgeInsets.swift in Sources */,\n\t\t\t\t537DCE9C1C35CD9A00B5B899 /* Constraint.swift in Sources */,\n\t\t\t\t537DCEA41C35CE1500B5B899 /* ViewController+SnapKit.swift in Sources */,\n\t\t\t\t537DCE9E1C35CDAA00B5B899 /* Debugging.swift in Sources */,\n\t\t\t\t537DCEA11C35CE0000B5B899 /* ConstraintDescription.swift in Sources */,\n\t\t\t\t537DCEA91C35CE3E00B5B899 /* ConstraintAttributes.swift in Sources */,\n\t\t\t\t537DCEA31C35CE0900B5B899 /* View+SnapKit.swift in Sources */,\n\t\t\t\t537DCEA21C35CE0500B5B899 /* ConstraintMaker.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t537DCEAB1C35D90A00B5B899 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t537DCEBA1C35DA9700B5B899 /* Tests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t56A0DC051C859E30005973AB /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t56A0DC341C85AFBF005973AB /* SimpleLayoutViewController.swift in Sources */,\n\t\t\t\t56A0DC221C859F15005973AB /* AppDelegate.swift in Sources */,\n\t\t\t\t56A0DC321C85A2C1005973AB /* BasicUIScrollViewController.swift in Sources */,\n\t\t\t\t56A0DC0E1C859E30005973AB /* ListViewController.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9D319CC627D0083B827 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB36C1AC0C9A6006BBC11 /* Constraint.swift in Sources */,\n\t\t\t\tEEFCF32F1AD926AE00A425FA /* SnapKit.swift in Sources */,\n\t\t\t\tEEFCF32C1AD910B900A425FA /* Debugging.swift in Sources */,\n\t\t\t\tEECDB3701AC0C9A6006BBC11 /* ConstraintRelation.swift in Sources */,\n\t\t\t\tEEFCF3321AD9432400A425FA /* ConstraintDescription.swift in Sources */,\n\t\t\t\tEECDB3731AC0C9A6006BBC11 /* View+SnapKit.swift in Sources */,\n\t\t\t\tEECDB3711AC0C9A6006BBC11 /* EdgeInsets.swift in Sources */,\n\t\t\t\tEE4910981B19A26000A54F1F /* ViewController+SnapKit.swift in Sources */,\n\t\t\t\tEECDB36F1AC0C9A6006BBC11 /* ConstraintMaker.swift in Sources */,\n\t\t\t\tEECDB36D1AC0C9A6006BBC11 /* ConstraintAttributes.swift in Sources */,\n\t\t\t\tEECDB3721AC0C9A6006BBC11 /* LayoutConstraint.swift in Sources */,\n\t\t\t\tEECDB36E1AC0C9A6006BBC11 /* ConstraintItem.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEEBCC9DE19CC627D0083B827 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB3931AC0CB52006BBC11 /* Tests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3751AC0C9D4006BBC11 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB3951AC0CBFF006BBC11 /* Constraint.swift in Sources */,\n\t\t\t\tEEFCF3301AD92C2200A425FA /* SnapKit.swift in Sources */,\n\t\t\t\tEEFCF32D1AD9250C00A425FA /* Debugging.swift in Sources */,\n\t\t\t\tEECDB3991AC0CBFF006BBC11 /* ConstraintRelation.swift in Sources */,\n\t\t\t\tEEFCF3331AD9432400A425FA /* ConstraintDescription.swift in Sources */,\n\t\t\t\tEECDB39C1AC0CBFF006BBC11 /* View+SnapKit.swift in Sources */,\n\t\t\t\tEECDB39A1AC0CBFF006BBC11 /* EdgeInsets.swift in Sources */,\n\t\t\t\tEECDB3981AC0CBFF006BBC11 /* ConstraintMaker.swift in Sources */,\n\t\t\t\tEECDB3961AC0CBFF006BBC11 /* ConstraintAttributes.swift in Sources */,\n\t\t\t\tEECDB39B1AC0CBFF006BBC11 /* LayoutConstraint.swift in Sources */,\n\t\t\t\tEECDB3971AC0CBFF006BBC11 /* ConstraintItem.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tEECDB3801AC0C9D4006BBC11 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tEECDB3941AC0CB52006BBC11 /* Tests.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t56A0DC1F1C859E9A005973AB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = EEBCC9D719CC627D0083B827 /* SnapKit iOS */;\n\t\t\ttargetProxy = 56A0DC1E1C859E9A005973AB /* PBXContainerItemProxy */;\n\t\t};\n\t\tEECDB3871AC0C9D4006BBC11 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = EECDB3791AC0C9D4006BBC11 /* SnapKit OSX */;\n\t\t\ttargetProxy = EECDB3861AC0C9D4006BBC11 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin PBXVariantGroup section */\n\t\t56A0DC141C859E30005973AB /* LaunchScreen.storyboard */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t56A0DC151C859E30005973AB /* Base */,\n\t\t\t);\n\t\t\tname = LaunchScreen.storyboard;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t537DCE971C35CC8800B5B899 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = io.snapkit.SnapKit;\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t537DCE981C35CC8800B5B899 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = io.snapkit.SnapKit;\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTARGETED_DEVICE_FAMILY = 3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t537DCEB71C35D90A00B5B899 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.1;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t537DCEB81C35D90A00B5B899 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = appletvos;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTVOS_DEPLOYMENT_TARGET = 9.1;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t56A0DC181C859E30005973AB /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tEMBEDDED_CONTENT_CONTAINS_SWIFT = YES;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"Example-iOS/Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.Example-iOS\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t56A0DC191C859E30005973AB /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tEMBEDDED_CONTENT_CONTAINS_SWIFT = YES;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tINFOPLIST_FILE = \"Example-iOS/Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.Example-iOS\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tDDC9FDAF1981B4DD009612C7 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tDDC9FDB01981B4DD009612C7 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Distribution\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.9;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEEBCC9E919CC627E0083B827 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEEBCC9EA19CC627E0083B827 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = \"iphonesimulator iphoneos\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEEBCC9EC19CC627E0083B827 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEEBCC9ED19CC627E0083B827 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEECDB38E1AC0C9D4006BBC11 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEECDB38F1AC0C9D4006BBC11 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tAPPLICATION_EXTENSION_API_ONLY = YES;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tFRAMEWORK_VERSION = A;\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Source/Info.plist\";\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = SnapKit;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t\tSUPPORTED_PLATFORMS = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tEECDB3911AC0C9D4006BBC11 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tEECDB3921AC0C9D4006BBC11 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Tests/Info.plist\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.10;\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"io.snapkit.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t537DCE991C35CC8800B5B899 /* Build configuration list for PBXNativeTarget \"SnapKit tvOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t537DCE971C35CC8800B5B899 /* Debug */,\n\t\t\t\t537DCE981C35CC8800B5B899 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t537DCEB91C35D90A00B5B899 /* Build configuration list for PBXNativeTarget \"SnapKit tvOS Tests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t537DCEB71C35D90A00B5B899 /* Debug */,\n\t\t\t\t537DCEB81C35D90A00B5B899 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t56A0DC1A1C859E30005973AB /* Build configuration list for PBXNativeTarget \"Example-iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t56A0DC181C859E30005973AB /* Debug */,\n\t\t\t\t56A0DC191C859E30005973AB /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tDDC9FD901981B4DD009612C7 /* Build configuration list for PBXProject \"SnapKit\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tDDC9FDAF1981B4DD009612C7 /* Debug */,\n\t\t\t\tDDC9FDB01981B4DD009612C7 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEEBCC9E819CC627E0083B827 /* Build configuration list for PBXNativeTarget \"SnapKit iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEEBCC9E919CC627E0083B827 /* Debug */,\n\t\t\t\tEEBCC9EA19CC627E0083B827 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEEBCC9EB19CC627E0083B827 /* Build configuration list for PBXNativeTarget \"SnapKit iOS Tests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEEBCC9EC19CC627E0083B827 /* Debug */,\n\t\t\t\tEEBCC9ED19CC627E0083B827 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEECDB38D1AC0C9D4006BBC11 /* Build configuration list for PBXNativeTarget \"SnapKit OSX\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEECDB38E1AC0C9D4006BBC11 /* Debug */,\n\t\t\t\tEECDB38F1AC0C9D4006BBC11 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tEECDB3901AC0C9D4006BBC11 /* Build configuration list for PBXNativeTarget \"SnapKit OSX Tests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tEECDB3911AC0C9D4006BBC11 /* Debug */,\n\t\t\t\tEECDB3921AC0C9D4006BBC11 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = DDC9FD8D1981B4DD009612C7 /* Project object */;\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.xcodeproj/xcshareddata/xcschemes/SnapKit OSX.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EECDB3791AC0C9D4006BBC11\"\n               BuildableName = \"SnapKit.framework\"\n               BlueprintName = \"SnapKit OSX\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EECDB3831AC0C9D4006BBC11\"\n               BuildableName = \"SnapKit OSX Tests.xctest\"\n               BlueprintName = \"SnapKit OSX Tests\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EECDB3831AC0C9D4006BBC11\"\n               BuildableName = \"SnapKit OSX Tests.xctest\"\n               BlueprintName = \"SnapKit OSX Tests\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EECDB3791AC0C9D4006BBC11\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit OSX\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EECDB3791AC0C9D4006BBC11\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit OSX\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EECDB3791AC0C9D4006BBC11\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit OSX\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.xcodeproj/xcshareddata/xcschemes/SnapKit iOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0700\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EEBCC9D719CC627D0083B827\"\n               BuildableName = \"SnapKit.framework\"\n               BlueprintName = \"SnapKit iOS\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EEBCC9E119CC627D0083B827\"\n               BuildableName = \"SnapKit iOS Tests.xctest\"\n               BlueprintName = \"SnapKit iOS Tests\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      buildConfiguration = \"Debug\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"EEBCC9E119CC627D0083B827\"\n               BuildableName = \"SnapKit iOS Tests.xctest\"\n               BlueprintName = \"SnapKit iOS Tests\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EEBCC9D719CC627D0083B827\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit iOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Debug\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EEBCC9D719CC627D0083B827\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit iOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      buildConfiguration = \"Release\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"EEBCC9D719CC627D0083B827\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit iOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.xcodeproj/xcshareddata/xcschemes/SnapKit tvOS.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0720\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"537DCE911C35CC8800B5B899\"\n               BuildableName = \"SnapKit.framework\"\n               BlueprintName = \"SnapKit tvOS\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"537DCEAE1C35D90A00B5B899\"\n               BuildableName = \"SnapKit tvOS Tests.xctest\"\n               BlueprintName = \"SnapKit tvOS Tests\"\n               ReferencedContainer = \"container:SnapKit.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"537DCE911C35CC8800B5B899\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit tvOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"537DCE911C35CC8800B5B899\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit tvOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"537DCE911C35CC8800B5B899\"\n            BuildableName = \"SnapKit.framework\"\n            BlueprintName = \"SnapKit tvOS\"\n            ReferencedContainer = \"container:SnapKit.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/SnapKit.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"container:SnapKit.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/Constraint.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to expose API's for a Constraint\n*/\npublic class Constraint {\n    \n    public func install() -> [LayoutConstraint] { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func uninstall() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func activate() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func deactivate() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    \n    public func updateOffset(amount: Float) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: Double) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: CGFloat) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: Int) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: UInt) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: CGPoint) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: CGSize) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updateOffset(amount: EdgeInsets) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    \n    public func updateInsets(amount: EdgeInsets) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    \n    public func updatePriority(priority: Float) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriority(priority: Double) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriority(priority: CGFloat) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriority(priority: UInt) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriority(priority: Int) -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriorityRequired() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriorityHigh() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriorityMedium() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    public func updatePriorityLow() -> Void { fatalError(\"Must be implemented by Concrete subclass.\") }\n    \n    internal var makerFile: String = \"Unknown\"\n    internal var makerLine: UInt = 0\n    \n}\n\n/**\n    Used internally to implement a ConcreteConstraint\n*/\ninternal class ConcreteConstraint: Constraint {\n    \n    internal override func updateOffset(amount: Float) -> Void {\n        self.constant = amount\n    }\n    internal override func updateOffset(amount: Double) -> Void {\n        self.updateOffset(Float(amount))\n    }\n    internal override func updateOffset(amount: CGFloat) -> Void {\n        self.updateOffset(Float(amount))\n    }\n    internal override func updateOffset(amount: Int) -> Void {\n        self.updateOffset(Float(amount))\n    }\n    internal override func updateOffset(amount: UInt) -> Void {\n        self.updateOffset(Float(amount))\n    }\n    internal override func updateOffset(amount: CGPoint) -> Void {\n        self.constant = amount\n    }\n    internal override func updateOffset(amount: CGSize) -> Void {\n        self.constant = amount\n    }\n    internal override func updateOffset(amount: EdgeInsets) -> Void {\n        self.constant = amount\n    }\n    \n    internal override func updateInsets(amount: EdgeInsets) -> Void {\n        self.constant = EdgeInsets(top: amount.top, left: amount.left, bottom: -amount.bottom, right: -amount.right)\n    }\n    \n    internal override func updatePriority(priority: Float) -> Void {\n        self.priority = priority\n    }\n    internal override func updatePriority(priority: Double) -> Void {\n        self.updatePriority(Float(priority))\n    }\n    internal override func updatePriority(priority: CGFloat) -> Void {\n        self.updatePriority(Float(priority))\n    }\n    internal override func updatePriority(priority: UInt) -> Void {\n        self.updatePriority(Float(priority))\n    }\n    internal override func updatePriority(priority: Int) -> Void {\n        self.updatePriority(Float(priority))\n    }\n    internal override func updatePriorityRequired() -> Void {\n        self.updatePriority(Float(1000.0))\n    }\n    internal override func updatePriorityHigh() -> Void {\n        self.updatePriority(Float(750.0))\n    }\n    internal override func updatePriorityMedium() -> Void {\n        #if os(iOS) || os(tvOS)\n        self.updatePriority(Float(500.0))\n        #else\n        self.updatePriority(Float(501.0))\n        #endif\n    }\n    internal override func updatePriorityLow() -> Void {\n        self.updatePriority(Float(250.0))\n    }\n    \n    internal override func install() -> [LayoutConstraint] {\n        return self.installOnView(updateExisting: false, file: self.makerFile, line: self.makerLine)\n    }\n    \n    internal override func uninstall() -> Void {\n        self.uninstallFromView()\n    }\n    \n    internal override func activate() -> Void {\n        guard self.installInfo != nil else {\n            self.install()\n            return\n        }\n        #if SNAPKIT_DEPLOYMENT_LEGACY\n        guard #available(iOS 8.0, OSX 10.10, *) else {\n            self.install()\n            return\n        }\n        #endif\n        let layoutConstraints = self.installInfo!.layoutConstraints.allObjects as! [LayoutConstraint]\n        if layoutConstraints.count > 0 {\n            NSLayoutConstraint.activateConstraints(layoutConstraints)\n        }\n    }\n    \n    internal override func deactivate() -> Void {\n        guard self.installInfo != nil else {\n            return\n        }\n        #if SNAPKIT_DEPLOYMENT_LEGACY\n        guard #available(iOS 8.0, OSX 10.10, *) else {\n            return\n        }\n        #endif\n        let layoutConstraints = self.installInfo!.layoutConstraints.allObjects as! [LayoutConstraint]\n        if layoutConstraints.count > 0 {\n            NSLayoutConstraint.deactivateConstraints(layoutConstraints)\n        }\n    }\n    \n    private let fromItem: ConstraintItem\n    private let toItem: ConstraintItem\n    private let relation: ConstraintRelation\n    private let multiplier: Float\n    private var constant: Any {\n        didSet {\n            if let installInfo = self.installInfo {\n                for layoutConstraint in installInfo.layoutConstraints.allObjects as! [LayoutConstraint] {\n                    let attribute = (layoutConstraint.secondAttribute == .NotAnAttribute) ? layoutConstraint.firstAttribute : layoutConstraint.secondAttribute\n                    layoutConstraint.constant = attribute.snp_constantForValue(self.constant)\n                }\n            }\n        }\n    }\n    private var priority: Float {\n        didSet {\n            if let installInfo = self.installInfo {\n                for layoutConstraint in installInfo.layoutConstraints.allObjects as! [LayoutConstraint] {\n                    layoutConstraint.priority = self.priority\n                }\n            }\n        }\n    }\n    \n    private let label: String?\n    \n    private var installInfo: ConcreteConstraintInstallInfo? = nil\n    \n    internal init(fromItem: ConstraintItem, toItem: ConstraintItem, relation: ConstraintRelation, constant: Any, multiplier: Float, priority: Float, label: String? = nil) {\n        self.fromItem = fromItem\n        self.toItem = toItem\n        self.relation = relation\n        self.constant = constant\n        self.multiplier = multiplier\n        self.priority = priority\n        self.label = label\n    }\n    \n    internal func installOnView(updateExisting updateExisting: Bool = false, file: String? = nil, line: UInt? = nil) -> [LayoutConstraint] {\n        var installOnView: View? = nil\n        if self.toItem.view != nil {\n            installOnView = closestCommonSuperviewFromView(self.fromItem.view, toView: self.toItem.view)\n            if installOnView == nil {\n                NSException(name: \"Cannot Install Constraint\", reason: \"No common superview between views (@\\(self.makerFile)#\\(self.makerLine))\", userInfo: nil).raise()\n                return []\n            }\n        } else {\n            \n            if self.fromItem.attributes.isSubsetOf(ConstraintAttributes.Width.union(.Height)) {\n                installOnView = self.fromItem.view\n            } else {\n                installOnView = self.fromItem.view?.superview\n                if installOnView == nil {\n                    NSException(name: \"Cannot Install Constraint\", reason: \"Missing superview (@\\(self.makerFile)#\\(self.makerLine))\", userInfo: nil).raise()\n                    return []\n                }\n            }\n        }\n        \n        if let installedOnView = self.installInfo?.view {\n            if installedOnView != installOnView {\n                NSException(name: \"Cannot Install Constraint\", reason: \"Already installed on different view. (@\\(self.makerFile)#\\(self.makerLine))\", userInfo: nil).raise()\n                return []\n            }\n            return self.installInfo?.layoutConstraints.allObjects as? [LayoutConstraint] ?? []\n        }\n        \n        var newLayoutConstraints = [LayoutConstraint]()\n        let layoutFromAttributes = self.fromItem.attributes.layoutAttributes\n        let layoutToAttributes = self.toItem.attributes.layoutAttributes\n        \n        // get layout from\n        let layoutFrom: View? = self.fromItem.view\n        \n        // get layout relation\n        let layoutRelation: NSLayoutRelation = self.relation.layoutRelation\n        \n        for layoutFromAttribute in layoutFromAttributes {\n            // get layout to attribute\n            let layoutToAttribute = (layoutToAttributes.count > 0) ? layoutToAttributes[0] : layoutFromAttribute\n            \n            // get layout constant\n            let layoutConstant: CGFloat = layoutToAttribute.snp_constantForValue(self.constant)\n            \n            // get layout to\n            #if os(iOS) || os(tvOS)\n            var layoutTo: AnyObject? = self.toItem.view ?? self.toItem.layoutSupport\n            #else\n            var layoutTo: AnyObject? = self.toItem.view\n            #endif\n            if layoutTo == nil && layoutToAttribute != .Width && layoutToAttribute != .Height {\n                layoutTo = installOnView\n            }\n            \n            // create layout constraint\n            let layoutConstraint = LayoutConstraint(\n                item: layoutFrom!,\n                attribute: layoutFromAttribute,\n                relatedBy: layoutRelation,\n                toItem: layoutTo,\n                attribute: layoutToAttribute,\n                multiplier: CGFloat(self.multiplier),\n                constant: layoutConstant)\n            layoutConstraint.identifier = self.label\n            \n            // set priority\n            layoutConstraint.priority = self.priority\n            \n            // set constraint\n            layoutConstraint.snp_constraint = self\n            \n            newLayoutConstraints.append(layoutConstraint)\n        }\n        \n        // special logic for updating\n        if updateExisting {\n            // get existing constraints for this view\n            let existingLayoutConstraints = layoutFrom!.snp_installedLayoutConstraints.reverse()\n            \n            // array that will contain only new layout constraints to keep\n            var newLayoutConstraintsToKeep = [LayoutConstraint]()\n            \n            // begin looping\n            for layoutConstraint in newLayoutConstraints {\n                // layout constraint that should be updated\n                var updateLayoutConstraint: LayoutConstraint? = nil\n                \n                // loop through existing and check for match\n                for existingLayoutConstraint in existingLayoutConstraints {\n                    if existingLayoutConstraint == layoutConstraint {\n                        updateLayoutConstraint = existingLayoutConstraint\n                        break\n                    }\n                }\n                \n                // if we have existing one lets just update the constant\n                if updateLayoutConstraint != nil {\n                    updateLayoutConstraint!.constant = layoutConstraint.constant\n                }\n                    // otherwise add this layout constraint to new keep list\n                else {\n                    newLayoutConstraintsToKeep.append(layoutConstraint)\n                }\n            }\n            \n            // set constraints to only new ones\n            newLayoutConstraints = newLayoutConstraintsToKeep\n        }\n        \n        // add constraints\n        #if SNAPKIT_DEPLOYMENT_LEGACY && !os(OSX)\n        if #available(iOS 8.0, *) {\n            NSLayoutConstraint.activateConstraints(newLayoutConstraints)\n        } else {\n            installOnView!.addConstraints(newLayoutConstraints)\n        }\n        #else\n            NSLayoutConstraint.activateConstraints(newLayoutConstraints)\n        #endif\n        \n        // set install info\n        self.installInfo = ConcreteConstraintInstallInfo(view: installOnView, layoutConstraints: NSHashTable.weakObjectsHashTable())\n        \n        // store which layout constraints are installed for this constraint\n        for layoutConstraint in newLayoutConstraints {\n            self.installInfo!.layoutConstraints.addObject(layoutConstraint)\n        }\n        \n        // store the layout constraints against the layout from view\n        layoutFrom!.snp_installedLayoutConstraints += newLayoutConstraints\n        \n        // return the new constraints\n        return newLayoutConstraints\n    }\n    \n    internal func uninstallFromView() {\n        if let installInfo = self.installInfo,\n            let installedLayoutConstraints = installInfo.layoutConstraints.allObjects as? [LayoutConstraint] {\n                \n                if installedLayoutConstraints.count > 0 {\n                    // remove the constraints from the UIView's storage\n                    #if SNAPKIT_DEPLOYMENT_LEGACY && !os(OSX)\n                    if #available(iOS 8.0, *) {\n                        NSLayoutConstraint.deactivateConstraints(installedLayoutConstraints)\n                    } else if let installedOnView = installInfo.view {\n                        installedOnView.removeConstraints(installedLayoutConstraints)\n                    }\n                    #else\n                        NSLayoutConstraint.deactivateConstraints(installedLayoutConstraints)\n                    #endif\n                    \n                    // remove the constraints from the from item view\n                    if let fromView = self.fromItem.view {\n                        fromView.snp_installedLayoutConstraints = fromView.snp_installedLayoutConstraints.filter {\n                            return !installedLayoutConstraints.contains($0)\n                        }\n                    }\n                }\n                \n        }\n        self.installInfo = nil\n    }\n    \n}\n\nprivate struct ConcreteConstraintInstallInfo {\n    \n    weak var view: View? = nil\n    let layoutConstraints: NSHashTable\n    \n}\n\nprivate extension NSLayoutAttribute {\n    \n    private func snp_constantForValue(value: Any?) -> CGFloat {\n        // Float\n        if let float = value as? Float {\n            return CGFloat(float)\n        }\n            // Double\n        else if let double = value as? Double {\n            return CGFloat(double)\n        }\n            // UInt\n        else if let int = value as? Int {\n            return CGFloat(int)\n        }\n            // Int\n        else if let uint = value as? UInt {\n            return CGFloat(uint)\n        }\n            // CGFloat\n        else if let float = value as? CGFloat {\n            return float\n        }\n            // CGSize\n        else if let size = value as? CGSize {\n            if self == .Width {\n                return size.width\n            } else if self == .Height {\n                return size.height\n            }\n        }\n            // CGPoint\n        else if let point = value as? CGPoint {\n            #if os(iOS) || os(tvOS)\n                switch self {\n                case .Left, .CenterX, .LeftMargin, .CenterXWithinMargins: return point.x\n                case .Top, .CenterY, .TopMargin, .CenterYWithinMargins, .LastBaseline, .FirstBaseline: return point.y\n                case .Right, .RightMargin: return point.x\n                case .Bottom, .BottomMargin: return point.y\n                case .Leading, .LeadingMargin: return point.x\n                case .Trailing, .TrailingMargin: return point.x\n                case .Width, .Height, .NotAnAttribute: return CGFloat(0)\n                }\n            #else\n                switch self {\n                case .Left, .CenterX: return point.x\n                case .Top, .CenterY, .LastBaseline: return point.y\n                case .Right: return point.x\n                case .Bottom: return point.y\n                case .Leading: return point.x\n                case .Trailing: return point.x\n                case .Width, .Height, .NotAnAttribute: return CGFloat(0)\n                case .FirstBaseline: return point.y\n                }\n            #endif\n        }\n            // EdgeInsets\n        else if let insets = value as? EdgeInsets {\n            #if os(iOS) || os(tvOS)\n                switch self {\n                case .Left, .CenterX, .LeftMargin, .CenterXWithinMargins: return insets.left\n                case .Top, .CenterY, .TopMargin, .CenterYWithinMargins, .LastBaseline, .FirstBaseline: return insets.top\n                case .Right, .RightMargin: return insets.right\n                case .Bottom, .BottomMargin: return insets.bottom\n                case .Leading, .LeadingMargin: return  (Config.interfaceLayoutDirection == .LeftToRight) ? insets.left : -insets.right\n                case .Trailing, .TrailingMargin: return  (Config.interfaceLayoutDirection == .LeftToRight) ? insets.right : -insets.left\n                case .Width: return -insets.left + insets.right\n                case .Height: return -insets.top + insets.bottom\n                case .NotAnAttribute: return CGFloat(0)\n                }\n            #else\n                switch self {\n                case .Left, .CenterX: return insets.left\n                case .Top, .CenterY, .LastBaseline: return insets.top\n                case .Right: return insets.right\n                case .Bottom: return insets.bottom\n                case .Leading: return  (Config.interfaceLayoutDirection == .LeftToRight) ? insets.left : -insets.right\n                case .Trailing: return  (Config.interfaceLayoutDirection == .LeftToRight) ? insets.right : -insets.left\n                case .Width: return -insets.left + insets.right\n                case .Height: return -insets.top + insets.bottom\n                case .NotAnAttribute: return CGFloat(0)\n                case .FirstBaseline: return insets.bottom\n                }\n            #endif\n        }\n        \n        return CGFloat(0);\n    }\n}\n\nprivate func closestCommonSuperviewFromView(fromView: View?, toView: View?) -> View? {\n    var views = Set<View>()\n    var fromView = fromView\n    var toView = toView\n    repeat {\n        if let view = toView {\n            if views.contains(view) {\n                return view\n            }\n            views.insert(view)\n            toView = view.superview\n        }\n        if let view = fromView {\n            if views.contains(view) {\n                return view\n            }\n            views.insert(view)\n            fromView = view.superview\n        }\n    } while (fromView != nil || toView != nil)\n    \n    return nil\n}\n\nprivate func ==(left: ConcreteConstraint, right: ConcreteConstraint) -> Bool {\n    return (left.fromItem == right.fromItem &&\n            left.toItem == right.toItem &&\n            left.relation == right.relation &&\n            left.multiplier == right.multiplier &&\n            left.priority == right.priority)\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ConstraintAttributes.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to define `NSLayoutAttributes` in a more concise and composite manner\n*/\ninternal struct ConstraintAttributes: OptionSetType, BooleanType {\n    \n    internal init(rawValue: UInt) {\n        self.rawValue = rawValue\n    }\n    internal init(_ rawValue: UInt) {\n        self.init(rawValue: rawValue)\n    }\n    internal init(nilLiteral: ()) {\n        self.rawValue = 0\n    }\n    \n    internal private(set) var rawValue: UInt\n    internal static var allZeros: ConstraintAttributes { return self.init(0) }\n    internal static func convertFromNilLiteral() -> ConstraintAttributes { return self.init(0) }\n    internal var boolValue: Bool { return self.rawValue != 0 }\n    \n    internal func toRaw() -> UInt { return self.rawValue }\n    internal static func fromRaw(raw: UInt) -> ConstraintAttributes? { return self.init(raw) }\n    internal static func fromMask(raw: UInt) -> ConstraintAttributes { return self.init(raw) }\n    \n    // normal\n    \n    internal static var None: ConstraintAttributes { return self.init(0) }\n    internal static var Left: ConstraintAttributes { return self.init(1) }\n    internal static var Top: ConstraintAttributes {  return self.init(2) }\n    internal static var Right: ConstraintAttributes { return self.init(4) }\n    internal static var Bottom: ConstraintAttributes { return self.init(8) }\n    internal static var Leading: ConstraintAttributes { return self.init(16) }\n    internal static var Trailing: ConstraintAttributes { return self.init(32) }\n    internal static var Width: ConstraintAttributes { return self.init(64) }\n    internal static var Height: ConstraintAttributes { return self.init(128) }\n    internal static var CenterX: ConstraintAttributes { return self.init(256) }\n    internal static var CenterY: ConstraintAttributes { return self.init(512) }\n    internal static var Baseline: ConstraintAttributes { return self.init(1024) }\n    \n    @available(iOS 8.0, *)\n    internal static var FirstBaseline: ConstraintAttributes { return self.init(2048) }\n    @available(iOS 8.0, *)\n    internal static var LeftMargin: ConstraintAttributes { return self.init(4096) }\n    @available(iOS 8.0, *)\n    internal static var RightMargin: ConstraintAttributes { return self.init(8192) }\n    @available(iOS 8.0, *)\n    internal static var TopMargin: ConstraintAttributes { return self.init(16384) }\n    @available(iOS 8.0, *)\n    internal static var BottomMargin: ConstraintAttributes { return self.init(32768) }\n    @available(iOS 8.0, *)\n    internal static var LeadingMargin: ConstraintAttributes { return self.init(65536) }\n    @available(iOS 8.0, *)\n    internal static var TrailingMargin: ConstraintAttributes { return self.init(131072) }\n    @available(iOS 8.0, *)\n    internal static var CenterXWithinMargins: ConstraintAttributes { return self.init(262144) }\n    @available(iOS 8.0, *)\n    internal static var CenterYWithinMargins: ConstraintAttributes { return self.init(524288) }\n    \n    // aggregates\n    \n    internal static var Edges: ConstraintAttributes { return self.init(15) }\n    internal static var Size: ConstraintAttributes { return self.init(192) }\n    internal static var Center: ConstraintAttributes { return self.init(768) }\n    \n    @available(iOS 8.0, *)\n    internal static var Margins: ConstraintAttributes { return self.init(61440) }\n    \n    @available(iOS 8.0, *)\n    internal static var CenterWithinMargins: ConstraintAttributes { return self.init(786432) }\n    \n    internal var layoutAttributes:[NSLayoutAttribute] {\n        var attrs = [NSLayoutAttribute]()\n        if (self.contains(ConstraintAttributes.Left)) {\n            attrs.append(.Left)\n        }\n        if (self.contains(ConstraintAttributes.Top)) {\n            attrs.append(.Top)\n        }\n        if (self.contains(ConstraintAttributes.Right)) {\n            attrs.append(.Right)\n        }\n        if (self.contains(ConstraintAttributes.Bottom)) {\n            attrs.append(.Bottom)\n        }\n        if (self.contains(ConstraintAttributes.Leading)) {\n            attrs.append(.Leading)\n        }\n        if (self.contains(ConstraintAttributes.Trailing)) {\n            attrs.append(.Trailing)\n        }\n        if (self.contains(ConstraintAttributes.Width)) {\n            attrs.append(.Width)\n        }\n        if (self.contains(ConstraintAttributes.Height)) {\n            attrs.append(.Height)\n        }\n        if (self.contains(ConstraintAttributes.CenterX)) {\n            attrs.append(.CenterX)\n        }\n        if (self.contains(ConstraintAttributes.CenterY)) {\n            attrs.append(.CenterY)\n        }\n        if (self.contains(ConstraintAttributes.Baseline)) {\n            #if swift(>=2.3)\n            attrs.append(.LastBaseline)\n            #else\n            attrs.append(.Baseline)\n            #endif\n        }\n        \n        #if os(iOS) || os(tvOS)\n        #if SNAPKIT_DEPLOYMENT_LEGACY\n        guard #available(iOS 8.0, *) else {\n            return attrs\n        }\n        #endif\n        if (self.contains(ConstraintAttributes.FirstBaseline)) {\n            attrs.append(.FirstBaseline)\n        }\n        if (self.contains(ConstraintAttributes.LeftMargin)) {\n            attrs.append(.LeftMargin)\n        }\n        if (self.contains(ConstraintAttributes.RightMargin)) {\n            attrs.append(.RightMargin)\n        }\n        if (self.contains(ConstraintAttributes.TopMargin)) {\n            attrs.append(.TopMargin)\n        }\n        if (self.contains(ConstraintAttributes.BottomMargin)) {\n            attrs.append(.BottomMargin)\n        }\n        if (self.contains(ConstraintAttributes.LeadingMargin)) {\n            attrs.append(.LeadingMargin)\n        }\n        if (self.contains(ConstraintAttributes.TrailingMargin)) {\n            attrs.append(.TrailingMargin)\n        }\n        if (self.contains(ConstraintAttributes.CenterXWithinMargins)) {\n            attrs.append(.CenterXWithinMargins)\n        }\n        if (self.contains(ConstraintAttributes.CenterYWithinMargins)) {\n            attrs.append(.CenterYWithinMargins)\n        }\n        #endif\n        \n        return attrs\n    }\n}\ninternal func +=(inout left: ConstraintAttributes, right: ConstraintAttributes) {\n    left.unionInPlace(right)\n}\ninternal func -=(inout left: ConstraintAttributes, right: ConstraintAttributes) {\n    left.subtractInPlace(right)\n}\ninternal func ==(left: ConstraintAttributes, right: ConstraintAttributes) -> Bool {\n    return left.rawValue == right.rawValue\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ConstraintDescription.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to expose the final API of a `ConstraintDescription` which allows getting a constraint from it\n */\npublic protocol ConstraintDescriptionFinalizable: class {\n    \n    var constraint: Constraint { get }\n    \n    func labeled(label: String) -> ConstraintDescriptionFinalizable\n    \n}\n\n/**\n    Used to expose priority APIs\n */\npublic protocol ConstraintDescriptionPriortizable: ConstraintDescriptionFinalizable {\n    \n    func priority(priority: Float) -> ConstraintDescriptionFinalizable\n    func priority(priority: Double) -> ConstraintDescriptionFinalizable\n    func priority(priority: CGFloat) -> ConstraintDescriptionFinalizable\n    func priority(priority: UInt) -> ConstraintDescriptionFinalizable\n    func priority(priority: Int) -> ConstraintDescriptionFinalizable\n    func priorityRequired() -> ConstraintDescriptionFinalizable\n    func priorityHigh() -> ConstraintDescriptionFinalizable\n    func priorityMedium() -> ConstraintDescriptionFinalizable\n    func priorityLow() -> ConstraintDescriptionFinalizable\n}\n\n/**\n    Used to expose multiplier & constant APIs\n*/\npublic protocol ConstraintDescriptionEditable: ConstraintDescriptionPriortizable {\n\n    func multipliedBy(amount: Float) -> ConstraintDescriptionEditable\n    func multipliedBy(amount: Double) -> ConstraintDescriptionEditable\n    func multipliedBy(amount: CGFloat) -> ConstraintDescriptionEditable\n    func multipliedBy(amount: Int) -> ConstraintDescriptionEditable\n    func multipliedBy(amount: UInt) -> ConstraintDescriptionEditable\n    \n    func dividedBy(amount: Float) -> ConstraintDescriptionEditable\n    func dividedBy(amount: Double) -> ConstraintDescriptionEditable\n    func dividedBy(amount: CGFloat) -> ConstraintDescriptionEditable\n    func dividedBy(amount: Int) -> ConstraintDescriptionEditable\n    func dividedBy(amount: UInt) -> ConstraintDescriptionEditable\n\n    func offset(amount: Float) -> ConstraintDescriptionEditable\n    func offset(amount: Double) -> ConstraintDescriptionEditable\n    func offset(amount: CGFloat) -> ConstraintDescriptionEditable\n    func offset(amount: Int) -> ConstraintDescriptionEditable\n    func offset(amount: UInt) -> ConstraintDescriptionEditable\n    func offset(amount: CGPoint) -> ConstraintDescriptionEditable\n    func offset(amount: CGSize) -> ConstraintDescriptionEditable\n    func offset(amount: EdgeInsets) -> ConstraintDescriptionEditable\n    \n    func inset(amount: Float) -> ConstraintDescriptionEditable\n    func inset(amount: Double) -> ConstraintDescriptionEditable\n    func inset(amount: CGFloat) -> ConstraintDescriptionEditable\n    func inset(amount: Int) -> ConstraintDescriptionEditable\n    func inset(amount: UInt) -> ConstraintDescriptionEditable\n    func inset(amount: EdgeInsets) -> ConstraintDescriptionEditable\n}\n\n/**\n    Used to expose relation APIs\n*/\npublic protocol ConstraintDescriptionRelatable: class {\n    \n    func equalTo(other: ConstraintItem) -> ConstraintDescriptionEditable\n    func equalTo(other: View) -> ConstraintDescriptionEditable\n    func equalToSuperview() -> ConstraintDescriptionEditable\n    @available(iOS 7.0, *)\n    func equalTo(other: LayoutSupport) -> ConstraintDescriptionEditable\n    @available(iOS 9.0, OSX 10.11, *)\n    func equalTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable\n    func equalTo(other: Float) -> ConstraintDescriptionEditable\n    func equalTo(other: Double) -> ConstraintDescriptionEditable\n    func equalTo(other: CGFloat) -> ConstraintDescriptionEditable\n    func equalTo(other: Int) -> ConstraintDescriptionEditable\n    func equalTo(other: UInt) -> ConstraintDescriptionEditable\n    func equalTo(other: CGSize) -> ConstraintDescriptionEditable\n    func equalTo(other: CGPoint) -> ConstraintDescriptionEditable\n    func equalTo(other: EdgeInsets) -> ConstraintDescriptionEditable\n    \n    func lessThanOrEqualTo(other: ConstraintItem) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: View) -> ConstraintDescriptionEditable\n    func lessThanOrEqualToSuperview() -> ConstraintDescriptionEditable\n    @available(iOS 7.0, *)\n    func lessThanOrEqualTo(other: LayoutSupport) -> ConstraintDescriptionEditable\n    @available(iOS 9.0, OSX 10.11, *)\n    func lessThanOrEqualTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: Float) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: Double) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: CGFloat) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: Int) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: UInt) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: CGSize) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: CGPoint) -> ConstraintDescriptionEditable\n    func lessThanOrEqualTo(other: EdgeInsets) -> ConstraintDescriptionEditable\n    \n    func greaterThanOrEqualTo(other: ConstraintItem) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: View) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualToSuperview() -> ConstraintDescriptionEditable\n    @available(iOS 7.0, *)\n    func greaterThanOrEqualTo(other: LayoutSupport) -> ConstraintDescriptionEditable\n    @available(iOS 9.0, OSX 10.11, *)\n    func greaterThanOrEqualTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: Float) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: Double) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: CGFloat) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: Int) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: UInt) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: CGSize) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: CGPoint) -> ConstraintDescriptionEditable\n    func greaterThanOrEqualTo(other: EdgeInsets) -> ConstraintDescriptionEditable\n\n}\n\n/**\n    Used to expose chaining APIs\n*/\npublic protocol ConstraintDescriptionExtendable: ConstraintDescriptionRelatable {\n    \n    var left: ConstraintDescriptionExtendable { get }\n    var top: ConstraintDescriptionExtendable { get }\n    var bottom: ConstraintDescriptionExtendable { get }\n    var right: ConstraintDescriptionExtendable { get }\n    var leading: ConstraintDescriptionExtendable { get }\n    var trailing: ConstraintDescriptionExtendable { get }\n    var width: ConstraintDescriptionExtendable { get }\n    var height: ConstraintDescriptionExtendable { get }\n    var centerX: ConstraintDescriptionExtendable { get }\n    var centerY: ConstraintDescriptionExtendable { get }\n    var baseline: ConstraintDescriptionExtendable { get }\n    \n    @available(iOS 8.0, *)\n    var firstBaseline: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var leftMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var rightMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var topMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var bottomMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var leadingMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var trailingMargin: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var centerXWithinMargins: ConstraintDescriptionExtendable { get }\n    @available(iOS 8.0, *)\n    var centerYWithinMargins: ConstraintDescriptionExtendable { get }\n}\n\n/**\n    Used to internally manage building constraint\n */\ninternal class ConstraintDescription: ConstraintDescriptionExtendable, ConstraintDescriptionEditable, ConstraintDescriptionFinalizable {\n    \n    internal var left: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Left) }\n    internal var top: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Top) }\n    internal var right: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Right) }\n    internal var bottom: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Bottom) }\n    internal var leading: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Leading) }\n    internal var trailing: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Trailing) }\n    internal var width: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Width) }\n    internal var height: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Height) }\n    internal var centerX: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.CenterX) }\n    internal var centerY: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.CenterY) }\n    internal var baseline: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.Baseline) }\n    internal var label: String?\n    \n    @available(iOS 8.0, *)\n    internal var firstBaseline: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.FirstBaseline) }\n    @available(iOS 8.0, *)\n    internal var leftMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.LeftMargin) }\n    @available(iOS 8.0, *)\n    internal var rightMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.RightMargin) }\n    @available(iOS 8.0, *)\n    internal var topMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.TopMargin) }\n    @available(iOS 8.0, *)\n    internal var bottomMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.BottomMargin) }\n    @available(iOS 8.0, *)\n    internal var leadingMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.LeadingMargin) }\n    @available(iOS 8.0, *)\n    internal var trailingMargin: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.TrailingMargin) }\n    @available(iOS 8.0, *)\n    internal var centerXWithinMargins: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.CenterXWithinMargins) }\n    @available(iOS 8.0, *)\n    internal var centerYWithinMargins: ConstraintDescriptionExtendable { return self.addConstraint(ConstraintAttributes.CenterYWithinMargins) }\n    \n    // MARK: initializer\n    \n    init(fromItem: ConstraintItem) {\n        self.fromItem = fromItem\n        self.toItem = ConstraintItem(object: nil, attributes: ConstraintAttributes.None)\n    }\n    \n    // MARK: equalTo\n    \n    internal func equalTo(other: ConstraintItem) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalTo(other: View) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalToSuperview() -> ConstraintDescriptionEditable {\n        guard let superview = fromItem.view?.superview else {\n            fatalError(\"equalToSuperview() requires the view have a superview before being set.\")\n        }\n        \n        return self.equalTo(superview)\n    }\n    @available(iOS 7.0, *)\n    internal func equalTo(other: LayoutSupport) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    @available(iOS 9.0, OSX 10.11, *)\n    internal func equalTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalTo(other: Float) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalTo(other: Double) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .Equal)\n    }\n    internal func equalTo(other: CGFloat) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .Equal)\n    }\n    internal func equalTo(other: Int) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .Equal)\n    }\n    internal func equalTo(other: UInt) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .Equal)\n    }\n    internal func equalTo(other: CGSize) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalTo(other: CGPoint) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    internal func equalTo(other: EdgeInsets) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .Equal)\n    }\n    \n    // MARK: lessThanOrEqualTo\n    \n    internal func lessThanOrEqualTo(other: ConstraintItem) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: View) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualToSuperview() -> ConstraintDescriptionEditable {\n        guard let superview = fromItem.view?.superview else {\n            fatalError(\"lessThanOrEqualToSuperview() requires the view have a superview before being set.\")\n        }\n        \n        return self.lessThanOrEqualTo(superview)\n    }\n    @available(iOS 7.0, *)\n    internal func lessThanOrEqualTo(other: LayoutSupport) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    @available(iOS 9.0, OSX 10.11, *)\n    internal func lessThanOrEqualTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: Float) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: Double) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: CGFloat) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: Int) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: UInt) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: CGSize) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: CGPoint) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func lessThanOrEqualTo(other: EdgeInsets) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    \n    // MARK: greaterThanOrEqualTo\n    \n    internal func greaterThanOrEqualTo(other: ConstraintItem) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: View) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualToSuperview() ->  ConstraintDescriptionEditable {\n        guard let superview = fromItem.view?.superview else {\n            fatalError(\"greaterThanOrEqualToSuperview() requires the view have a superview before being set.\")\n        }\n        \n        return self.greaterThanOrEqualTo(superview)\n    }\n    @available(iOS 7.0, *)\n    internal func greaterThanOrEqualTo(other: LayoutSupport) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    @available(iOS 9.0, OSX 10.11, *)\n    internal func greaterThanOrEqualTo(other: NSLayoutAnchor) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .LessThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: Float) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: Double) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: CGFloat) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: Int) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: UInt) -> ConstraintDescriptionEditable {\n        return self.constrainTo(Float(other), relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: CGSize) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: CGPoint) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    internal func greaterThanOrEqualTo(other: EdgeInsets) -> ConstraintDescriptionEditable {\n        return self.constrainTo(other, relation: .GreaterThanOrEqualTo)\n    }\n    \n    // MARK: multiplier\n    \n    internal func multipliedBy(amount: Float) -> ConstraintDescriptionEditable {\n        self.multiplier = amount\n        return self\n    }\n    internal func multipliedBy(amount: Double) -> ConstraintDescriptionEditable {\n        return self.multipliedBy(Float(amount))\n    }\n    internal func multipliedBy(amount: CGFloat) -> ConstraintDescriptionEditable {\n        return self.multipliedBy(Float(amount))\n    }\n    internal func multipliedBy(amount: Int) -> ConstraintDescriptionEditable {\n        return self.multipliedBy(Float(amount))\n    }\n    internal func multipliedBy(amount: UInt) -> ConstraintDescriptionEditable {\n        return self.multipliedBy(Float(amount))\n    }\n    \n    internal func dividedBy(amount: Float) -> ConstraintDescriptionEditable {\n        self.multiplier = 1.0 / amount;\n        return self\n    }\n    internal func dividedBy(amount: Double) -> ConstraintDescriptionEditable {\n        return self.dividedBy(Float(amount))\n    }\n    internal func dividedBy(amount: CGFloat) -> ConstraintDescriptionEditable {\n        return self.dividedBy(Float(amount))\n    }\n    internal func dividedBy(amount: Int) -> ConstraintDescriptionEditable {\n        return self.dividedBy(Float(amount))\n    }\n    internal func dividedBy(amount: UInt) -> ConstraintDescriptionEditable {\n        return self.dividedBy(Float(amount))\n    }\n    \n    // MARK: offset\n    \n    internal func offset(amount: Float) -> ConstraintDescriptionEditable {\n        self.constant = amount\n        return self\n    }\n    internal func offset(amount: Double) -> ConstraintDescriptionEditable {\n        return self.offset(Float(amount))\n    }\n    internal func offset(amount: CGFloat) -> ConstraintDescriptionEditable {\n        return self.offset(Float(amount))\n    }\n    internal func offset(amount: Int) -> ConstraintDescriptionEditable {\n        return self.offset(Float(amount))\n    }\n    internal func offset(amount: UInt) -> ConstraintDescriptionEditable {\n        return self.offset(Float(amount))\n    }\n    internal func offset(amount: CGPoint) -> ConstraintDescriptionEditable {\n        self.constant = amount\n        return self\n    }\n    internal func offset(amount: CGSize) -> ConstraintDescriptionEditable {\n        self.constant = amount\n        return self\n    }\n    internal func offset(amount: EdgeInsets) -> ConstraintDescriptionEditable {\n        self.constant = amount\n        return self\n    }\n    \n    // MARK: inset\n    \n    internal func inset(amount: Float) -> ConstraintDescriptionEditable {\n        let value = CGFloat(amount)\n        self.constant = EdgeInsets(top: value, left: value, bottom: -value, right: -value)\n        return self\n    }\n    internal func inset(amount: Double) -> ConstraintDescriptionEditable {\n        let value = CGFloat(amount)\n        self.constant = EdgeInsets(top: value, left: value, bottom: -value, right: -value)\n        return self\n    }\n    internal func inset(amount: CGFloat) -> ConstraintDescriptionEditable {\n        self.constant = EdgeInsets(top: amount, left: amount, bottom: -amount, right: -amount)\n        return self\n    }\n    internal func inset(amount: Int) -> ConstraintDescriptionEditable {\n        let value = CGFloat(amount)\n        self.constant = EdgeInsets(top: value, left: value, bottom: -value, right: -value)\n        return self\n    }\n    internal func inset(amount: UInt) -> ConstraintDescriptionEditable {\n        let value = CGFloat(amount)\n        self.constant = EdgeInsets(top: value, left: value, bottom: -value, right: -value)\n        return self\n    }\n    internal func inset(amount: EdgeInsets) -> ConstraintDescriptionEditable {\n        self.constant = EdgeInsets(top: amount.top, left: amount.left, bottom: -amount.bottom, right: -amount.right)\n        return self\n    }\n    \n    // MARK: priority\n    \n    internal func priority(priority: Float) -> ConstraintDescriptionFinalizable {\n        self.priority = priority\n        return self\n    }\n    internal func priority(priority: Double) -> ConstraintDescriptionFinalizable {\n        return self.priority(Float(priority))\n    }\n    internal func priority(priority: CGFloat) -> ConstraintDescriptionFinalizable {\n        return self.priority(Float(priority))\n    }\n    func priority(priority: UInt) -> ConstraintDescriptionFinalizable {\n        return self.priority(Float(priority))\n    }\n    internal func priority(priority: Int) -> ConstraintDescriptionFinalizable {\n        return self.priority(Float(priority))\n    }\n    internal func priorityRequired() -> ConstraintDescriptionFinalizable {\n        return self.priority(1000.0)\n    }\n    internal func priorityHigh() -> ConstraintDescriptionFinalizable {\n        return self.priority(750.0)\n    }\n    internal func priorityMedium() -> ConstraintDescriptionFinalizable {\n        #if os(iOS) || os(tvOS)\n        return self.priority(500.0)\n        #else\n        return self.priority(501.0)\n        #endif\n    }\n    internal func priorityLow() -> ConstraintDescriptionFinalizable {\n        return self.priority(250.0)\n    }\n    \n    // MARK: Constraint\n    \n    internal var constraint: Constraint {\n        if self.concreteConstraint == nil {\n            if self.relation == nil {\n                fatalError(\"Attempting to create a constraint from a ConstraintDescription before it has been fully chained.\")\n            }\n            self.concreteConstraint = ConcreteConstraint(\n                fromItem: self.fromItem,\n                toItem: self.toItem,\n                relation: self.relation!,\n                constant: self.constant,\n                multiplier: self.multiplier,\n                priority: self.priority,\n                label: self.label)\n        }\n        return self.concreteConstraint!\n    }\n    \n    func labeled(label: String) -> ConstraintDescriptionFinalizable {\n        self.label = label\n        return self\n    }\n    \n    // MARK: Private\n    \n    private let fromItem: ConstraintItem\n    private var toItem: ConstraintItem {\n        willSet {\n            if self.concreteConstraint != nil {\n                fatalError(\"Attempting to modify a ConstraintDescription after its constraint has been created.\")\n            }\n        }\n    }\n    private var relation: ConstraintRelation? {\n        willSet {\n            if self.concreteConstraint != nil {\n                fatalError(\"Attempting to modify a ConstraintDescription after its constraint has been created.\")\n            }\n        }\n    }\n    private var constant: Any = Float(0.0) {\n        willSet {\n            if self.concreteConstraint != nil {\n                fatalError(\"Attempting to modify a ConstraintDescription after its constraint has been created.\")\n            }\n        }\n    }\n    private var multiplier: Float = 1.0 {\n        willSet {\n            if self.concreteConstraint != nil {\n                fatalError(\"Attempting to modify a ConstraintDescription after its constraint has been created.\")\n            }\n        }\n    }\n    private var priority: Float = 1000.0 {\n        willSet {\n            if self.concreteConstraint != nil {\n                fatalError(\"Attempting to modify a ConstraintDescription after its constraint has been created.\")\n            }\n        }\n    }\n    private var concreteConstraint: ConcreteConstraint? = nil\n    \n    private func addConstraint(attributes: ConstraintAttributes) -> ConstraintDescription {\n        if self.relation == nil {\n            self.fromItem.attributes += attributes\n        }\n        return self\n    }\n    \n    private func constrainTo(other: ConstraintItem, relation: ConstraintRelation) -> ConstraintDescription {\n        if other.attributes != ConstraintAttributes.None {\n            let toLayoutAttributes = other.attributes.layoutAttributes\n            if toLayoutAttributes.count > 1 {\n                let fromLayoutAttributes = self.fromItem.attributes.layoutAttributes\n                if toLayoutAttributes != fromLayoutAttributes {\n                    NSException(name: \"Invalid Constraint\", reason: \"Cannot constrain to multiple non identical attributes\", userInfo: nil).raise()\n                    return self\n                }\n                other.attributes = ConstraintAttributes.None\n            }\n        }\n        self.toItem = other\n        self.relation = relation\n        return self\n    }\n    \n    private func constrainTo(other: View, relation: ConstraintRelation) -> ConstraintDescription {\n        return constrainTo(ConstraintItem(object: other, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    @available(iOS 7.0, *)\n    private func constrainTo(other: LayoutSupport, relation: ConstraintRelation) -> ConstraintDescription {\n        return constrainTo(ConstraintItem(object: other, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    @available(iOS 9.0, OSX 10.11, *)\n    private func constrainTo(other: NSLayoutAnchor, relation: ConstraintRelation) -> ConstraintDescription {\n        return constrainTo(ConstraintItem(object: other, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    private func constrainTo(other: Float, relation: ConstraintRelation) -> ConstraintDescription {\n        self.constant = other\n        return constrainTo(ConstraintItem(object: nil, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    private func constrainTo(other: Double, relation: ConstraintRelation) -> ConstraintDescription {\n        self.constant = other\n        return constrainTo(ConstraintItem(object: nil, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    private func constrainTo(other: CGSize, relation: ConstraintRelation) -> ConstraintDescription {\n        self.constant = other\n        return constrainTo(ConstraintItem(object: nil, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    private func constrainTo(other: CGPoint, relation: ConstraintRelation) -> ConstraintDescription {\n        self.constant = other\n        return constrainTo(ConstraintItem(object: nil, attributes: ConstraintAttributes.None), relation: relation)\n    }\n    \n    private func constrainTo(other: EdgeInsets, relation: ConstraintRelation) -> ConstraintDescription {\n        self.constant = other\n        return constrainTo(ConstraintItem(object: nil, attributes: ConstraintAttributes.None), relation: relation)\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ConstraintItem.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to assist in building a constraint\n*/\npublic class ConstraintItem {\n    \n    internal init(object: AnyObject?, attributes: ConstraintAttributes) {\n        self.object = object\n        self.attributes = attributes\n    }\n    \n    internal weak var object: AnyObject?\n    internal var attributes: ConstraintAttributes\n    \n    internal var view: View? {\n        return self.object as? View\n    }\n    \n    @available(iOS 7.0, *)\n    internal var layoutSupport: LayoutSupport? {\n        return self.object as? LayoutSupport\n    }\n}\n\n\ninternal func ==(left: ConstraintItem, right: ConstraintItem) -> Bool {\n    if left.object == nil {\n        return false\n    }\n    if right.object == nil {\n        return false\n    }\n    if left.object !== right.object {\n        return false\n    }\n    if left.attributes != right.attributes {\n        return false\n    }\n    return true\n}"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ConstraintMaker.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to make constraints\n*/\npublic class ConstraintMaker {\n    \n    /// left edge\n    public var left: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Left) }\n    \n    /// top edge\n    public var top: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Top) }\n    \n    /// right edge\n    public var right: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Right) }\n    \n    /// bottom edge\n    public var bottom: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Bottom) }\n    \n    /// leading edge\n    public var leading: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Leading) }\n    \n    /// trailing edge\n    public var trailing: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Trailing) }\n    \n    /// width dimension\n    public var width: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Width) }\n    \n    /// height dimension\n    public var height: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Height) }\n    \n    /// centerX dimension\n    public var centerX: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.CenterX) }\n    \n    /// centerY dimension\n    public var centerY: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.CenterY) }\n    \n    /// baseline position\n    public var baseline: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Baseline) }\n    \n    /// firse baseline position\n    @available(iOS 8.0, *)\n    public var firstBaseline: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.FirstBaseline) }\n    \n    /// left margin\n    @available(iOS 8.0, *)\n    public var leftMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.LeftMargin) }\n    \n    /// right margin\n    @available(iOS 8.0, *)\n    public var rightMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.RightMargin) }\n    \n    /// top margin\n    @available(iOS 8.0, *)\n    public var topMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.TopMargin) }\n    \n    /// bottom margin\n    @available(iOS 8.0, *)\n    public var bottomMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.BottomMargin) }\n    \n    /// leading margin\n    @available(iOS 8.0, *)\n    public var leadingMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.LeadingMargin) }\n    \n    /// trailing margin\n    @available(iOS 8.0, *)\n    public var trailingMargin: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.TrailingMargin) }\n    \n    /// centerX within margins\n    @available(iOS 8.0, *)\n    public var centerXWithinMargins: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.CenterXWithinMargins) }\n    \n    /// centerY within margins\n    @available(iOS 8.0, *)\n    public var centerYWithinMargins: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.CenterYWithinMargins) }\n    \n    /// top + left + bottom + right edges\n    public var edges: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Edges) }\n    \n    /// width + height dimensions\n    public var size: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Size) }\n    \n    // centerX + centerY positions\n    public var center: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Center) }\n    \n    // top + left + bottom + right margins\n    @available(iOS 8.0, *)\n    public var margins: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.Margins) }\n    \n    // centerX + centerY within margins\n    @available(iOS 8.0, *)\n    public var centerWithinMargins: ConstraintDescriptionExtendable { return self.makeConstraintDescription(ConstraintAttributes.CenterWithinMargins) }\n    \n    internal init(view: View, file: String, line: UInt) {\n        self.view = view\n        self.file = file\n        self.line = line\n    }\n    \n    internal let file: String\n    internal let line: UInt\n    internal let view: View\n    internal var constraintDescriptions = [ConstraintDescription]()\n    \n    internal func makeConstraintDescription(attributes: ConstraintAttributes) -> ConstraintDescription {\n        let item = ConstraintItem(object: self.view, attributes: attributes)\n        let constraintDescription = ConstraintDescription(fromItem: item)\n        self.constraintDescriptions.append(constraintDescription)\n        return constraintDescription\n    }\n    \n    internal class func prepareConstraints(view view: View, file: String = \"Unknown\", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) -> [Constraint] {\n        let maker = ConstraintMaker(view: view, file: file, line: line)\n        closure(make: maker)\n        \n        let constraints = maker.constraintDescriptions.map { $0.constraint }\n        for constraint in constraints {\n            constraint.makerFile = maker.file\n            constraint.makerLine = maker.line\n        }\n        return constraints\n    }\n    \n    internal class func makeConstraints(view view: View, file: String = \"Unknown\", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {\n        view.translatesAutoresizingMaskIntoConstraints = false\n        let maker = ConstraintMaker(view: view, file: file, line: line)\n        closure(make: maker)\n        \n        let constraints = maker.constraintDescriptions.map { $0.constraint as! ConcreteConstraint }\n        for constraint in constraints {\n            constraint.makerFile = maker.file\n            constraint.makerLine = maker.line\n            constraint.installOnView(updateExisting: false)\n        }\n    }\n    \n    internal class func remakeConstraints(view view: View, file: String = \"Unknown\", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {\n        view.translatesAutoresizingMaskIntoConstraints = false\n        let maker = ConstraintMaker(view: view, file: file, line: line)\n        closure(make: maker)\n        \n        self.removeConstraints(view: view)\n        let constraints = maker.constraintDescriptions.map { $0.constraint as! ConcreteConstraint }\n        for constraint in constraints {\n            constraint.makerFile = maker.file\n            constraint.makerLine = maker.line\n            constraint.installOnView(updateExisting: false)\n        }\n    }\n    \n    internal class func updateConstraints(view view: View, file: String = \"Unknown\", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {\n        view.translatesAutoresizingMaskIntoConstraints = false\n        let maker = ConstraintMaker(view: view, file: file, line: line)\n        closure(make: maker)\n        \n        let constraints = maker.constraintDescriptions.map { $0.constraint as! ConcreteConstraint}\n        for constraint in constraints {\n            constraint.makerFile = maker.file\n            constraint.makerLine = maker.line\n            constraint.installOnView(updateExisting: true)\n        }\n    }\n    \n    internal class func removeConstraints(view view: View) {\n        for existingLayoutConstraint in view.snp_installedLayoutConstraints {\n            existingLayoutConstraint.snp_constraint?.uninstall()\n        }\n    }\n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ConstraintRelation.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to define `NSLayoutRelation`\n*/\ninternal enum ConstraintRelation: Int {\n    case Equal = 1, LessThanOrEqualTo, GreaterThanOrEqualTo\n    \n    internal var layoutRelation: NSLayoutRelation {\n        get {\n            switch(self) {\n            case .LessThanOrEqualTo:\n                return .LessThanOrEqual\n            case .GreaterThanOrEqualTo:\n                return .GreaterThanOrEqual\n            default:\n                return .Equal\n            }\n        }\n    }\n}"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/Debugging.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to allow adding a snp_label to a View for debugging purposes\n*/\npublic extension View {\n    \n    public var snp_label: String? {\n        get {\n            return objc_getAssociatedObject(self, &labelKey) as? String\n        }\n        set {\n            objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY_NONATOMIC)\n        }\n    }\n    \n}\n\n/**\n    Used to allow adding a snp_label to a LayoutConstraint for debugging purposes\n*/\npublic extension LayoutConstraint {\n    \n    public var snp_label: String? {\n        get {\n            return objc_getAssociatedObject(self, &labelKey) as? String\n        }\n        set {\n            objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY_NONATOMIC)\n        }\n    }\n\n    override public var description: String {\n        var description = \"<\"\n        \n        description += descriptionForObject(self)\n        \n        if let firstItem: AnyObject = self.firstItem {\n            description += \" \\(descriptionForObject(firstItem))\"\n        }\n        \n        if self.firstAttribute != .NotAnAttribute {\n            description += \".\\(self.firstAttribute.snp_description)\"\n        }\n        \n        description += \" \\(self.relation.snp_description)\"\n        \n        if let secondItem: AnyObject = self.secondItem {\n            description += \" \\(descriptionForObject(secondItem))\"\n        }\n        \n        if self.secondAttribute != .NotAnAttribute {\n            description += \".\\(self.secondAttribute.snp_description)\"\n        }\n        \n        if self.multiplier != 1.0 {\n            description += \" * \\(self.multiplier)\"\n        }\n        \n        if self.secondAttribute == .NotAnAttribute {\n            description += \" \\(self.constant)\"\n        } else {\n            if self.constant > 0.0 {\n                description += \" + \\(self.constant)\"\n            } else if self.constant < 0.0 {\n                description += \" - \\(CGFloat.abs(self.constant))\"\n            }\n        }\n        \n        if self.priority != 1000.0 {\n            description += \" ^\\(self.priority)\"\n        }\n        \n        description += \">\"\n        \n        return description\n    }\n    \n    internal var snp_makerFile: String? {\n        return self.snp_constraint?.makerFile\n    }\n    \n    internal var snp_makerLine: UInt? {\n        return self.snp_constraint?.makerLine\n    }\n    \n}\n\nprivate var labelKey = \"\"\n\nprivate func descriptionForObject(object: AnyObject) -> String {\n    let pointerDescription = NSString(format: \"%p\", ObjectIdentifier(object).uintValue)\n    var desc = \"\"\n    \n    desc += object.dynamicType.description()\n    \n    if let object = object as? View {\n        desc += \":\\(object.snp_label ?? pointerDescription)\"\n    } else if let object = object as? LayoutConstraint {\n        desc += \":\\(object.snp_label ?? pointerDescription)\"\n    } else {\n        desc += \":\\(pointerDescription)\"\n    }\n    \n    if let object = object as? LayoutConstraint, let file = object.snp_makerFile, let line = object.snp_makerLine {\n        desc += \"@\\(file)#\\(line)\"\n    }\n    \n    desc += \"\"\n    return desc\n}\n\nprivate extension NSLayoutRelation {\n    \n    private var snp_description: String {\n        switch self {\n        case .Equal:                return \"==\"\n        case .GreaterThanOrEqual:   return \">=\"\n        case .LessThanOrEqual:      return \"<=\"\n        }\n    }\n    \n}\n\nprivate extension NSLayoutAttribute {\n    \n    private var snp_description: String {\n        #if os(iOS) || os(tvOS)\n        switch self {\n        case .NotAnAttribute:       return \"notAnAttribute\"\n        case .Top:                  return \"top\"\n        case .Left:                 return \"left\"\n        case .Bottom:               return \"bottom\"\n        case .Right:                return \"right\"\n        case .Leading:              return \"leading\"\n        case .Trailing:             return \"trailing\"\n        case .Width:                return \"width\"\n        case .Height:               return \"height\"\n        case .CenterX:              return \"centerX\"\n        case .CenterY:              return \"centerY\"\n        case .LastBaseline:             return \"baseline\"\n        case .FirstBaseline:        return \"firstBaseline\"\n        case .TopMargin:            return \"topMargin\"\n        case .LeftMargin:           return \"leftMargin\"\n        case .BottomMargin:         return \"bottomMargin\"\n        case .RightMargin:          return \"rightMargin\"\n        case .LeadingMargin:        return \"leadingMargin\"\n        case .TrailingMargin:       return \"trailingMargin\"\n        case .CenterXWithinMargins: return \"centerXWithinMargins\"\n        case .CenterYWithinMargins: return \"centerYWithinMargins\"\n        }\n        #else\n        switch self {\n        case .NotAnAttribute:       return \"notAnAttribute\"\n        case .Top:                  return \"top\"\n        case .Left:                 return \"left\"\n        case .Bottom:               return \"bottom\"\n        case .Right:                return \"right\"\n        case .Leading:              return \"leading\"\n        case .Trailing:             return \"trailing\"\n        case .Width:                return \"width\"\n        case .Height:               return \"height\"\n        case .CenterX:              return \"centerX\"\n        case .CenterY:              return \"centerY\"\n        case .LastBaseline:             return \"baseline\"\n        default:                    return \"default\"\n        }\n        #endif\n        \n    }\n    \n}\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/EdgeInsets.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\npublic typealias EdgeInsets = UIEdgeInsets\npublic func EdgeInsetsMake(top: CGFloat, left: CGFloat, bottom: CGFloat, right: CGFloat) -> EdgeInsets {\n    return EdgeInsets(top: top, left: left, bottom: bottom, right: right)\n}\npublic let EdgeInsetsZero = EdgeInsets(top: 0, left: 0, bottom: 0, right: 0)\n#else\nimport AppKit\npublic typealias EdgeInsets = NSEdgeInsets\npublic func EdgeInsetsMake(top: CGFloat, left: CGFloat, bottom: CGFloat, right: CGFloat) -> EdgeInsets {\n    return EdgeInsets(top: top, left: left, bottom: bottom, right: right)\n}\npublic let EdgeInsetsZero = EdgeInsets(top: 0, left: 0, bottom: 0, right: 0)\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/LayoutConstraint.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n#else\nimport AppKit\n#endif\n\n/**\n    Used to add extra information to the actual `NSLayoutConstraint`'s that will UIKit/AppKit will utilize\n*/\npublic class LayoutConstraint: NSLayoutConstraint {\n    \n    internal var snp_constraint: Constraint? = nil\n    \n}\n\ninternal func ==(left: LayoutConstraint, right: LayoutConstraint) -> Bool {\n    if left.firstItem !== right.firstItem {\n        return false\n    }\n    if left.secondItem !== right.secondItem {\n        return false\n    }\n    if left.firstAttribute != right.firstAttribute {\n        return false\n    }\n    if left.secondAttribute != right.secondAttribute {\n        return false\n    }\n    if left.relation != right.relation {\n        return false\n    }\n    if left.priority != right.priority {\n        return false\n    }\n    if left.multiplier != right.multiplier {\n        return false\n    }\n    return true\n}\n\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/SnapKit.h",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#import <Foundation/Foundation.h>\n\nFOUNDATION_EXPORT double SnapKitVersionNumber;\nFOUNDATION_EXPORT const unsigned char SnapKitVersionString[];"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/SnapKit.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\npublic typealias InterfaceLayoutDirection = UIUserInterfaceLayoutDirection\npublic typealias LayoutSupport = UILayoutSupport\n#else\nimport AppKit\npublic typealias InterfaceLayoutDirection = NSUserInterfaceLayoutDirection\npublic class LayoutSupport {}\n#endif\n\n/**\n    Used to configure different parts of SnapKit\n*/\npublic struct Config {\n    \n    /// The interface layout direction\n    public static var interfaceLayoutDirection = InterfaceLayoutDirection.LeftToRight\n    \n}"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/View+SnapKit.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\npublic typealias View = UIView\n#else\nimport AppKit\npublic typealias View = NSView\n#endif\n\n/**\n    Used to expose public API on views\n*/\npublic extension View {\n    \n    /// left edge\n    public var snp_left: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Left) }\n    \n    /// top edge\n    public var snp_top: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Top) }\n    \n    /// right edge\n    public var snp_right: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Right) }\n    \n    /// bottom edge\n    public var snp_bottom: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Bottom) }\n    \n    /// leading edge\n    public var snp_leading: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Leading) }\n    \n    /// trailing edge\n    public var snp_trailing: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Trailing) }\n    \n    /// width dimension\n    public var snp_width: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Width) }\n    \n    /// height dimension\n    public var snp_height: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Height) }\n    \n    /// centerX position\n    public var snp_centerX: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.CenterX) }\n    \n    /// centerY position\n    public var snp_centerY: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.CenterY) }\n    \n    /// baseline position\n    public var snp_baseline: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Baseline) }\n    \n    /// first baseline position\n    @available(iOS 8.0, *)\n    public var snp_firstBaseline: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.FirstBaseline) }\n    \n    /// left margin\n    @available(iOS 8.0, *)\n    public var snp_leftMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.LeftMargin) }\n    \n    /// right margin\n    @available(iOS 8.0, *)\n    public var snp_rightMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.RightMargin) }\n    \n    /// top margin\n    @available(iOS 8.0, *)\n    public var snp_topMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.TopMargin) }\n    \n    /// bottom margin\n    @available(iOS 8.0, *)\n    public var snp_bottomMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.BottomMargin) }\n    \n    /// leading margin\n    @available(iOS 8.0, *)\n    public var snp_leadingMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.LeadingMargin) }\n    \n    /// trailing margin\n    @available(iOS 8.0, *)\n    public var snp_trailingMargin: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.TrailingMargin) }\n    \n    /// centerX within margins\n    @available(iOS 8.0, *)\n    public var snp_centerXWithinMargins: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.CenterXWithinMargins) }\n    \n    /// centerY within margins\n    @available(iOS 8.0, *)\n    public var snp_centerYWithinMargins: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.CenterYWithinMargins) }\n    \n    // top + left + bottom + right edges\n    public var snp_edges: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Edges) }\n    \n    // width + height dimensions\n    public var snp_size: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Size) }\n    \n    // centerX + centerY positions\n    public var snp_center: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Center) }\n    \n    // top + left + bottom + right margins\n    @available(iOS 8.0, *)\n    public var snp_margins: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.Margins) }\n    \n    // centerX + centerY within margins\n    @available(iOS 8.0, *)\n    public var snp_centerWithinMargins: ConstraintItem { return ConstraintItem(object: self, attributes: ConstraintAttributes.CenterWithinMargins) }\n    \n    /**\n        Prepares constraints with a `ConstraintMaker` and returns the made constraints but does not install them.\n\n        - parameter closure that will be passed the `ConstraintMaker` to make the constraints with\n        \n        - returns: the constraints made\n    */\n    public func snp_prepareConstraints(file: String = #file, line: UInt = #line, @noescape closure: (make: ConstraintMaker) -> Void) -> [Constraint] {\n        return ConstraintMaker.prepareConstraints(view: self, file: file, line: line, closure: closure)\n    }\n    \n    /**\n        Makes constraints with a `ConstraintMaker` and installs them along side any previous made constraints.\n        \n        - parameter closure that will be passed the `ConstraintMaker` to make the constraints with\n    */\n    public func snp_makeConstraints(file: String = #file, line: UInt = #line, @noescape closure: (make: ConstraintMaker) -> Void) -> Void {\n        ConstraintMaker.makeConstraints(view: self, file: file, line: line, closure: closure)\n    }\n    \n    /**\n        Updates constraints with a `ConstraintMaker` that will replace existing constraints that match and install new ones.\n    \n        For constraints to match only the constant can be updated.\n    \n        - parameter closure that will be passed the `ConstraintMaker` to update the constraints with\n    */\n    public func snp_updateConstraints(file: String = #file, line: UInt = #line, @noescape closure: (make: ConstraintMaker) -> Void) -> Void {\n        ConstraintMaker.updateConstraints(view: self, file: file, line: line, closure: closure)\n    }\n    \n    /**\n        Remakes constraints with a `ConstraintMaker` that will first remove all previously made constraints and make and install new ones.\n    \n        - parameter closure that will be passed the `ConstraintMaker` to remake the constraints with\n    */\n    public func snp_remakeConstraints(file: String = #file, line: UInt = #line, @noescape closure: (make: ConstraintMaker) -> Void) -> Void {\n        ConstraintMaker.remakeConstraints(view: self, file: file, line: line, closure: closure)\n    }\n    \n    /**\n        Removes all previously made constraints.\n    */\n    public func snp_removeConstraints() {\n        ConstraintMaker.removeConstraints(view: self)\n    }\n    \n    internal var snp_installedLayoutConstraints: [LayoutConstraint] {\n        get {\n            if let constraints = objc_getAssociatedObject(self, &installedLayoutConstraintsKey) as? [LayoutConstraint] {\n                return constraints\n            }\n            return []\n        }\n        set {\n            objc_setAssociatedObject(self, &installedLayoutConstraintsKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)\n        }\n    }\n}\n\nprivate var installedLayoutConstraintsKey = \"\"\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Source/ViewController+SnapKit.swift",
    "content": "//\n//  SnapKit\n//\n//  Copyright (c) 2011-2015 SnapKit Team - https://github.com/SnapKit\n//\n//  Permission is hereby granted, free of charge, to any person obtaining a copy\n//  of this software and associated documentation files (the \"Software\"), to deal\n//  in the Software without restriction, including without limitation the rights\n//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n//  copies of the Software, and to permit persons to whom the Software is\n//  furnished to do so, subject to the following conditions:\n//\n//  The above copyright notice and this permission notice shall be included in\n//  all copies or substantial portions of the Software.\n//\n//  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n//  THE SOFTWARE.\n\n#if os(iOS) || os(tvOS)\nimport UIKit\n\n/**\n    Used to expose public API on view controllers\n*/\npublic extension UIViewController {\n    \n    /// top layout guide top\n    public var snp_topLayoutGuideTop: ConstraintItem { return ConstraintItem(object: self.topLayoutGuide, attributes: ConstraintAttributes.Top) }\n    \n    /// top layout guide bottom\n    public var snp_topLayoutGuideBottom: ConstraintItem { return ConstraintItem(object: self.topLayoutGuide, attributes: ConstraintAttributes.Bottom) }\n    \n    /// bottom layout guide top\n    public var snp_bottomLayoutGuideTop: ConstraintItem { return ConstraintItem(object: self.bottomLayoutGuide, attributes: ConstraintAttributes.Top) }\n    \n    /// bottom layout guide bottom\n    public var snp_bottomLayoutGuideBottom: ConstraintItem { return ConstraintItem(object: self.bottomLayoutGuide, attributes: ConstraintAttributes.Bottom) }\n    \n}\n#endif\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Tests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "Carthage/Checkouts/SnapKit/Tests/Tests.swift",
    "content": "#if os(iOS) || os(tvOS)\nimport UIKit\ntypealias View = UIView\nextension View {\n    var snp_constraints: [AnyObject] { return self.constraints }\n}\n#else\nimport AppKit\ntypealias View = NSView\nextension View {\n    var snp_constraints: [AnyObject] { return self.constraints }\n}\n#endif\n\nimport XCTest\nimport SnapKit\n\nclass SnapKitTests: XCTestCase {\n    \n    let container = View()\n    \n    override func setUp() {\n        super.setUp()\n        // Put setup code here. This method is called before the invocation of each test method in the class.\n    }\n    \n    override func tearDown() {\n        // Put teardown code here. This method is called after the invocation of each test method in the class.\n        super.tearDown()\n    }\n    \n    func testLayoutGuideConstraints() {\n        #if os(iOS) || os(tvOS)\n        let vc = UIViewController()\n        vc.view = UIView(frame: CGRectMake(0, 0, 300, 300))\n        \n        vc.view.addSubview(self.container)\n        \n        self.container.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(vc.snp_topLayoutGuideBottom)\n            make.bottom.equalTo(vc.snp_bottomLayoutGuideTop)\n        }\n        \n        XCTAssertEqual(vc.view.snp_constraints.count, 6, \"Should have 6 constraints installed\")\n        #endif\n    }\n    \n    func testMakeConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        v1.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(v2.snp_top).offset(50)\n            make.left.equalTo(v2.snp_top).offset(50)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints installed\")\n        \n        v2.snp_makeConstraints { (make) -> Void in\n            make.edges.equalTo(v1)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 6, \"Should have 6 constraints installed\")\n        \n    }\n    \n    func testUpdateConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        v1.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(v2.snp_top).offset(50)\n            make.left.equalTo(v2.snp_top).offset(50)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints installed\")\n        \n        v1.snp_updateConstraints { (make) -> Void in\n            make.top.equalTo(v2.snp_top).offset(15)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should still have 2 constraints installed\")\n        \n    }\n    \n    func testRemakeConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        v1.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(v2.snp_top).offset(50)\n            make.left.equalTo(v2.snp_top).offset(50)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints installed\")\n        \n        v1.snp_remakeConstraints { (make) -> Void in\n            make.edges.equalTo(v2)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 4, \"Should have 4 constraints installed\")\n        \n    }\n    \n    func testRemoveConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        v1.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(v2.snp_top).offset(50)\n            make.left.equalTo(v2.snp_top).offset(50)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints installed\")\n        \n        v1.snp_removeConstraints()\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints installed\")\n        \n    }\n    \n    func testPrepareConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        let constraints = v1.snp_prepareConstraints { (make) -> Void in\n            make.edges.equalTo(v2)\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints installed\")\n        \n        for constraint in constraints {\n            constraint.install()\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 4, \"Should have 4 constraints installed\")\n        \n        for constraint in constraints {\n            constraint.uninstall()\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints installed\")\n        \n    }\n    \n    func testReinstallConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        let constraints = v1.snp_prepareConstraints { (make) -> Void in\n            make.edges.equalTo(v2)\n            return\n        }\n        \n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints installed\")\n        \n        for constraint in constraints {\n            constraint.install()\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 4, \"Should have 4 constraints installed\")\n        \n        for constraint in constraints {\n            constraint.install()\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 4, \"Should have 0 constraints installed\")\n    }\n    \n    func testActivateDeactivateConstraints() {\n        let v1 = View()\n        let v2 = View()\n        self.container.addSubview(v1)\n        self.container.addSubview(v2)\n        \n        var c1: Constraint? = nil\n        var c2: Constraint? = nil\n        \n        v1.snp_prepareConstraints { (make) -> Void in\n            c1 = make.top.equalTo(v2.snp_top).offset(50).constraint\n            c2 = make.left.equalTo(v2.snp_top).offset(50).constraint\n            return\n        }\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints\")\n        \n        c1?.activate()\n        c2?.activate()\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints\")\n        \n        c1?.deactivate()\n        c2?.deactivate()\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints\")\n        \n        c1?.uninstall()\n        c2?.uninstall()\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 0, \"Should have 0 constraints\")\n        \n        c1?.activate()\n        c2?.activate()\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints\")\n        \n    }\n    \n    func testSizeConstraints() {\n        let view = View()\n        self.container.addSubview(view)\n        \n        view.snp_makeConstraints { (make) -> Void in\n            make.size.equalTo(CGSizeMake(50, 50))\n            make.left.top.equalTo(self.container)\n        }\n        \n        XCTAssertEqual(view.snp_constraints.count, 2, \"Should have 2 constraints\")\n        \n        XCTAssertEqual(self.container.snp_constraints.count, 2, \"Should have 2 constraints\")\n        \n        \n        let constraints = view.snp_constraints as! [NSLayoutConstraint]\n        \n        XCTAssertEqual(constraints[0].firstAttribute, NSLayoutAttribute.Width, \"Should be width\")\n        XCTAssertEqual(constraints[1].firstAttribute, NSLayoutAttribute.Height, \"Should be height\")\n        XCTAssertEqual(constraints[0].constant, 50, \"Should be 50\")\n        XCTAssertEqual(constraints[1].constant, 50, \"Should be 50\")\n    }\n    \n    func testConstraintIdentifier() {\n        let identifier = \"Test-Identifier\"\n        let view = View()\n        self.container.addSubview(view)\n        \n        view.snp_makeConstraints { (make) -> Void in\n            make.top.equalTo(self.container.snp_top).labeled(identifier)\n        }\n        \n        let constraints = container.snp_constraints as! [NSLayoutConstraint]\n        XCTAssertEqual(constraints[0].identifier, identifier, \"Identifier should be 'Test'\")\n    }\n    \n    func testSuperviewConstraints() {\n        let view = View()\n        \n        container.addSubview(view)\n        \n        view.snp_makeConstraints { (make) -> Void in\n            make.top.equalToSuperview().inset(10)\n            make.bottom.equalToSuperview().inset(10)\n        }\n        \n        XCTAssertEqual(container.snp_constraints.count, 2, \"Should have 2 constraints\")\n        \n        let constraints = container.snp_constraints as! [NSLayoutConstraint]\n        \n        XCTAssertEqual(constraints[0].firstAttribute, NSLayoutAttribute.Top, \"Should be top\")\n        XCTAssertEqual(constraints[1].firstAttribute, NSLayoutAttribute.Bottom, \"Should be bottom\")\n        \n        XCTAssertEqual(constraints[0].secondAttribute, NSLayoutAttribute.Top, \"Should be top\")\n        XCTAssertEqual(constraints[1].secondAttribute, NSLayoutAttribute.Bottom, \"Should be bottom\")\n        \n        XCTAssertEqual(constraints[0].firstItem as? View, view, \"Should be added subview\")\n        XCTAssertEqual(constraints[1].firstItem as? View, view, \"Should be added subview\")\n        \n        XCTAssertEqual(constraints[0].secondItem as? View, container, \"Should be containerView\")\n        XCTAssertEqual(constraints[1].secondItem as? View, container, \"Should be containerView\")\n        \n        XCTAssertEqual(constraints[0].constant, 10, \"Should be 10\")\n        XCTAssertEqual(constraints[1].constant, -10, \"Should be 10\")\n    }\n}\n"
  },
  {
    "path": "LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2014 Martin Richter\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "SwiftGoal\n=========\n\n[![Sponsored](https://img.shields.io/badge/chilicorn-sponsored-brightgreen.svg)](http://spiceprogram.org/oss-sponsorship/)\n[![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)\n\nThis project showcases the Model-View-ViewModel (MVVM) architecture with [ReactiveCocoa 4][reactive-cocoa], while serving as a digital logbook of [FIFA matches][fifa-wikipedia]. It was inspired on a theoretical level by Justin Spahr-Summers' talk [Enemy of the State][enemy-of-the-state], and on a more practical one by Ash Furrow's [C-41][c-41] app.\n\n[reactive-cocoa]: https://github.com/ReactiveCocoa/ReactiveCocoa\n[fifa-wikipedia]: https://en.wikipedia.org/wiki/FIFA_(video_game_series)\n[enemy-of-the-state]: https://github.com/jspahrsummers/enemy-of-the-state\n[c-41]: https://github.com/ashfurrow/C-41\n\nAs the Swift language and the ecosystem around it [matured][reactive-cocoa-releases], porting the original [ObjectiveGoal][objective-goal] project became a natural next step, as Swift's type safety makes it a perfect fit for functional reactive programming.\n\n[reactive-cocoa-releases]: https://github.com/ReactiveCocoa/ReactiveCocoa/releases\n[objective-goal]: https://github.com/richeterre/ObjectiveGoal\n\nRequirements\n------------\n\nSwiftGoal runs on iOS 9+ and requires Xcode 8 with Swift 2.3 to build.\n\nSetup\n-----\n\nNo separate backend is required to use the app, as it stores all its data locally in the `Documents` directory by default. Note that things might break in future releases, e.g. if some model fields change! Also, you need to _terminate_ the app to trigger a write to local storage.\n\nFor serious use and if you want to share data across multiple devices, I recommend you use [Goalbase][goalbase] as a backend. It's easy to get started:\n\n1. Follow the setup instructions in the [Goalbase documentation][goalbase-docs].\n2. Enable the \"Use Remote Store\" switch under _Settings > SwiftGoal_.\n3. Make sure the base URL is set correctly. The default value should be fine if you run `rails server` in your Goalbase directory, but for a remote setup (e.g. on Heroku) you'll need to update this setting.\n\n[goalbase]: https://github.com/richeterre/goalbase\n[goalbase-docs]: https://github.com/richeterre/goalbase/blob/master/README.md\n\nUnit Tests\n----------\n\nSwiftGoal is thoroughly covered by unit tests, which are written with [Quick][quick] and [Nimble][nimble]. An advantage of such [BDD-style][bdd-wikipedia] frameworks is that they document the behavior of the tested code in plain English. To run the unit tests, simply hit `Cmd + U` in Xcode.\n\n[quick]: https://github.com/Quick/Quick\n[nimble]: https://github.com/Quick/Nimble\n[bdd-wikipedia]: https://en.wikipedia.org/wiki/Behavior-driven_development\n\nUser Features\n-------------\n\n* [x] Create players\n* [x] Create matches with home/away players and score\n* [x] View list of matches\n* [x] Edit existing match information\n* [x] Delete matches\n* [x] Pull-to-refresh any list in the app\n* [x] See animated list changes\n* [x] Enjoy custom fonts and colors\n* [x] Get alerts about network and server errors\n* [x] View player rankings\n* [ ] Switch between different ranking periods (last month, all time, …)\n* [ ] See date and time of each match\n* [ ] See matches grouped by date range (e.g. last week, last month, earlier)\n* [ ] View more player statistics (e.g. won/drawn/lost count, nemesis player, …)\n\nCode Checklist\n--------------\n\n* [x] Validate player name before creating\n* [x] Validate match player counts before creating\n* [x] Move base URL to Settings for easy customization\n* [ ] Cancel network requests when the associated view becomes inactive\n* [ ] Retry network requests 1 or 2 times before giving up\n* [x] Detect and animate match data changes\n* [x] Write tests for models\n* [x] Write tests for view models\n* [ ] Write tests for helpers and store\n* [x] Deduplicate `isActiveSignal` code on view controllers (via a class extension)\n* [ ] Create watchOS 2 app for quick match entry\n\n[snapkit]: https://github.com/SnapKit/SnapKit\n\nBenefits of MVVM\n----------------\n\n__High testability:__ The basic premise of testing is to verify correct output for a given input. As a consequence, any class that minimizes the amount of dependencies affecting its output becomes a good candidate for testing. MVVM's separation of logic (the view model layer) from presentation (the view layer) means that the view model can be tested with minimal setup. For instance, injecting a mock `Store` that provides a known amount of `Match` instances is enough to verify that the `MatchesViewModel` reports the correct amount of matches. The view layer becomes trivial, as it simply binds to those outputs.\n\n__Better separation of concerns:__ `UIViewController` and its friends have been rightfully [scorned][mvc-tweet] for handling far too many things, from interface rotation to networking to providing table data. MVVM solves this by making a clear cut between UI and business logic. While a view controller would still acts as its table view's data source, it forwards the actual data queries to its own view model. Presentation details, such as animating new rows into the table view, will be handled in the view layer.\n\n__Encapsulation of state:__ As suggested by Gary Bernhardt in his famous talk [“Boundaries”][boundaries-talk], view models offer a stateful shell around the stateless core of the app, the model layer. If need be, the app's state can be persisted and restored simply by storing the view model. While the view may be extremely stateful too, its state is ultimately derived from that of the view model, and thus does not require to be stored.\n\n[mvc-tweet]: https://twitter.com/colin_campbell/status/293167951132098560\n[boundaries-talk]: https://www.destroyallsoftware.com/talks/boundaries\n\nAcknowledgements\n----------------\n\nThis project is kindly sponsored by [Futurice][futurice] as part of their fantastic [open-source program][spice-program]. Kiitos!\n\nThe icons within the app are courtesy of [Icons8][icons8] – a resource well worth checking out.\n\n[futurice]: http://futurice.com/\n[spice-program]: http://www.spiceprogram.org/\n[icons8]: https://icons8.com/\n"
  },
  {
    "path": "SwiftGoal/AppDelegate.swift",
    "content": "//\n//  AppDelegate.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 10/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\n\n@UIApplicationMain\nclass AppDelegate: UIResponder, UIApplicationDelegate {\n\n    var window: UIWindow?\n    var store: StoreType?\n    let tabBarController = UITabBarController()\n\n    // Keys and default values for Settings\n    private let useRemoteStoreSettingKey = \"use_remote_store_setting\"\n    private let useRemoteStoreSettingDefault = false\n    private let baseURLSettingKey = \"base_url_setting\"\n    private let baseURLSettingDefault = \"http://localhost:3000/api/v1/\"\n\n    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {\n\n        window = UIWindow(frame: UIScreen.mainScreen().bounds)\n        customizeAppAppearance()\n\n        let userDefaults = NSUserDefaults.standardUserDefaults()\n        registerInitialSettings(userDefaults)\n\n        // Set tab-level view controllers with appropriate store\n        store = storeForUserDefaults(userDefaults)\n        tabBarController.viewControllers = tabViewControllersForStore(store)\n\n        // Register for settings changes as store might have changed\n        NSNotificationCenter.defaultCenter().addObserver(self,\n            selector: #selector(userDefaultsDidChange(_:)),\n            name: NSUserDefaultsDidChangeNotification,\n            object: nil)\n\n        window?.rootViewController = tabBarController\n        window?.makeKeyAndVisible()\n\n        return true\n    }\n\n    func applicationWillTerminate(application: UIApplication) {\n        archiveStoreIfLocal()\n    }\n\n    // MARK: Notifications\n\n    func userDefaultsDidChange(notification: NSNotification) {\n        if let userDefaults = notification.object as? NSUserDefaults {\n            archiveStoreIfLocal()\n            store = storeForUserDefaults(userDefaults)\n            tabBarController.viewControllers = tabViewControllersForStore(store)\n        }\n    }\n\n    // MARK: Private Helpers\n\n    private func customizeAppAppearance() {\n        UIApplication.sharedApplication().statusBarStyle = .LightContent\n        let tintColor = Color.primaryColor\n        window?.tintColor = tintColor\n        UINavigationBar.appearance().barTintColor = tintColor\n        UINavigationBar.appearance().tintColor = UIColor.whiteColor()\n        UINavigationBar.appearance().titleTextAttributes = [\n            NSFontAttributeName: UIFont(name: \"OpenSans-Semibold\", size: 20)!,\n            NSForegroundColorAttributeName: UIColor.whiteColor()\n        ]\n        UINavigationBar.appearance().translucent = false\n        UIBarButtonItem.appearance().setTitleTextAttributes(\n            [NSFontAttributeName: UIFont(name: \"OpenSans\", size: 17)!],\n            forState: .Normal\n        )\n    }\n\n    private func registerInitialSettings(userDefaults: NSUserDefaults) {\n        if userDefaults.objectForKey(useRemoteStoreSettingKey) == nil {\n            userDefaults.setBool(useRemoteStoreSettingDefault, forKey: useRemoteStoreSettingKey)\n        }\n        if userDefaults.stringForKey(baseURLSettingKey) == nil {\n            userDefaults.setObject(baseURLSettingDefault, forKey: baseURLSettingKey)\n        }\n    }\n\n    /// Archives the current store to disk if it's a local store.\n    private func archiveStoreIfLocal() {\n        if let localStore = store as? LocalStore {\n            localStore.archiveToDisk()\n        }\n    }\n\n    private func storeForUserDefaults(userDefaults: NSUserDefaults) -> StoreType {\n        if userDefaults.boolForKey(useRemoteStoreSettingKey) == true {\n            // Create remote store\n            let baseURLString = userDefaults.stringForKey(baseURLSettingKey) ?? baseURLSettingDefault\n            let baseURL = baseURLFromString(baseURLString)\n            return RemoteStore(baseURL: baseURL)\n        } else {\n            // Create local store\n            let store = LocalStore()\n            store.unarchiveFromDisk()\n            return store\n        }\n    }\n\n    private func baseURLFromString(string: String) -> NSURL {\n        var baseURLString = string\n\n        // Append forward slash if needed to ensure proper relative URL behavior\n        let forwardSlash: Character = \"/\"\n        if !baseURLString.hasSuffix(String(forwardSlash)) {\n            baseURLString.append(forwardSlash)\n        }\n\n        return NSURL(string: baseURLString) ?? NSURL(string: baseURLSettingDefault)!\n    }\n\n    private func tabViewControllersForStore(store: StoreType?) -> [UIViewController] {\n        guard let store = store else { return [] }\n\n        let matchesViewModel = MatchesViewModel(store: store)\n        let matchesViewController = MatchesViewController(viewModel: matchesViewModel)\n        let matchesNavigationController = UINavigationController(rootViewController: matchesViewController)\n        matchesNavigationController.tabBarItem = UITabBarItem(\n            title: matchesViewModel.title,\n            image: UIImage(named: \"FootballFilled\"),\n            selectedImage: UIImage(named: \"FootballFilled\")\n        )\n\n        let rankingsViewModel = RankingsViewModel(store: store)\n        let rankingsViewController = RankingsViewController(viewModel: rankingsViewModel)\n        let rankingsNavigationController = UINavigationController(rootViewController: rankingsViewController)\n        rankingsNavigationController.tabBarItem = UITabBarItem(\n            title: rankingsViewModel.title,\n            image: UIImage(named: \"Crown\"),\n            selectedImage: UIImage(named: \"CrownFilled\")\n        )\n\n        return [matchesNavigationController, rankingsNavigationController]\n    }\n}\n\n"
  },
  {
    "path": "SwiftGoal/Base.lproj/LaunchScreen.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.XIB\" version=\"3.0\" toolsVersion=\"10117\" systemVersion=\"15E65\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" launchScreen=\"YES\" useTraitCollections=\"YES\">\n    <dependencies>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"10085\"/>\n    </dependencies>\n    <objects>\n        <placeholder placeholderIdentifier=\"IBFilesOwner\" id=\"-1\" userLabel=\"File's Owner\"/>\n        <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"-2\" customClass=\"UIResponder\"/>\n        <view contentMode=\"scaleToFill\" id=\"iN0-l3-epB\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"480\" height=\"480\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <label opaque=\"NO\" clipsSubviews=\"YES\" userInteractionEnabled=\"NO\" contentMode=\"left\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" text=\"⚽️\" textAlignment=\"center\" lineBreakMode=\"middleTruncation\" baselineAdjustment=\"alignBaselines\" minimumFontSize=\"18\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"0S4-6N-F6r\">\n                    <rect key=\"frame\" x=\"210\" y=\"204\" width=\"60\" height=\"72\"/>\n                    <fontDescription key=\"fontDescription\" type=\"system\" pointSize=\"60\"/>\n                    <color key=\"textColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                    <nil key=\"highlightedColor\"/>\n                </label>\n            </subviews>\n            <color key=\"backgroundColor\" red=\"0.99215686274509807\" green=\"0.53725490196078429\" blue=\"0.18823529411764706\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n            <constraints>\n                <constraint firstAttribute=\"centerY\" secondItem=\"0S4-6N-F6r\" secondAttribute=\"centerY\" id=\"0Yd-pI-1fJ\"/>\n                <constraint firstAttribute=\"centerX\" secondItem=\"0S4-6N-F6r\" secondAttribute=\"centerX\" id=\"hZI-hi-0mr\"/>\n            </constraints>\n            <nil key=\"simulatedStatusBarMetrics\"/>\n            <freeformSimulatedSizeMetrics key=\"simulatedDestinationMetrics\"/>\n            <point key=\"canvasLocation\" x=\"548\" y=\"455\"/>\n        </view>\n    </objects>\n</document>\n"
  },
  {
    "path": "SwiftGoal/Helpers/Color.swift",
    "content": "//\n//  Color.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 27/07/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\n\nstruct Color {\n    static let primaryColor = UIColor(red:0.99, green:0.54, blue:0.19, alpha:1)\n    static let lighterPrimaryColor = UIColor(red:1, green:0.64, blue:0.29, alpha:1)\n}\n"
  },
  {
    "path": "SwiftGoal/Helpers/Extensions.swift",
    "content": "//\n//  Extensions.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 23/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nextension Array {\n    func difference<T: Equatable>(otherArray: [T]) -> [T] {\n        var result = [T]()\n\n        for e in self {\n            if let element = e as? T {\n                if !otherArray.contains(element) {\n                    result.append(element)\n                }\n            }\n        }\n\n        return result\n    }\n\n    func intersection<T: Equatable>(otherArray: [T]) -> [T] {\n        var result = [T]()\n\n        for e in self {\n            if let element = e as? T {\n                if otherArray.contains(element) {\n                    result.append(element)\n                }\n            }\n        }\n\n        return result\n    }\n}\n\nextension UIStepper {\n    func signalProducer() -> SignalProducer<Int, NoError> {\n        return self.rac_newValueChannelWithNilValue(0).toSignalProducer()\n            .map { $0 as! Int }\n            .flatMapError { _ in return SignalProducer<Int, NoError>.empty }\n    }\n}\n\nextension UITextField {\n    func signalProducer() -> SignalProducer<String, NoError> {\n        return self.rac_textSignal().toSignalProducer()\n            .map { $0 as! String }\n            .flatMapError { _ in return SignalProducer<String, NoError>.empty }\n    }\n}\n\nextension UIViewController {\n    func isActive() -> SignalProducer<Bool, NoError> {\n\n        // Track whether view is visible\n\n        let viewWillAppear = rac_signalForSelector(#selector(viewWillAppear(_:))).toSignalProducer()\n        let viewWillDisappear = rac_signalForSelector(#selector(viewWillDisappear(_:))).toSignalProducer()\n\n        let viewIsVisible = SignalProducer<SignalProducer<Bool, NSError>, NoError>(values: [\n            viewWillAppear.map { _ in true },\n            viewWillDisappear.map { _ in false }\n        ]).flatten(.Merge)\n\n        // Track whether app is in foreground\n\n        let notificationCenter = NSNotificationCenter.defaultCenter()\n\n        let didBecomeActive = notificationCenter\n            .rac_addObserverForName(UIApplicationDidBecomeActiveNotification, object: nil)\n            .toSignalProducer()\n\n        let willBecomeInactive = notificationCenter\n            .rac_addObserverForName(UIApplicationWillResignActiveNotification, object: nil)\n            .toSignalProducer()\n\n        let appIsActive = SignalProducer<SignalProducer<Bool, NSError>, NoError>(values: [\n            SignalProducer(value: true), // Account for app being initially active without notification\n            didBecomeActive.map { _ in true },\n            willBecomeInactive.map { _ in false }\n        ]).flatten(.Merge)\n\n        // View controller is active iff both are true:\n\n        return combineLatest(viewIsVisible, appIsActive)\n            .map { $0 && $1 }\n            .flatMapError { _ in SignalProducer.empty }\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Helpers/RankingEngine.swift",
    "content": "//\n//  RankingEngine.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 02/01/16.\n//  Copyright © 2016 Martin Richter. All rights reserved.\n//\n\nclass RankingEngine {\n    private let pointsForWin = 3\n    private let pointsForTie = 1\n    private let pointsForLoss = 0\n\n    private enum Side {\n        case Home\n        case Away\n    }\n\n    func rankingsForPlayers(players: [Player], fromMatches matches: [Match]) -> [Ranking] {\n        if players.isEmpty {\n            return []\n        }\n\n        if matches.isEmpty {\n            return players.map { player in\n                return Ranking(player: player, rating: 0)\n            }\n        }\n\n        let rankings = players.map { (player: Player) -> Ranking in\n            let homeMatches = matches.filter { $0.homePlayers.contains(player) }\n            let awayMatches = matches.filter { $0.awayPlayers.contains(player) }\n\n            let homePoints = homeMatches.reduce(0, combine: { sum, match in\n                return sum + pointsFromMatch(match, forSide: .Home)\n            })\n\n            let awayPoints = awayMatches.reduce(0, combine: { sum, match in\n                return sum + pointsFromMatch(match, forSide: .Away)\n            })\n\n            let maxHomePoints = homeMatches.count * pointsForWin\n            let maxAwayPoints = awayMatches.count * pointsForWin\n            let rating = 10 * Float(homePoints + awayPoints) / Float(maxHomePoints + maxAwayPoints)\n\n            return Ranking(player: player, rating: rating)\n        }\n\n        return rankings.sort { lhs, rhs in lhs.rating > rhs.rating }\n    }\n\n    // MARK: Private Helpers\n\n    private func pointsFromMatch(match: Match, forSide side: Side) -> Int {\n        if match.homeGoals > match.awayGoals {\n            return side == .Home ? pointsForWin : pointsForLoss\n        } else if match.awayGoals > match.homeGoals {\n            return side == .Home ? pointsForLoss : pointsForWin\n        } else {\n            return pointsForTie\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Images.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-Small@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-Small@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-60@2x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-60@2x-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-60@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-Small.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-Small@2x-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-40.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-40@2x-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-76.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-76@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"83.5x83.5\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-83.5@2x.png\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "SwiftGoal/Images.xcassets/Crown.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"Crown@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "SwiftGoal/Images.xcassets/CrownFilled.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"CrownFilled@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "SwiftGoal/Images.xcassets/FootballFilled.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\",\n      \"filename\" : \"FootballFilled@2x.png\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "SwiftGoal/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>0.1</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>NSAppTransportSecurity</key>\n\t<dict>\n\t\t<key>NSExceptionDomains</key>\n\t\t<dict>\n\t\t\t<key>localhost</key>\n\t\t\t<dict>\n\t\t\t\t<key>NSExceptionAllowsInsecureHTTPLoads</key>\n\t\t\t\t<true/>\n\t\t\t</dict>\n\t\t</dict>\n\t</dict>\n\t<key>UIAppFonts</key>\n\t<array>\n\t\t<string>OpenSans-Regular.ttf</string>\n\t\t<string>OpenSans-Semibold.ttf</string>\n\t</array>\n\t<key>UILaunchStoryboardName</key>\n\t<string>LaunchScreen</string>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<array>\n\t\t<string>armv7</string>\n\t</array>\n\t<key>UIStatusBarStyle</key>\n\t<string>UIStatusBarStyleLightContent</string>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations~ipad</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationPortraitUpsideDown</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n\t<key>UIViewControllerBasedStatusBarAppearance</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "SwiftGoal/Models/Changeset.swift",
    "content": "//\n//  Changeset.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 01/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Foundation\n\nstruct Changeset<T: Equatable> {\n\n    var deletions: [NSIndexPath]\n    var modifications: [NSIndexPath]\n    var insertions: [NSIndexPath]\n\n    typealias ContentMatches = (T, T) -> Bool\n\n    init(oldItems: [T], newItems: [T], contentMatches: ContentMatches) {\n\n        deletions = oldItems.difference(newItems).map { item in\n            return Changeset.indexPathForIndex(oldItems.indexOf(item)!)\n        }\n\n        modifications = oldItems.intersection(newItems)\n            .filter({ item in\n                let newItem = newItems[newItems.indexOf(item)!]\n                return !contentMatches(item, newItem)\n            })\n            .map({ item in\n                return Changeset.indexPathForIndex(oldItems.indexOf(item)!)\n            })\n\n        insertions = newItems.difference(oldItems).map { item in\n            return NSIndexPath(forRow: newItems.indexOf(item)!, inSection: 0)\n        }\n    }\n\n    private static func indexPathForIndex(index: Int) -> NSIndexPath {\n        return NSIndexPath(forRow: index, inSection: 0)\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Models/Encodable.swift",
    "content": "//\n//  Encodable.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 01/01/16.\n//  Copyright © 2016 Martin Richter. All rights reserved.\n//\n\nprotocol Encodable {\n    func encode() -> [String: AnyObject]\n}\n"
  },
  {
    "path": "SwiftGoal/Models/Match.swift",
    "content": "//\n//  Match.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 11/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Argo\nimport Curry\n\nstruct Match {\n    let identifier: String\n    let homePlayers: [Player]\n    let awayPlayers: [Player]\n    let homeGoals: Int\n    let awayGoals: Int\n\n    static private let identifierKey = \"id\"\n    static private let homePlayersKey = \"home_players\"\n    static private let awayPlayersKey = \"away_players\"\n    static private let homeGoalsKey = \"home_goals\"\n    static private let awayGoalsKey = \"away_goals\"\n\n    init(identifier: String, homePlayers: [Player], awayPlayers: [Player], homeGoals: Int, awayGoals: Int) {\n        self.identifier = identifier\n        self.homePlayers = homePlayers\n        self.awayPlayers = awayPlayers\n        self.homeGoals = homeGoals\n        self.awayGoals = awayGoals\n    }\n\n    // TODO: Decide if content matching should include identifier or not\n    static func contentMatches(lhs: Match, _ rhs: Match) -> Bool {\n        return lhs.identifier == rhs.identifier\n            && Player.contentMatches(lhs.homePlayers, rhs.homePlayers)\n            && Player.contentMatches(lhs.awayPlayers, rhs.awayPlayers)\n            && lhs.homeGoals == rhs.homeGoals\n            && lhs.awayGoals == rhs.awayGoals\n    }\n}\n\n// MARK: Equatable\n\nextension Match: Equatable {}\n\nfunc ==(lhs: Match, rhs: Match) -> Bool {\n    return lhs.identifier == rhs.identifier\n}\n\n// MARK: Decodable\n\nextension Match: Decodable {\n    static func decode(json: JSON) -> Decoded<Match> {\n        return curry(Match.init)\n            <^> json <| identifierKey\n            <*> json <|| homePlayersKey\n            <*> json <|| awayPlayersKey\n            <*> json <| homeGoalsKey\n            <*> json <| awayGoalsKey\n    }\n}\n\n// MARK: Encodable\n\nextension Match: Encodable {\n    func encode() -> [String: AnyObject] {\n        return [\n            Match.identifierKey: identifier,\n            Match.homePlayersKey: homePlayers.map { $0.encode() },\n            Match.awayPlayersKey: awayPlayers.map { $0.encode() },\n            Match.homeGoalsKey: homeGoals,\n            Match.awayGoalsKey: awayGoals\n        ]\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Models/Player.swift",
    "content": "//\n//  Player.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 02/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Argo\nimport Curry\n\nstruct Player {\n    let identifier: String\n    let name: String\n\n    static private let identifierKey = \"id\"\n    static private let nameKey = \"name\"\n\n    init(identifier: String, name: String) {\n        self.identifier = identifier\n        self.name = name\n    }\n\n    static func contentMatches(lhs: Player, _ rhs: Player) -> Bool {\n        return lhs.identifier == rhs.identifier\n            && lhs.name == rhs.name\n    }\n\n    static func contentMatches(lhs: [Player], _ rhs: [Player]) -> Bool {\n        if lhs.count != rhs.count { return false }\n\n        for (index, player) in lhs.enumerate() {\n            if !contentMatches(rhs[index], player) {\n                return false\n            }\n        }\n\n        return true\n    }\n}\n\n// MARK: Equatable\n\nfunc ==(lhs: Player, rhs: Player) -> Bool {\n    return lhs.identifier == rhs.identifier\n}\n\n// MARK: Hashable\n\nextension Player: Hashable {\n    var hashValue: Int {\n        return identifier.hashValue\n    }\n}\n\n// MARK: Decodable\n\nextension Player: Decodable {\n    static func decode(json: JSON) -> Decoded<Player> {\n        return curry(Player.init)\n            <^> json <| identifierKey\n            <*> json <| nameKey\n    }\n}\n\n// MARK: Encodable\n\nextension Player: Encodable {\n    func encode() -> [String: AnyObject] {\n        return [\n            Player.identifierKey: identifier,\n            Player.nameKey: name\n        ]\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Models/Ranking.swift",
    "content": "//\n//  Ranking.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 24/07/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Argo\nimport Curry\n\nstruct Ranking {\n    let player: Player\n    let rating: Float\n\n    static func contentMatches(lhs: Ranking, _ rhs: Ranking) -> Bool {\n        return Player.contentMatches(lhs.player, rhs.player)\n            && lhs.rating == rhs.rating\n    }\n\n    static func contentMatches(lhs: [Ranking], _ rhs: [Ranking]) -> Bool {\n        // Make sure arrays have same size\n        guard lhs.count == rhs.count else { return false }\n\n        // Look at pairs of rankings\n        let hasMismatch = zip(lhs, rhs)\n            .map { contentMatches($0, $1) } // Apply content matcher to each\n            .contains(false) // Check for mismatches\n        return !hasMismatch\n    }\n}\n\n// MARK: Equatable\n\nfunc ==(lhs: Ranking, rhs: Ranking) -> Bool {\n    return lhs.player == rhs.player\n}\n\n// MARK: Decodable\n\nextension Ranking: Decodable {\n    static func decode(json: JSON) -> Decoded<Ranking> {\n        return curry(Ranking.init)\n            <^> json <| \"player\"\n            <*> json <| \"rating\"\n    }\n}\n\n// MARK: Hashable\n\nextension Ranking: Hashable {\n    var hashValue: Int {\n        return player.identifier.hashValue ^ rating.hashValue\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Settings.bundle/Root.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreferenceSpecifiers</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>Title</key>\n\t\t\t<string>Data Storage</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSGroupSpecifier</string>\n\t\t\t<key>FooterText</key>\n\t\t\t<string>When Remote Store is switched off, the app keeps its data on this device.</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSToggleSwitchSpecifier</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Use Remote Store</string>\n\t\t\t<key>Key</key>\n\t\t\t<string>use_remote_store_setting</string>\n\t\t\t<key>DefaultValue</key>\n\t\t\t<false/>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>AutocapitalizationType</key>\n\t\t\t<string>None</string>\n\t\t\t<key>AutocorrectionType</key>\n\t\t\t<string>No</string>\n\t\t\t<key>DefaultValue</key>\n\t\t\t<string>http://localhost:3000/api/v1/</string>\n\t\t\t<key>Key</key>\n\t\t\t<string>base_url_setting</string>\n\t\t\t<key>KeyboardType</key>\n\t\t\t<string>URL</string>\n\t\t\t<key>Title</key>\n\t\t\t<string>Base URL</string>\n\t\t\t<key>Type</key>\n\t\t\t<string>PSTextFieldSpecifier</string>\n\t\t</dict>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "SwiftGoal/Stores/LocalStore.swift",
    "content": "//\n//  LocalStore.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 31/12/15.\n//  Copyright © 2015 Martin Richter. All rights reserved.\n//\n\nimport Argo\nimport ReactiveCocoa\n\nclass LocalStore: StoreType {\n\n    private var matches = [Match]()\n    private var players = [Player]()\n\n    private let rankingEngine = RankingEngine()\n\n    private let matchesKey = \"matches\"\n    private let playersKey = \"players\"\n    private let archiveFileName = \"LocalStore\"\n\n    // MARK: Matches\n\n    func fetchMatches() -> SignalProducer<[Match], NSError> {\n        return SignalProducer(value: matches)\n    }\n\n    func createMatch(parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n        let identifier = randomIdentifier()\n        let match = matchFromParameters(parameters, withIdentifier: identifier)\n        matches.append(match)\n\n        return SignalProducer(value: true)\n    }\n\n    func updateMatch(match: Match, parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n        if let oldMatchIndex = matches.indexOf(match) {\n            let newMatch = matchFromParameters(parameters, withIdentifier: match.identifier)\n            matches.removeAtIndex(oldMatchIndex)\n            matches.insert(newMatch, atIndex: oldMatchIndex)\n            return SignalProducer(value: true)\n        } else {\n            return SignalProducer(value: false)\n        }\n    }\n\n    func deleteMatch(match: Match) -> SignalProducer<Bool, NSError> {\n        if let index = matches.indexOf(match) {\n            matches.removeAtIndex(index)\n            return SignalProducer(value: true)\n        } else {\n            return SignalProducer(value: false)\n        }\n    }\n\n    // MARK: Players\n\n    func fetchPlayers() -> SignalProducer<[Player], NSError> {\n        return SignalProducer(value: players)\n    }\n\n    func createPlayerWithName(name: String) -> SignalProducer<Bool, NSError> {\n        let player = Player(identifier: randomIdentifier(), name: name)\n\n        // Keep alphabetical order when inserting player\n        let alphabeticalIndex = players.indexOf { existingPlayer in\n            existingPlayer.name > player.name\n        }\n        if let index = alphabeticalIndex {\n            players.insert(player, atIndex: index)\n        } else {\n            players.append(player)\n        }\n\n        return SignalProducer(value: true)\n    }\n\n    // MARK: Rankings\n\n    func fetchRankings() -> SignalProducer<[Ranking], NSError> {\n      let rankings = rankingEngine.rankingsForPlayers(players, fromMatches: matches)\n      return SignalProducer(value: rankings)\n    }\n\n    // MARK: Persistence\n\n    func archiveToDisk() {\n        let matchesDict = matches.map { $0.encode() }\n        let playersDict = players.map { $0.encode() }\n\n        let dataDict = [matchesKey: matchesDict, playersKey: playersDict]\n\n        if let filePath = persistentFilePath() {\n            NSKeyedArchiver.archiveRootObject(dataDict, toFile: filePath)\n        }\n    }\n\n    func unarchiveFromDisk() {\n        if let\n            path = persistentFilePath(),\n            dataDict = NSKeyedUnarchiver.unarchiveObjectWithFile(path) as? [String: AnyObject],\n            matchesDict = dataDict[matchesKey],\n            playersDict = dataDict[playersKey],\n            matches: [Match] = decode(matchesDict),\n            players: [Player] = decode(playersDict)\n        {\n            self.matches = matches\n            self.players = players\n        }\n    }\n\n    // MARK: Private Helpers\n\n    private func randomIdentifier() -> String {\n        return NSUUID().UUIDString\n    }\n\n    private func matchFromParameters(parameters: MatchParameters, withIdentifier identifier: String) -> Match {\n        let sortByName: (Player, Player) -> Bool = { players in\n            players.0.name < players.1.name\n        }\n\n        return Match(\n            identifier: identifier,\n            homePlayers: parameters.homePlayers.sort(sortByName),\n            awayPlayers: parameters.awayPlayers.sort(sortByName),\n            homeGoals: parameters.homeGoals,\n            awayGoals: parameters.awayGoals\n        )\n    }\n\n    private func persistentFilePath() -> String? {\n        let basePath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true).first as NSString?\n        return basePath?.stringByAppendingPathComponent(archiveFileName)\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Stores/RemoteStore.swift",
    "content": "//\n//  Store.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 10/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Argo\nimport ReactiveCocoa\n\nclass RemoteStore: StoreType {\n\n    enum RequestMethod {\n        case GET\n        case POST\n        case PUT\n        case DELETE\n    }\n\n    private let baseURL: NSURL\n    private let matchesURL: NSURL\n    private let playersURL: NSURL\n    private let rankingsURL: NSURL\n\n    // MARK: Lifecycle\n\n    init(baseURL: NSURL) {\n        self.baseURL = baseURL\n        self.matchesURL = NSURL(string: \"matches\", relativeToURL: baseURL)!\n        self.playersURL = NSURL(string: \"players\", relativeToURL: baseURL)!\n        self.rankingsURL = NSURL(string: \"rankings\", relativeToURL: baseURL)!\n    }\n\n    // MARK: - Matches\n\n    func fetchMatches() -> SignalProducer<[Match], NSError> {\n        let request = mutableRequestWithURL(matchesURL, method: .GET)\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let json = try? NSJSONSerialization.JSONObjectWithData(data, options: []),\n                  let matches: [Match] = decode(json) {\n                    return matches\n                } else {\n                    return []\n                }\n            }\n    }\n\n    func createMatch(parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n\n        let request = mutableRequestWithURL(matchesURL, method: .POST)\n        request.HTTPBody = httpBodyForMatchParameters(parameters)\n\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let httpResponse = response as? NSHTTPURLResponse {\n                    return httpResponse.statusCode == 201\n                } else {\n                    return false\n                }\n            }\n    }\n\n    func updateMatch(match: Match, parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n\n        let request = mutableRequestWithURL(urlForMatch(match), method: .PUT)\n        request.HTTPBody = httpBodyForMatchParameters(parameters)\n\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let httpResponse = response as? NSHTTPURLResponse {\n                    return httpResponse.statusCode == 200\n                } else {\n                    return false\n                }\n            }\n    }\n\n    func deleteMatch(match: Match) -> SignalProducer<Bool, NSError> {\n        let request = mutableRequestWithURL(urlForMatch(match), method: .DELETE)\n\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let httpResponse = response as? NSHTTPURLResponse {\n                    return httpResponse.statusCode == 200\n                } else {\n                    return false\n                }\n            }\n    }\n\n    // MARK: Players\n\n    func fetchPlayers() -> SignalProducer<[Player], NSError> {\n        let request = NSURLRequest(URL: playersURL)\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let json = try? NSJSONSerialization.JSONObjectWithData(data, options: []),\n                    let players: [Player] = decode(json) {\n                    return players\n                } else {\n                    return []\n                }\n            }\n    }\n\n    func createPlayerWithName(name: String) -> SignalProducer<Bool, NSError> {\n        let request = mutableRequestWithURL(playersURL, method: .POST)\n        request.HTTPBody = httpBodyForPlayerName(name)\n\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let httpResponse = response as? NSHTTPURLResponse {\n                    return httpResponse.statusCode == 201\n                } else {\n                    return false\n                }\n            }\n    }\n\n    // MARK: Rankings\n\n    func fetchRankings() -> SignalProducer<[Ranking], NSError> {\n        let request = NSURLRequest(URL: rankingsURL)\n        return NSURLSession.sharedSession().rac_dataWithRequest(request)\n            .map { data, response in\n                if let json = try? NSJSONSerialization.JSONObjectWithData(data, options: []),\n                    let rankings: [Ranking] = decode(json) {\n                    return rankings\n                } else {\n                    return []\n                }\n        }\n    }\n\n    // MARK: Private Helpers\n\n    private func httpBodyForMatchParameters(parameters: MatchParameters) -> NSData? {\n        let jsonObject = [\n            \"home_player_ids\": Array(parameters.homePlayers).map { $0.identifier },\n            \"away_player_ids\": Array(parameters.awayPlayers).map { $0.identifier },\n            \"home_goals\": parameters.homeGoals,\n            \"away_goals\": parameters.awayGoals\n        ]\n\n        return try? NSJSONSerialization.dataWithJSONObject(jsonObject, options: [])\n    }\n\n    private func httpBodyForPlayerName(name: String) -> NSData? {\n        let jsonObject = [\n            \"name\": name\n        ]\n\n        return try? NSJSONSerialization.dataWithJSONObject(jsonObject, options: [])\n    }\n\n    private func urlForMatch(match: Match) -> NSURL {\n        return matchesURL.URLByAppendingPathComponent(match.identifier)!\n    }\n\n    private func mutableRequestWithURL(url: NSURL, method: RequestMethod) -> NSMutableURLRequest {\n        let request = NSMutableURLRequest(URL: url)\n\n        switch method {\n            case .GET:\n                request.HTTPMethod = \"GET\"\n            case .POST:\n                request.HTTPMethod = \"POST\"\n                request.setValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\n            case .PUT:\n                request.HTTPMethod = \"PUT\"\n                request.setValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\n            case .DELETE:\n                request.HTTPMethod = \"DELETE\"\n        }\n\n        return request\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Stores/StoreType.swift",
    "content": "//\n//  StoreType.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 30/12/15.\n//  Copyright © 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\n\nstruct MatchParameters {\n    let homePlayers: Set<Player>\n    let awayPlayers: Set<Player>\n    let homeGoals: Int\n    let awayGoals: Int\n}\n\nprotocol StoreType {\n    // Matches\n    func fetchMatches() -> SignalProducer<[Match], NSError>\n    func createMatch(parameters: MatchParameters) -> SignalProducer<Bool, NSError>\n    func updateMatch(match: Match, parameters: MatchParameters) -> SignalProducer<Bool, NSError>\n    func deleteMatch(match: Match) -> SignalProducer<Bool, NSError>\n\n    // Players\n    func fetchPlayers() -> SignalProducer<[Player], NSError>\n    func createPlayerWithName(name: String) -> SignalProducer<Bool, NSError>\n\n    // Rankings\n    func fetchRankings() -> SignalProducer<[Ranking], NSError>\n}\n"
  },
  {
    "path": "SwiftGoal/ViewModels/EditMatchViewModel.swift",
    "content": "//\n//  EditMatchViewModel.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 22/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\n\nclass EditMatchViewModel {\n\n    // Inputs\n    let homeGoals: MutableProperty<Int>\n    let awayGoals: MutableProperty<Int>\n\n    // Outputs\n    let title: String\n    let formattedHomeGoals = MutableProperty<String>(\"\")\n    let formattedAwayGoals = MutableProperty<String>(\"\")\n    let homePlayersString = MutableProperty<String>(\"\")\n    let awayPlayersString = MutableProperty<String>(\"\")\n    let inputIsValid = MutableProperty<Bool>(false)\n\n    // Actions\n    lazy var saveAction: Action<Void, Bool, NSError> = { [unowned self] in\n        return Action(enabledIf: self.inputIsValid, { _ in\n            let parameters = MatchParameters(\n                homePlayers: self.homePlayers.value,\n                awayPlayers: self.awayPlayers.value,\n                homeGoals: self.homeGoals.value,\n                awayGoals: self.awayGoals.value\n            )\n            if let match = self.match {\n                return self.store.updateMatch(match, parameters: parameters)\n            } else {\n                return self.store.createMatch(parameters)\n            }\n        })\n    }()\n\n    private let store: StoreType\n    private let match: Match?\n    private let homePlayers: MutableProperty<Set<Player>>\n    private let awayPlayers: MutableProperty<Set<Player>>\n\n    // MARK: Lifecycle\n\n    init(store: StoreType, match: Match?) {\n        self.store = store\n        self.match = match\n\n        // Set properties based on whether an existing match was passed\n        self.title = (match != nil ? \"Edit Match\" : \"New Match\")\n        self.homePlayers = MutableProperty(Set<Player>(match?.homePlayers ?? []))\n        self.awayPlayers = MutableProperty(Set<Player>(match?.awayPlayers ?? []))\n        self.homeGoals = MutableProperty(match?.homeGoals ?? 0)\n        self.awayGoals = MutableProperty(match?.awayGoals ?? 0)\n\n        self.formattedHomeGoals <~ homeGoals.producer.map { goals in return \"\\(goals)\" }\n        self.formattedAwayGoals <~ awayGoals.producer.map { goals in return \"\\(goals)\" }\n\n        self.homePlayersString <~ homePlayers.producer\n            .map { players in\n                return players.isEmpty ? \"Set Home Players\" : players.map({ $0.name }).joinWithSeparator(\", \")\n            }\n        self.awayPlayersString <~ awayPlayers.producer\n            .map { players in\n                return players.isEmpty ? \"Set Away Players\" : players.map({ $0.name }).joinWithSeparator(\", \")\n            }\n        self.inputIsValid <~ combineLatest(homePlayers.producer, awayPlayers.producer)\n            .map { (homePlayers, awayPlayers) in\n                return !homePlayers.isEmpty && !awayPlayers.isEmpty\n            }\n    }\n\n    convenience init(store: StoreType) {\n        self.init(store: store, match: nil)\n    }\n\n    // MARK: View Models\n\n    func manageHomePlayersViewModel() -> ManagePlayersViewModel {\n        let homePlayersViewModel = ManagePlayersViewModel(\n            store: store,\n            initialPlayers: homePlayers.value,\n            disabledPlayers: awayPlayers.value\n        )\n        self.homePlayers <~ homePlayersViewModel.selectedPlayers\n\n        return homePlayersViewModel\n    }\n\n    func manageAwayPlayersViewModel() -> ManagePlayersViewModel {\n        let awayPlayersViewModel = ManagePlayersViewModel(\n            store: store,\n            initialPlayers: awayPlayers.value,\n            disabledPlayers: homePlayers.value\n        )\n        self.awayPlayers <~ awayPlayersViewModel.selectedPlayers\n\n        return awayPlayersViewModel\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/ViewModels/ManagePlayersViewModel.swift",
    "content": "//\n//  ManagePlayersViewModel.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 30/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nclass ManagePlayersViewModel {\n\n    typealias PlayerChangeset = Changeset<Player>\n\n    // Inputs\n    let active = MutableProperty(false)\n    let playerName = MutableProperty(\"\")\n    let refreshObserver: Observer<Void, NoError>\n\n    // Outputs\n    let title: String\n    let contentChangesSignal: Signal<PlayerChangeset, NoError>\n    let isLoading: MutableProperty<Bool>\n    let alertMessageSignal: Signal<String, NoError>\n    let selectedPlayers: MutableProperty<Set<Player>>\n    let inputIsValid = MutableProperty(false)\n\n    // Actions\n    lazy var saveAction: Action<Void, Bool, NSError> = { [unowned self] in\n        return Action(enabledIf: self.inputIsValid, { _ in\n            return self.store.createPlayerWithName(self.playerName.value)\n        })\n    }()\n\n    private let store: StoreType\n    private let contentChangesObserver: Observer<PlayerChangeset, NoError>\n    private let alertMessageObserver: Observer<String, NoError>\n    private let disabledPlayers: Set<Player>\n\n    private var players: [Player]\n\n    // MARK: Lifecycle\n\n    init(store: StoreType, initialPlayers: Set<Player>, disabledPlayers: Set<Player>) {\n        self.title = \"Players\"\n        self.store = store\n        self.players = []\n        self.selectedPlayers = MutableProperty(initialPlayers)\n        self.disabledPlayers = disabledPlayers\n\n        let (refreshSignal, refreshObserver) = Signal<Void, NoError>.pipe()\n        self.refreshObserver = refreshObserver\n\n        let (contentChangesSignal, contentChangesObserver) = Signal<PlayerChangeset, NoError>.pipe()\n        self.contentChangesSignal = contentChangesSignal\n        self.contentChangesObserver = contentChangesObserver\n\n        let isLoading = MutableProperty(false)\n        self.isLoading = isLoading\n\n        let (alertMessageSignal, alertMessageObserver) = Signal<String, NoError>.pipe()\n        self.alertMessageSignal = alertMessageSignal\n        self.alertMessageObserver = alertMessageObserver\n\n        active.producer\n            .filter { $0 }\n            .map { _ in () }\n            .start(refreshObserver)\n\n        saveAction.values\n            .filter { $0 }\n            .map { _ in () }\n            .observe(refreshObserver)\n\n        SignalProducer(signal: refreshSignal)\n            .on(next: { _ in isLoading.value = true })\n            .flatMap(.Latest, transform: { _ in\n                return store.fetchPlayers()\n                    .flatMapError { error in\n                        alertMessageObserver.sendNext(error.localizedDescription)\n                        return SignalProducer(value: [])\n                    }\n            })\n            .on(next: { _ in isLoading.value = false })\n            .combinePrevious([]) // Preserve history to calculate changeset\n            .startWithNext({ [weak self] (oldPlayers, newPlayers) in\n                self?.players = newPlayers\n                if let observer = self?.contentChangesObserver {\n                    let changeset = Changeset(\n                        oldItems: oldPlayers,\n                        newItems: newPlayers,\n                        contentMatches: Player.contentMatches\n                    )\n                    observer.sendNext(changeset)\n                }\n            })\n\n        // Feed saving errors into alert message signal\n        saveAction.errors\n            .map { $0.localizedDescription }\n            .observe(alertMessageObserver)\n\n        inputIsValid <~ playerName.producer.map { $0.characters.count > 0 }\n    }\n\n    // MARK: Data Source\n\n    func numberOfSections() -> Int {\n        return 1\n    }\n\n    func numberOfPlayersInSection(section: Int) -> Int {\n        return players.count\n    }\n\n    func playerNameAtIndexPath(indexPath: NSIndexPath) -> String {\n        return playerAtIndexPath(indexPath).name\n    }\n\n    func isPlayerSelectedAtIndexPath(indexPath: NSIndexPath) -> Bool {\n        let player = playerAtIndexPath(indexPath)\n        return selectedPlayers.value.contains(player)\n    }\n\n    func canSelectPlayerAtIndexPath(indexPath: NSIndexPath) -> Bool {\n        let player = playerAtIndexPath(indexPath)\n        return !disabledPlayers.contains(player)\n    }\n\n    // MARK: Player Selection\n\n    func selectPlayerAtIndexPath(indexPath: NSIndexPath) {\n        let player = playerAtIndexPath(indexPath)\n        selectedPlayers.value.insert(player)\n    }\n\n    func deselectPlayerAtIndexPath(indexPath: NSIndexPath) {\n        let player = playerAtIndexPath(indexPath)\n        selectedPlayers.value.remove(player)\n    }\n\n    // MARK: Internal Helpers\n\n    private func playerAtIndexPath(indexPath: NSIndexPath) -> Player {\n        return players[indexPath.row]\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/ViewModels/MatchesViewModel.swift",
    "content": "//\n//  MatchesViewModel.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 10/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nclass MatchesViewModel {\n\n    typealias MatchChangeset = Changeset<Match>\n\n    // Inputs\n    let active = MutableProperty(false)\n    let refreshObserver: Observer<Void, NoError>\n\n    // Outputs\n    let title: String\n    let contentChangesSignal: Signal<MatchChangeset, NoError>\n    let isLoading: MutableProperty<Bool>\n    let alertMessageSignal: Signal<String, NoError>\n\n    // Actions\n    lazy var deleteAction: Action<NSIndexPath, Bool, NSError> = { [unowned self] in\n        return Action({ indexPath in\n            let match = self.matchAtIndexPath(indexPath)\n            return self.store.deleteMatch(match)\n        })\n    }()\n\n    private let store: StoreType\n    private let contentChangesObserver: Observer<MatchChangeset, NoError>\n    private let alertMessageObserver: Observer<String, NoError>\n    private var matches: [Match]\n\n    // MARK: - Lifecycle\n\n    init(store: StoreType) {\n        self.title = \"Matches\"\n        self.store = store\n        self.matches = []\n\n        let (refreshSignal, refreshObserver) = Signal<Void, NoError>.pipe()\n        self.refreshObserver = refreshObserver\n\n        let (contentChangesSignal, contentChangesObserver) = Signal<MatchChangeset, NoError>.pipe()\n        self.contentChangesSignal = contentChangesSignal\n        self.contentChangesObserver = contentChangesObserver\n\n        let isLoading = MutableProperty(false)\n        self.isLoading = isLoading\n\n        let (alertMessageSignal, alertMessageObserver) = Signal<String, NoError>.pipe()\n        self.alertMessageSignal = alertMessageSignal\n        self.alertMessageObserver = alertMessageObserver\n\n        // Trigger refresh when view becomes active\n        active.producer\n            .filter { $0 }\n            .map { _ in () }\n            .start(refreshObserver)\n\n        // Trigger refresh after deleting a match\n        deleteAction.values\n            .filter { $0 }\n            .map { _ in () }\n            .observe(refreshObserver)\n\n        SignalProducer(signal: refreshSignal)\n            .on(next: { _ in isLoading.value = true })\n            .flatMap(.Latest) { _ in\n                return store.fetchMatches()\n                    .flatMapError { error in\n                        alertMessageObserver.sendNext(error.localizedDescription)\n                        return SignalProducer(value: [])\n                    }\n            }\n            .on(next: { _ in isLoading.value = false })\n            .combinePrevious([]) // Preserve history to calculate changeset\n            .startWithNext({ [weak self] (oldMatches, newMatches) in\n                self?.matches = newMatches\n                if let observer = self?.contentChangesObserver {\n                    let changeset = Changeset(\n                        oldItems: oldMatches,\n                        newItems: newMatches,\n                        contentMatches: Match.contentMatches\n                    )\n                    observer.sendNext(changeset)\n                }\n            })\n\n        // Feed deletion errors into alert message signal\n        deleteAction.errors\n            .map { $0.localizedDescription }\n            .observe(alertMessageObserver)\n    }\n\n    // MARK: - Data Source\n\n    func numberOfSections() -> Int {\n        return 1\n    }\n\n    func numberOfMatchesInSection(section: Int) -> Int {\n        return matches.count\n    }\n\n    func homePlayersAtIndexPath(indexPath: NSIndexPath) -> String {\n        let match = matchAtIndexPath(indexPath)\n        return separatedNamesForPlayers(match.homePlayers)\n    }\n\n    func awayPlayersAtIndexPath(indexPath: NSIndexPath) -> String {\n        let match = matchAtIndexPath(indexPath)\n        return separatedNamesForPlayers(match.awayPlayers)\n    }\n\n    func resultAtIndexPath(indexPath: NSIndexPath) -> String {\n        let match = matchAtIndexPath(indexPath)\n        return \"\\(match.homeGoals) : \\(match.awayGoals)\"\n    }\n\n    // MARK: View Models\n\n    func editViewModelForNewMatch() -> EditMatchViewModel {\n        return EditMatchViewModel(store: store)\n    }\n\n    func editViewModelForMatchAtIndexPath(indexPath: NSIndexPath) -> EditMatchViewModel {\n        let match = matchAtIndexPath(indexPath)\n        return EditMatchViewModel(store: store, match: match)\n    }\n\n    // MARK: Internal Helpers\n\n    private func matchAtIndexPath(indexPath: NSIndexPath) -> Match {\n        return matches[indexPath.row]\n    }\n\n    private func separatedNamesForPlayers(players: [Player]) -> String {\n        let playerNames = players.map { player in player.name }\n        return playerNames.joinWithSeparator(\", \")\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/ViewModels/RankingsViewModel.swift",
    "content": "//\n//  RankingsViewModel.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 23/07/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nclass RankingsViewModel {\n\n    typealias RankingChangeset = Changeset<Ranking>\n\n    // Inputs\n    let active = MutableProperty(false)\n    let refreshObserver: Observer<Void, NoError>\n\n    // Outputs\n    let title: String\n    let contentChangesSignal: Signal<RankingChangeset, NoError>\n    let isLoading: MutableProperty<Bool>\n    let alertMessageSignal: Signal<String, NoError>\n\n    private let store: StoreType\n    private let contentChangesObserver: Observer<RankingChangeset, NoError>\n    private let alertMessageObserver: Observer<String, NoError>\n\n    private var rankings: [Ranking]\n\n    // MARK: Lifecycle\n\n    init(store: StoreType) {\n        self.title = \"Rankings\"\n        self.store = store\n        self.rankings = []\n\n        let (refreshSignal, refreshObserver) = Signal<Void, NoError>.pipe()\n        self.refreshObserver = refreshObserver\n\n        let (contentChangesSignal, contentChangesObserver) = Signal<RankingChangeset, NoError>.pipe()\n        self.contentChangesSignal = contentChangesSignal\n        self.contentChangesObserver = contentChangesObserver\n\n        let isLoading = MutableProperty(false)\n        self.isLoading = isLoading\n\n        let (alertMessageSignal, alertMessageObserver) = Signal<String, NoError>.pipe()\n        self.alertMessageSignal = alertMessageSignal\n        self.alertMessageObserver = alertMessageObserver\n\n        active.producer\n            .filter { $0 }\n            .map { _ in () }\n            .start(refreshObserver)\n\n        SignalProducer(signal: refreshSignal)\n            .on(next: { _ in isLoading.value = true })\n            .flatMap(.Latest, transform: { _ in\n                return store.fetchRankings()\n                    .flatMapError { error in\n                        alertMessageObserver.sendNext(error.localizedDescription)\n                        return SignalProducer(value: [])\n                }\n            })\n            .on(next: { _ in isLoading.value = false })\n            .combinePrevious([]) // Preserve history to calculate changeset\n            .startWithNext({ [weak self] (oldRankings, newRankings) in\n                self?.rankings = newRankings\n                if let observer = self?.contentChangesObserver {\n                    let changeset = Changeset(\n                        oldItems: oldRankings,\n                        newItems: newRankings,\n                        contentMatches: Ranking.contentMatches\n                    )\n                    observer.sendNext(changeset)\n                }\n            })\n    }\n\n    // MARK: Data Source\n\n    func numberOfSections() -> Int {\n        return 1\n    }\n\n    func numberOfRankingsInSection(section: Int) -> Int {\n        return rankings.count\n    }\n\n    func playerNameAtIndexPath(indexPath: NSIndexPath) -> String {\n        return rankingAtIndexPath(indexPath).player.name\n    }\n\n    func ratingAtIndexPath(indexPath: NSIndexPath) -> String {\n        let rating = rankingAtIndexPath(indexPath).rating\n        return String(format: \"%.2f\", rating)\n    }\n\n    // MARK: Internal Helpers\n\n    private func rankingAtIndexPath(indexPath: NSIndexPath) -> Ranking {\n        return rankings[indexPath.row]\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/EditMatchViewController.swift",
    "content": "//\n//  EditMatchViewController.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 22/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\nimport ReactiveCocoa\nimport SnapKit\n\nclass EditMatchViewController: UIViewController {\n\n    private let viewModel: EditMatchViewModel\n\n    private weak var homeGoalsLabel: UILabel!\n    private weak var goalSeparatorLabel: UILabel!\n    private weak var awayGoalsLabel: UILabel!\n    private weak var homeGoalsStepper: UIStepper!\n    private weak var awayGoalsStepper: UIStepper!\n    private weak var homePlayersButton: UIButton!\n    private weak var awayPlayersButton: UIButton!\n\n    private var saveAction: CocoaAction\n    private let saveButtonItem: UIBarButtonItem\n\n    // MARK: Lifecycle\n\n    init(viewModel: EditMatchViewModel) {\n        self.viewModel = viewModel\n        self.saveAction = CocoaAction(viewModel.saveAction, { _ in return () })\n        self.saveButtonItem = UIBarButtonItem(\n            barButtonSystemItem: .Save,\n            target: self.saveAction,\n            action: CocoaAction.selector\n        )\n\n        super.init(nibName: nil, bundle: nil)\n\n        // Set up navigation item\n        navigationItem.leftBarButtonItem = UIBarButtonItem(\n            barButtonSystemItem: .Cancel,\n            target: self,\n            action: #selector(cancelButtonTapped)\n        )\n        navigationItem.rightBarButtonItem = self.saveButtonItem\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: View Lifecycle\n\n    override func loadView() {\n        let view = UIView()\n\n        view.backgroundColor = UIColor.whiteColor()\n\n        let labelFont = UIFont(name: \"OpenSans-Semibold\", size: 70)\n\n        let homeGoalsLabel = UILabel()\n        homeGoalsLabel.font = labelFont\n        view.addSubview(homeGoalsLabel)\n        self.homeGoalsLabel = homeGoalsLabel\n\n        let goalSeparatorLabel = UILabel()\n        goalSeparatorLabel.font = labelFont\n        goalSeparatorLabel.text = \":\"\n        view.addSubview(goalSeparatorLabel)\n        self.goalSeparatorLabel = goalSeparatorLabel\n\n        let awayGoalsLabel = UILabel()\n        awayGoalsLabel.font = labelFont\n        view.addSubview(awayGoalsLabel)\n        self.awayGoalsLabel = awayGoalsLabel\n\n        let homeGoalsStepper = UIStepper()\n        view.addSubview(homeGoalsStepper)\n        self.homeGoalsStepper = homeGoalsStepper\n\n        let awayGoalsStepper = UIStepper()\n        view.addSubview(awayGoalsStepper)\n        self.awayGoalsStepper = awayGoalsStepper\n\n        let homePlayersButton = UIButton(type: .System)\n        homePlayersButton.titleLabel?.font = UIFont(name: \"OpenSans\", size: 15)\n        homePlayersButton.addTarget(self,\n            action: #selector(homePlayersButtonTapped),\n            forControlEvents: .TouchUpInside\n        )\n        view.addSubview(homePlayersButton)\n        self.homePlayersButton = homePlayersButton\n\n        let awayPlayersButton = UIButton(type: .System)\n        awayPlayersButton.titleLabel?.font = UIFont(name: \"OpenSans\", size: 15)\n        awayPlayersButton.addTarget(self,\n            action: #selector(awayPlayersButtonTapped),\n            forControlEvents: .TouchUpInside\n        )\n        view.addSubview(awayPlayersButton)\n        self.awayPlayersButton = awayPlayersButton\n\n        self.view = view\n    }\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        bindViewModel()\n        makeConstraints()\n    }\n\n    // MARK: Bindings\n\n    private func bindViewModel() {\n        self.title = viewModel.title\n\n        // Initial values\n        homeGoalsStepper.value = Double(viewModel.homeGoals.value)\n        awayGoalsStepper.value = Double(viewModel.awayGoals.value)\n\n        viewModel.homeGoals <~ homeGoalsStepper.signalProducer()\n        viewModel.awayGoals <~ awayGoalsStepper.signalProducer()\n\n        viewModel.formattedHomeGoals.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] formattedHomeGoals in\n                self?.homeGoalsLabel.text = formattedHomeGoals\n            })\n\n        viewModel.formattedAwayGoals.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] formattedAwayGoals in\n                self?.awayGoalsLabel.text = formattedAwayGoals\n            })\n\n        viewModel.homePlayersString.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] homePlayersString in\n                self?.homePlayersButton.setTitle(homePlayersString, forState: .Normal)\n            })\n\n        viewModel.awayPlayersString.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] awayPlayersString in\n                self?.awayPlayersButton.setTitle(awayPlayersString, forState: .Normal)\n            })\n\n        viewModel.inputIsValid.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] inputIsValid in\n                self?.saveButtonItem.enabled = inputIsValid\n            })\n\n        viewModel.saveAction.events.observeNext({ [weak self] event in\n            switch event {\n            case let .Next(success):\n                if success {\n                    self?.dismissViewControllerAnimated(true, completion: nil)\n                } else {\n                    self?.presentErrorMessage(\"The match could not be saved.\")\n                }\n            case let .Failed(error):\n                self?.presentErrorMessage(error.localizedDescription)\n            default:\n                return\n            }\n        })\n    }\n\n    // MARK: Layout\n\n    private func makeConstraints() {\n        let superview = self.view\n\n        homeGoalsLabel.snp_makeConstraints { make in\n            make.trailing.equalTo(goalSeparatorLabel.snp_leading).offset(-10)\n            make.baseline.equalTo(goalSeparatorLabel.snp_baseline)\n        }\n\n        goalSeparatorLabel.snp_makeConstraints { make in\n            make.centerX.equalTo(superview.snp_centerX)\n            make.centerY.equalTo(superview.snp_centerY).offset(-50)\n        }\n\n        awayGoalsLabel.snp_makeConstraints { make in\n            make.leading.equalTo(goalSeparatorLabel.snp_trailing).offset(10)\n            make.baseline.equalTo(goalSeparatorLabel.snp_baseline)\n        }\n\n        homeGoalsStepper.snp_makeConstraints { make in\n            make.top.equalTo(goalSeparatorLabel.snp_bottom).offset(10)\n            make.trailing.equalTo(homeGoalsLabel.snp_trailing)\n        }\n\n        awayGoalsStepper.snp_makeConstraints { make in\n            make.top.equalTo(goalSeparatorLabel.snp_bottom).offset(10)\n            make.leading.equalTo(awayGoalsLabel.snp_leading)\n        }\n\n        homePlayersButton.snp_makeConstraints { make in\n            make.top.equalTo(homeGoalsStepper.snp_bottom).offset(30)\n            make.leading.greaterThanOrEqualTo(superview.snp_leadingMargin)\n            make.trailing.equalTo(homeGoalsLabel.snp_trailing)\n        }\n\n        awayPlayersButton.snp_makeConstraints { make in\n            make.top.equalTo(awayGoalsStepper.snp_bottom).offset(30)\n            make.leading.equalTo(awayGoalsLabel.snp_leading)\n            make.trailing.lessThanOrEqualTo(superview.snp_trailingMargin)\n        }\n    }\n\n    // MARK: User Interaction\n\n    func cancelButtonTapped() {\n        dismissViewControllerAnimated(true, completion: nil)\n    }\n\n    func homePlayersButtonTapped() {\n        let homePlayersViewModel = viewModel.manageHomePlayersViewModel()\n        let homePlayersViewController = ManagePlayersViewController(viewModel: homePlayersViewModel)\n        self.navigationController?.pushViewController(homePlayersViewController, animated: true)\n    }\n\n    func awayPlayersButtonTapped() {\n        let awayPlayersViewModel = viewModel.manageAwayPlayersViewModel()\n        let awayPlayersViewController = ManagePlayersViewController(viewModel: awayPlayersViewModel)\n        self.navigationController?.pushViewController(awayPlayersViewController, animated: true)\n    }\n\n    // MARK: Private Helpers\n\n    func presentErrorMessage(message: String) {\n        let alertController = UIAlertController(\n            title: \"Oops!\",\n            message: message,\n            preferredStyle: .Alert\n        )\n        let cancelAction = UIAlertAction(title: \"OK\", style: .Cancel, handler: nil)\n        alertController.addAction(cancelAction)\n\n        self.presentViewController(alertController, animated: true, completion: nil)\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/ManagePlayersViewController.swift",
    "content": "//\n//  ManagePlayersViewController.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 30/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nclass ManagePlayersViewController: UITableViewController {\n\n    private let playerCellIdentifier = \"PlayerCell\"\n    private let viewModel: ManagePlayersViewModel\n\n    // MARK: Lifecycle\n\n    init(viewModel: ManagePlayersViewModel) {\n        self.viewModel = viewModel\n        super.init(nibName: nil, bundle: nil)\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: View Lifecycle\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        tableView.rowHeight = 60\n        tableView.tableFooterView = UIView() // Prevent empty rows at bottom\n\n        tableView.registerClass(PlayerCell.self, forCellReuseIdentifier: playerCellIdentifier)\n\n        self.refreshControl = UIRefreshControl()\n        self.refreshControl?.addTarget(self,\n            action: #selector(refreshControlTriggered),\n            forControlEvents: .ValueChanged\n        )\n\n        self.navigationItem.rightBarButtonItem = UIBarButtonItem(\n            barButtonSystemItem: .Add,\n            target: self,\n            action: #selector(addPlayerButtonTapped)\n        )\n\n        bindViewModel()\n    }\n\n    // MARK: Bindings\n\n    private func bindViewModel() {\n        self.title = viewModel.title\n\n        viewModel.active <~ isActive()\n        \n        viewModel.contentChangesSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] changeset in\n                guard let tableView = self?.tableView else { return }\n\n                tableView.beginUpdates()\n                tableView.deleteRowsAtIndexPaths(changeset.deletions, withRowAnimation: .Automatic)\n                tableView.reloadRowsAtIndexPaths(changeset.modifications, withRowAnimation: .Automatic)\n                tableView.insertRowsAtIndexPaths(changeset.insertions, withRowAnimation: .Automatic)\n                tableView.endUpdates()\n            })\n\n        viewModel.isLoading.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] isLoading in\n                if !isLoading {\n                    self?.refreshControl?.endRefreshing()\n                }\n            })\n\n        viewModel.alertMessageSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] alertMessage in\n                let alertController = UIAlertController(\n                    title: \"Oops!\",\n                    message: alertMessage,\n                    preferredStyle: .Alert\n                )\n                alertController.addAction(UIAlertAction(title: \"OK\", style: .Cancel, handler: nil))\n                self?.presentViewController(alertController, animated: true, completion: nil)\n            })\n    }\n\n    // MARK: User Interaction\n\n    func addPlayerButtonTapped() {\n        let newPlayerViewController = self.newPlayerViewController()\n        presentViewController(newPlayerViewController, animated: true, completion: nil)\n    }\n\n    func refreshControlTriggered() {\n        viewModel.refreshObserver.sendNext(())\n    }\n\n    // MARK: UITableViewDataSource\n\n    override func numberOfSectionsInTableView(tableView: UITableView) -> Int {\n        return viewModel.numberOfSections()\n    }\n\n    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\n        return viewModel.numberOfPlayersInSection(section)\n    }\n\n    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {\n        let cell = tableView.dequeueReusableCellWithIdentifier(playerCellIdentifier, forIndexPath: indexPath) as! PlayerCell\n\n        cell.nameLabel.enabled = viewModel.canSelectPlayerAtIndexPath(indexPath)\n        cell.nameLabel.text = viewModel.playerNameAtIndexPath(indexPath)\n        cell.accessoryType = viewModel.isPlayerSelectedAtIndexPath(indexPath) ? .Checkmark : .None\n\n        return cell\n    }\n\n    // MARK: UITableViewDelegate\n\n    override func tableView(tableView: UITableView, willSelectRowAtIndexPath indexPath: NSIndexPath) -> NSIndexPath? {\n        return viewModel.canSelectPlayerAtIndexPath(indexPath) ? indexPath : nil\n    }\n\n    override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {\n        tableView.deselectRowAtIndexPath(indexPath, animated: true)\n\n        let cell = tableView.cellForRowAtIndexPath(indexPath)\n\n        if viewModel.isPlayerSelectedAtIndexPath(indexPath) {\n            viewModel.deselectPlayerAtIndexPath(indexPath)\n            cell?.accessoryType = .None\n        } else {\n            viewModel.selectPlayerAtIndexPath(indexPath)\n            cell?.accessoryType = .Checkmark\n        }\n    }\n\n    // MARK: Private Helpers\n\n    private func newPlayerViewController() -> UIViewController {\n        let newPlayerViewController = UIAlertController(\n            title: \"New Player\",\n            message: nil,\n            preferredStyle: .Alert\n        )\n\n        // Add user actions\n        newPlayerViewController.addAction(UIAlertAction(title: \"Cancel\", style: .Cancel, handler: nil))\n        let saveAction = UIAlertAction(title: \"Save\", style: .Default, handler: { [weak self] _ in\n            self?.viewModel.saveAction.apply().start()\n        })\n        newPlayerViewController.addAction(saveAction)\n\n        // Allow saving only with valid input\n        viewModel.inputIsValid.producer.startWithNext({ isValid in\n            saveAction.enabled = isValid\n        })\n\n        // Add user input fields\n        newPlayerViewController.addTextFieldWithConfigurationHandler { textField in\n            textField.placeholder = \"Player name\"\n        }\n\n        // Forward text input to view model\n        if let nameField = newPlayerViewController.textFields?.first {\n            viewModel.playerName <~ nameField.signalProducer()\n        }\n\n        return newPlayerViewController\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/MatchCell.swift",
    "content": "//\n//  MatchCell.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 08/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\nimport SnapKit\n\nclass MatchCell: UITableViewCell {\n\n    let homePlayersLabel: UILabel\n    let resultLabel: UILabel\n    let awayPlayersLabel: UILabel\n\n    // MARK: Lifecycle\n\n    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {\n        homePlayersLabel = UILabel()\n        homePlayersLabel.font = UIFont(name: \"OpenSans\", size: 20)\n        homePlayersLabel.textAlignment = .Left\n\n        resultLabel = UILabel()\n        resultLabel.font = UIFont(name: \"OpenSans-Semibold\", size: 20)\n        resultLabel.textAlignment = .Center\n\n        awayPlayersLabel = UILabel()\n        awayPlayersLabel.font = UIFont(name: \"OpenSans\", size: 20)\n        awayPlayersLabel.textAlignment = .Right\n\n        super.init(style: style, reuseIdentifier: reuseIdentifier)\n\n        self.contentView.addSubview(homePlayersLabel)\n        self.contentView.addSubview(resultLabel)\n        self.contentView.addSubview(awayPlayersLabel)\n\n        makeConstraints()\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: Layout\n\n    private func makeConstraints() {\n        let superview = self.contentView\n\n        homePlayersLabel.snp_makeConstraints { make in\n            make.leading.equalTo(superview.snp_leadingMargin)\n            make.trailing.equalTo(resultLabel.snp_leading).offset(-10)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n\n        resultLabel.snp_makeConstraints { make in\n            make.centerX.equalTo(superview.snp_centerX)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n\n        awayPlayersLabel.snp_makeConstraints { make in\n            make.leading.equalTo(resultLabel.snp_trailing).offset(10)\n            make.trailing.equalTo(superview.snp_trailingMargin)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/MatchesViewController.swift",
    "content": "//\n//  MatchesViewController.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 10/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport DZNEmptyDataSet\nimport ReactiveCocoa\nimport Result\n\nclass MatchesViewController: UITableViewController, DZNEmptyDataSetDelegate, DZNEmptyDataSetSource {\n\n    private let matchCellIdentifier = \"MatchCell\"\n    private let viewModel: MatchesViewModel\n\n    // MARK: - Lifecycle\n\n    init(viewModel: MatchesViewModel) {\n        self.viewModel = viewModel\n        super.init(nibName: nil, bundle: nil)\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"NSCoding is not supported\")\n    }\n\n    // MARK: - View Lifecycle\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        tableView.allowsSelection = false\n        tableView.allowsSelectionDuringEditing = true\n        tableView.rowHeight = 60\n        tableView.tableFooterView = UIView() // Prevent empty rows at bottom\n\n        tableView.emptyDataSetDelegate = self\n        tableView.emptyDataSetSource = self\n\n        self.refreshControl = UIRefreshControl()\n        self.refreshControl?.addTarget(self,\n            action: #selector(refreshControlTriggered),\n            forControlEvents: .ValueChanged\n        )\n\n        tableView.registerClass(MatchCell.self, forCellReuseIdentifier: matchCellIdentifier)\n\n        self.navigationItem.leftBarButtonItem = self.editButtonItem()\n\n        self.navigationItem.rightBarButtonItem = UIBarButtonItem(\n            barButtonSystemItem: .Add,\n            target: self,\n            action: #selector(addMatchButtonTapped)\n        )\n\n        bindViewModel()\n    }\n\n    // MARK: - Bindings\n\n    private func bindViewModel() {\n        self.title = viewModel.title\n\n        viewModel.active <~ isActive()\n\n        viewModel.contentChangesSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] changeset in\n                guard let tableView = self?.tableView else { return }\n\n                tableView.beginUpdates()\n                tableView.deleteRowsAtIndexPaths(changeset.deletions, withRowAnimation: .Automatic)\n                tableView.reloadRowsAtIndexPaths(changeset.modifications, withRowAnimation: .Automatic)\n                tableView.insertRowsAtIndexPaths(changeset.insertions, withRowAnimation: .Automatic)\n                tableView.endUpdates()\n            })\n\n        viewModel.isLoading.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] isLoading in\n                if !isLoading {\n                    self?.refreshControl?.endRefreshing()\n                }\n            })\n\n        viewModel.alertMessageSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] alertMessage in\n                let alertController = UIAlertController(\n                    title: \"Oops!\",\n                    message: alertMessage,\n                    preferredStyle: .Alert\n                )\n                alertController.addAction(UIAlertAction(title: \"OK\", style: .Cancel, handler: nil))\n                self?.presentViewController(alertController, animated: true, completion: nil)\n            })\n    }\n\n    // MARK: User Interaction\n\n    func addMatchButtonTapped() {\n        let newMatchViewModel = viewModel.editViewModelForNewMatch()\n        let newMatchViewController = EditMatchViewController(viewModel: newMatchViewModel)\n        let newMatchNavigationController = UINavigationController(rootViewController: newMatchViewController)\n        self.presentViewController(newMatchNavigationController, animated: true, completion: nil)\n    }\n\n    func refreshControlTriggered() {\n        viewModel.refreshObserver.sendNext(())\n    }\n\n    // MARK: DZNEmptyDataSetDelegate\n\n    func emptyDataSetDidTapButton(scrollView: UIScrollView!) {\n        if let settingsURL = NSURL(string: UIApplicationOpenSettingsURLString) {\n            UIApplication.sharedApplication().openURL(settingsURL)\n        }\n    }\n\n    // MARK: DZNEmptyDataSetSource\n\n    func titleForEmptyDataSet(scrollView: UIScrollView!) -> NSAttributedString! {\n        let text = \"No matches yet!\"\n        let attributes = [\n            NSFontAttributeName: UIFont(name: \"OpenSans-Semibold\", size: 30)!\n        ]\n        return NSAttributedString(string: text, attributes: attributes)\n    }\n\n    func descriptionForEmptyDataSet(scrollView: UIScrollView!) -> NSAttributedString! {\n        let text = \"Check your storage settings, then tap the “+” button to get started.\"\n        let attributes = [\n            NSFontAttributeName: UIFont(name: \"OpenSans\", size: 20)!,\n            NSForegroundColorAttributeName: UIColor.lightGrayColor()\n        ]\n        return NSAttributedString(string: text, attributes: attributes)\n    }\n\n    func buttonTitleForEmptyDataSet(scrollView: UIScrollView!, forState state: UIControlState) -> NSAttributedString! {\n        let text = \"Open App Settings\"\n        let attributes = [\n            NSFontAttributeName: UIFont(name: \"OpenSans\", size: 20)!,\n            NSForegroundColorAttributeName: (state == .Normal\n                ? Color.primaryColor\n                : Color.lighterPrimaryColor)\n        ]\n        return NSAttributedString(string: text, attributes: attributes)\n    }\n\n    // MARK: - UITableViewDataSource\n\n    override func numberOfSectionsInTableView(tableView: UITableView) -> Int {\n        return viewModel.numberOfSections()\n    }\n\n    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\n        return viewModel.numberOfMatchesInSection(section)\n    }\n\n    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {\n        let cell = tableView.dequeueReusableCellWithIdentifier(matchCellIdentifier, forIndexPath: indexPath) as! MatchCell\n\n        cell.homePlayersLabel.text = viewModel.homePlayersAtIndexPath(indexPath)\n        cell.resultLabel.text = viewModel.resultAtIndexPath(indexPath)\n        cell.awayPlayersLabel.text = viewModel.awayPlayersAtIndexPath(indexPath)\n\n        return cell\n    }\n\n    override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {\n        if editingStyle == .Delete {\n            viewModel.deleteAction.apply(indexPath).start()\n        }\n    }\n\n    // MARK: UITableViewDelegate\n\n    override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {\n        tableView.deselectRowAtIndexPath(indexPath, animated: true)\n\n        let editMatchViewModel = viewModel.editViewModelForMatchAtIndexPath(indexPath)\n        let editMatchViewController = EditMatchViewController(viewModel: editMatchViewModel)\n        let editMatchNavigationController = UINavigationController(rootViewController: editMatchViewController)\n        self.presentViewController(editMatchNavigationController, animated: true, completion: nil)\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/PlayerCell.swift",
    "content": "//\n//  PlayerCell.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 30/06/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\n\nclass PlayerCell: UITableViewCell {\n\n    let nameLabel: UILabel\n\n    // MARK: Lifecycle\n\n    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {\n        nameLabel = UILabel()\n        nameLabel.font = UIFont(name: \"OpenSans\", size: 19)\n\n        super.init(style: style, reuseIdentifier: reuseIdentifier)\n\n        contentView.addSubview(nameLabel)\n\n        makeConstraints()\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: Layout\n\n    private func makeConstraints() {\n        let superview = self.contentView\n\n        nameLabel.snp_makeConstraints { make in\n            make.leading.equalTo(superview.snp_leadingMargin)\n            make.trailing.equalTo(superview.snp_trailingMargin)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/RankingCell.swift",
    "content": "//\n//  RankingCell.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 23/07/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport UIKit\n\nclass RankingCell: UITableViewCell {\n\n    let playerNameLabel: UILabel\n    let ratingLabel: UILabel\n\n    // MARK: Lifecycle\n\n    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {\n        playerNameLabel = UILabel()\n        playerNameLabel.font = UIFont(name: \"OpenSans\", size: 19)\n\n        ratingLabel = UILabel()\n        ratingLabel.font = UIFont(name: \"OpenSans\", size: 19)\n\n        super.init(style: style, reuseIdentifier: reuseIdentifier)\n\n        contentView.addSubview(playerNameLabel)\n        contentView.addSubview(ratingLabel)\n\n        makeConstraints()\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: Layout\n\n    private func makeConstraints() {\n        let superview = self.contentView\n\n        playerNameLabel.snp_makeConstraints { make in\n            make.leading.equalTo(superview.snp_leadingMargin)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n\n        ratingLabel.snp_makeConstraints { make in\n            make.leading.equalTo(playerNameLabel.snp_trailingMargin)\n            make.trailing.equalTo(superview.snp_trailingMargin)\n            make.centerY.equalTo(superview.snp_centerY)\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoal/Views/RankingsViewController.swift",
    "content": "//\n//  RankingsViewController.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 23/07/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\nimport Result\n\nclass RankingsViewController: UITableViewController {\n\n    private let rankingCellIdentifier = \"RankingCell\"\n    private let viewModel: RankingsViewModel\n\n    // MARK: Lifecycle\n\n    init(viewModel: RankingsViewModel) {\n        self.viewModel = viewModel\n        super.init(nibName: nil, bundle: nil)\n    }\n\n    required init?(coder aDecoder: NSCoder) {\n        fatalError(\"init(coder:) has not been implemented\")\n    }\n\n    // MARK: View Lifecycle\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n\n        tableView.allowsSelection = false\n        tableView.rowHeight = 60\n        tableView.tableFooterView = UIView() // Prevent empty rows at bottom\n\n        tableView.registerClass(RankingCell.self, forCellReuseIdentifier: rankingCellIdentifier)\n\n        self.refreshControl = UIRefreshControl()\n        self.refreshControl?.addTarget(self,\n            action: #selector(refreshControlTriggered),\n            forControlEvents: .ValueChanged\n        )\n\n        bindViewModel()\n    }\n\n    // MARK: Bindings\n\n    private func bindViewModel() {\n        self.title = viewModel.title\n\n        viewModel.active <~ isActive()\n\n        viewModel.contentChangesSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] changeset in\n                guard let tableView = self?.tableView else { return }\n\n                tableView.beginUpdates()\n                tableView.deleteRowsAtIndexPaths(changeset.deletions, withRowAnimation: .Automatic)\n                tableView.reloadRowsAtIndexPaths(changeset.modifications, withRowAnimation: .Automatic)\n                tableView.insertRowsAtIndexPaths(changeset.insertions, withRowAnimation: .Automatic)\n                tableView.endUpdates()\n            })\n\n        viewModel.isLoading.producer\n            .observeOn(UIScheduler())\n            .startWithNext({ [weak self] isLoading in\n                if !isLoading {\n                    self?.refreshControl?.endRefreshing()\n                }\n            })\n\n        viewModel.alertMessageSignal\n            .observeOn(UIScheduler())\n            .observeNext({ [weak self] alertMessage in\n                let alertController = UIAlertController(\n                    title: \"Oops!\",\n                    message: alertMessage,\n                    preferredStyle: .Alert\n                )\n                alertController.addAction(UIAlertAction(title: \"OK\", style: .Cancel, handler: nil))\n                self?.presentViewController(alertController, animated: true, completion: nil)\n            })\n    }\n\n    // MARK: User Interaction\n\n    func refreshControlTriggered() {\n        viewModel.refreshObserver.sendNext(())\n    }\n\n    // MARK: UITableViewDataSource\n\n    override func numberOfSectionsInTableView(tableView: UITableView) -> Int {\n        return viewModel.numberOfSections()\n    }\n\n    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\n        return viewModel.numberOfRankingsInSection(section)\n    }\n\n    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {\n        let cell = tableView.dequeueReusableCellWithIdentifier(rankingCellIdentifier, forIndexPath: indexPath) as! RankingCell\n\n        cell.playerNameLabel.text = viewModel.playerNameAtIndexPath(indexPath)\n        cell.ratingLabel.text = viewModel.ratingAtIndexPath(indexPath)\n\n        return cell\n    }\n}\n"
  },
  {
    "path": "SwiftGoal.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t0F2EF8281B24FBF800BABC20 /* MatchCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F2EF8271B24FBF800BABC20 /* MatchCell.swift */; };\n\t\t0F2EF82A1B24FE9400BABC20 /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F2EF8291B24FE9400BABC20 /* SnapKit.framework */; };\n\t\t0F2EF82C1B25000600BABC20 /* OpenSans-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 0F2EF82B1B25000600BABC20 /* OpenSans-Regular.ttf */; };\n\t\t0F3289EE1B1CF8340068DF12 /* Changeset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F3289ED1B1CF8340068DF12 /* Changeset.swift */; };\n\t\t0F691B3E1B1D19DC00FD5AC1 /* Player.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F691B3D1B1D19DC00FD5AC1 /* Player.swift */; };\n\t\t0F74F6F01B0002C400F963E0 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F74F6EF1B0002C400F963E0 /* AppDelegate.swift */; };\n\t\t0F74F6F71B0002C400F963E0 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 0F74F6F61B0002C400F963E0 /* Images.xcassets */; };\n\t\t0F74F6FA1B0002C400F963E0 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0F74F6F81B0002C400F963E0 /* LaunchScreen.xib */; };\n\t\t0F74F7061B0002C400F963E0 /* ChangesetSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F74F7051B0002C400F963E0 /* ChangesetSpec.swift */; };\n\t\t0F74F7121B00053D00F963E0 /* MatchesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F74F7111B00053D00F963E0 /* MatchesViewController.swift */; };\n\t\t0F74F7141B00058D00F963E0 /* MatchesViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F74F7131B00058D00F963E0 /* MatchesViewModel.swift */; };\n\t\t0F74F7171B0009B300F963E0 /* RemoteStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F74F7161B0009B300F963E0 /* RemoteStore.swift */; };\n\t\t0F79DAEA1BCDBB170073988A /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F79DAE81BCDBB170073988A /* Nimble.framework */; };\n\t\t0F79DAEB1BCDBB170073988A /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F79DAE91BCDBB170073988A /* Quick.framework */; };\n\t\t0F79DAEC1BCDBB250073988A /* Nimble.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 0F79DAE81BCDBB170073988A /* Nimble.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t0F79DAED1BCDBB250073988A /* Quick.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 0F79DAE91BCDBB170073988A /* Quick.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };\n\t\t0F89040C1BF8B2B4007135C9 /* MatchSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F89040B1BF8B2B4007135C9 /* MatchSpec.swift */; };\n\t\t0F89040E1BF8B907007135C9 /* PlayerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F89040D1BF8B907007135C9 /* PlayerSpec.swift */; };\n\t\t0F8904101BF8BACF007135C9 /* RankingSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F89040F1BF8BACF007135C9 /* RankingSpec.swift */; };\n\t\t0F98C4F51B658B8B00C39E4C /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 0F98C4F41B658B8B00C39E4C /* Settings.bundle */; };\n\t\t0F9D10B31B614099002B9A20 /* RankingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F9D10B21B614099002B9A20 /* RankingsViewController.swift */; };\n\t\t0F9D10B51B6140FC002B9A20 /* RankingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F9D10B41B6140FC002B9A20 /* RankingsViewModel.swift */; };\n\t\t0F9D10B71B614B71002B9A20 /* RankingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F9D10B61B614B71002B9A20 /* RankingCell.swift */; };\n\t\t0F9D10B91B625124002B9A20 /* Ranking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F9D10B81B625124002B9A20 /* Ranking.swift */; };\n\t\t0FA80BDE1B013F33000531E3 /* ReactiveCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FA80BDB1B013F33000531E3 /* ReactiveCocoa.framework */; };\n\t\t0FA80BDF1B013F33000531E3 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FA80BDC1B013F33000531E3 /* Result.framework */; };\n\t\t0FA80BE41B014001000531E3 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FA80BE31B014001000531E3 /* Match.swift */; };\n\t\t0FB81C491B72C44A00432698 /* MatchesViewModelSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FB81C481B72C44A00432698 /* MatchesViewModelSpec.swift */; };\n\t\t0FB81C4C1B72CAFE00432698 /* MockStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FB81C4B1B72CAFE00432698 /* MockStore.swift */; };\n\t\t0FE2A7481B66CE17001F5C5B /* DZNEmptyDataSet.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FE2A7461B66CD06001F5C5B /* DZNEmptyDataSet.framework */; };\n\t\t0FE2A74A1B66E139001F5C5B /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FE2A7491B66E139001F5C5B /* Color.swift */; };\n\t\t0FE4EB731B38760B007F9349 /* EditMatchViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FE4EB721B38760B007F9349 /* EditMatchViewModel.swift */; };\n\t\t0FE4EB751B3876C2007F9349 /* EditMatchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FE4EB741B3876C2007F9349 /* EditMatchViewController.swift */; };\n\t\t0FE96BEA1B24D77700506E60 /* Argo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FE96BE81B24D77700506E60 /* Argo.framework */; };\n\t\t0FE96BEE1B24F0EB00506E60 /* OpenSans-Semibold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 0FE96BED1B24F0B700506E60 /* OpenSans-Semibold.ttf */; };\n\t\t0FF57F341B431E17001DD570 /* ManagePlayersViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FF57F331B431E17001DD570 /* ManagePlayersViewController.swift */; };\n\t\t0FF57F361B431E41001DD570 /* ManagePlayersViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FF57F351B431E41001DD570 /* ManagePlayersViewModel.swift */; };\n\t\t0FF57F381B433EFD001DD570 /* PlayerCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FF57F371B433EFD001DD570 /* PlayerCell.swift */; };\n\t\t0FF7B8B81B3A0CB300808433 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FF7B8B71B3A0CB300808433 /* Extensions.swift */; };\n\t\t0FFA97041B76C9D900DD4F58 /* EditMatchViewModelSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FFA97031B76C9D900DD4F58 /* EditMatchViewModelSpec.swift */; };\n\t\t5B459DFA1C3A4C8A00B37AD2 /* RankingsViewModelSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B459DF91C3A4C8A00B37AD2 /* RankingsViewModelSpec.swift */; };\n\t\t5B459DFC1C3A551000B37AD2 /* ManagePlayersViewModelSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B459DFB1C3A551000B37AD2 /* ManagePlayersViewModelSpec.swift */; };\n\t\t5BB3F7921CAC61C700985038 /* Curry.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5BB3F7911CAC61C700985038 /* Curry.framework */; };\n\t\t5BF62C941C3819E5006E97C6 /* RankingEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF62C931C3819E5006E97C6 /* RankingEngine.swift */; };\n\t\t5BF62C971C381AA8006E97C6 /* RankingEngineSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF62C961C381AA8006E97C6 /* RankingEngineSpec.swift */; };\n\t\t5BFD9FA01C340B1C00FDEBC6 /* StoreType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BFD9F9F1C340B1C00FDEBC6 /* StoreType.swift */; };\n\t\t5BFD9FA21C35AFC700FDEBC6 /* LocalStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BFD9FA11C35AFC700FDEBC6 /* LocalStore.swift */; };\n\t\t5BFD9FA41C36CF9E00FDEBC6 /* Encodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BFD9FA31C36CF9E00FDEBC6 /* Encodable.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t0F74F7001B0002C400F963E0 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 0F74F6E21B0002C400F963E0 /* Project object */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 0F74F6E91B0002C400F963E0;\n\t\t\tremoteInfo = SwiftGoal;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\t0FD2EED61BCDB15000D4F80E /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t\t0F79DAEC1BCDBB250073988A /* Nimble.framework in CopyFiles */,\n\t\t\t\t0F79DAED1BCDBB250073988A /* Quick.framework in CopyFiles */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\t0F2EF8271B24FBF800BABC20 /* MatchCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchCell.swift; sourceTree = \"<group>\"; };\n\t\t0F2EF8291B24FE9400BABC20 /* SnapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SnapKit.framework; path = Carthage/Build/iOS/SnapKit.framework; sourceTree = \"<group>\"; };\n\t\t0F2EF82B1B25000600BABC20 /* OpenSans-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = \"OpenSans-Regular.ttf\"; sourceTree = \"<group>\"; };\n\t\t0F3289ED1B1CF8340068DF12 /* Changeset.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Changeset.swift; sourceTree = \"<group>\"; };\n\t\t0F691B3D1B1D19DC00FD5AC1 /* Player.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Player.swift; sourceTree = \"<group>\"; };\n\t\t0F74F6EA1B0002C400F963E0 /* SwiftGoal.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SwiftGoal.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t0F74F6EE1B0002C400F963E0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t0F74F6EF1B0002C400F963E0 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = \"<group>\"; };\n\t\t0F74F6F61B0002C400F963E0 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = \"<group>\"; };\n\t\t0F74F6F91B0002C400F963E0 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = \"<group>\"; };\n\t\t0F74F6FF1B0002C400F963E0 /* SwiftGoalTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftGoalTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t0F74F7041B0002C400F963E0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t0F74F7051B0002C400F963E0 /* ChangesetSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChangesetSpec.swift; sourceTree = \"<group>\"; };\n\t\t0F74F7111B00053D00F963E0 /* MatchesViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchesViewController.swift; sourceTree = \"<group>\"; };\n\t\t0F74F7131B00058D00F963E0 /* MatchesViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchesViewModel.swift; sourceTree = \"<group>\"; };\n\t\t0F74F7161B0009B300F963E0 /* RemoteStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteStore.swift; sourceTree = \"<group>\"; };\n\t\t0F79DAE81BCDBB170073988A /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = Carthage/Build/iOS/Nimble.framework; sourceTree = \"<group>\"; };\n\t\t0F79DAE91BCDBB170073988A /* Quick.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quick.framework; path = Carthage/Build/iOS/Quick.framework; sourceTree = \"<group>\"; };\n\t\t0F89040B1BF8B2B4007135C9 /* MatchSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchSpec.swift; sourceTree = \"<group>\"; };\n\t\t0F89040D1BF8B907007135C9 /* PlayerSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PlayerSpec.swift; sourceTree = \"<group>\"; };\n\t\t0F89040F1BF8BACF007135C9 /* RankingSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingSpec.swift; sourceTree = \"<group>\"; };\n\t\t0F98C4F41B658B8B00C39E4C /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.plug-in\"; path = Settings.bundle; sourceTree = \"<group>\"; };\n\t\t0F9D10B21B614099002B9A20 /* RankingsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingsViewController.swift; sourceTree = \"<group>\"; };\n\t\t0F9D10B41B6140FC002B9A20 /* RankingsViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingsViewModel.swift; sourceTree = \"<group>\"; };\n\t\t0F9D10B61B614B71002B9A20 /* RankingCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingCell.swift; sourceTree = \"<group>\"; };\n\t\t0F9D10B81B625124002B9A20 /* Ranking.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Ranking.swift; sourceTree = \"<group>\"; };\n\t\t0FA80BDB1B013F33000531E3 /* ReactiveCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ReactiveCocoa.framework; path = Carthage/Build/iOS/ReactiveCocoa.framework; sourceTree = \"<group>\"; };\n\t\t0FA80BDC1B013F33000531E3 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Result.framework; path = Carthage/Build/iOS/Result.framework; sourceTree = \"<group>\"; };\n\t\t0FA80BE31B014001000531E3 /* Match.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Match.swift; sourceTree = \"<group>\"; };\n\t\t0FB81C481B72C44A00432698 /* MatchesViewModelSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatchesViewModelSpec.swift; sourceTree = \"<group>\"; };\n\t\t0FB81C4B1B72CAFE00432698 /* MockStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MockStore.swift; sourceTree = \"<group>\"; };\n\t\t0FE2A7461B66CD06001F5C5B /* DZNEmptyDataSet.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DZNEmptyDataSet.framework; path = Carthage/Build/iOS/DZNEmptyDataSet.framework; sourceTree = \"<group>\"; };\n\t\t0FE2A7491B66E139001F5C5B /* Color.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Color.swift; sourceTree = \"<group>\"; };\n\t\t0FE4EB721B38760B007F9349 /* EditMatchViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EditMatchViewModel.swift; sourceTree = \"<group>\"; };\n\t\t0FE4EB741B3876C2007F9349 /* EditMatchViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EditMatchViewController.swift; sourceTree = \"<group>\"; };\n\t\t0FE96BE81B24D77700506E60 /* Argo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Argo.framework; path = Carthage/Build/iOS/Argo.framework; sourceTree = \"<group>\"; };\n\t\t0FE96BED1B24F0B700506E60 /* OpenSans-Semibold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = \"OpenSans-Semibold.ttf\"; sourceTree = \"<group>\"; };\n\t\t0FF57F331B431E17001DD570 /* ManagePlayersViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManagePlayersViewController.swift; sourceTree = \"<group>\"; };\n\t\t0FF57F351B431E41001DD570 /* ManagePlayersViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManagePlayersViewModel.swift; sourceTree = \"<group>\"; };\n\t\t0FF57F371B433EFD001DD570 /* PlayerCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PlayerCell.swift; sourceTree = \"<group>\"; };\n\t\t0FF7B8B71B3A0CB300808433 /* Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = \"<group>\"; };\n\t\t0FFA97031B76C9D900DD4F58 /* EditMatchViewModelSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EditMatchViewModelSpec.swift; sourceTree = \"<group>\"; };\n\t\t5B459DF91C3A4C8A00B37AD2 /* RankingsViewModelSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingsViewModelSpec.swift; sourceTree = \"<group>\"; };\n\t\t5B459DFB1C3A551000B37AD2 /* ManagePlayersViewModelSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManagePlayersViewModelSpec.swift; sourceTree = \"<group>\"; };\n\t\t5BB3F7911CAC61C700985038 /* Curry.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Curry.framework; path = Carthage/Build/iOS/Curry.framework; sourceTree = \"<group>\"; };\n\t\t5BF62C931C3819E5006E97C6 /* RankingEngine.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingEngine.swift; sourceTree = \"<group>\"; };\n\t\t5BF62C961C381AA8006E97C6 /* RankingEngineSpec.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RankingEngineSpec.swift; sourceTree = \"<group>\"; };\n\t\t5BFD9F9F1C340B1C00FDEBC6 /* StoreType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StoreType.swift; sourceTree = \"<group>\"; };\n\t\t5BFD9FA11C35AFC700FDEBC6 /* LocalStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LocalStore.swift; sourceTree = \"<group>\"; };\n\t\t5BFD9FA31C36CF9E00FDEBC6 /* Encodable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Encodable.swift; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t0F74F6E71B0002C400F963E0 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t0FE96BEA1B24D77700506E60 /* Argo.framework in Frameworks */,\n\t\t\t\t5BB3F7921CAC61C700985038 /* Curry.framework in Frameworks */,\n\t\t\t\t0FE2A7481B66CE17001F5C5B /* DZNEmptyDataSet.framework in Frameworks */,\n\t\t\t\t0FA80BDE1B013F33000531E3 /* ReactiveCocoa.framework in Frameworks */,\n\t\t\t\t0FA80BDF1B013F33000531E3 /* Result.framework in Frameworks */,\n\t\t\t\t0F2EF82A1B24FE9400BABC20 /* SnapKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t0F74F6FC1B0002C400F963E0 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t0F79DAEA1BCDBB170073988A /* Nimble.framework in Frameworks */,\n\t\t\t\t0F79DAEB1BCDBB170073988A /* Quick.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t0F74F6E11B0002C400F963E0 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FA80BE01B013F3A000531E3 /* Frameworks */,\n\t\t\t\t0F74F6EC1B0002C400F963E0 /* SwiftGoal */,\n\t\t\t\t0F74F7021B0002C400F963E0 /* SwiftGoalTests */,\n\t\t\t\t0F74F6EB1B0002C400F963E0 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F6EB1B0002C400F963E0 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F74F6EA1B0002C400F963E0 /* SwiftGoal.app */,\n\t\t\t\t0F74F6FF1B0002C400F963E0 /* SwiftGoalTests.xctest */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F6EC1B0002C400F963E0 /* SwiftGoal */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F74F6EF1B0002C400F963E0 /* AppDelegate.swift */,\n\t\t\t\t0F74F6F61B0002C400F963E0 /* Images.xcassets */,\n\t\t\t\t0F74F6F81B0002C400F963E0 /* LaunchScreen.xib */,\n\t\t\t\t0FA80BE21B013FE4000531E3 /* Models */,\n\t\t\t\t0F74F70F1B0004EE00F963E0 /* Views */,\n\t\t\t\t0F74F7101B0004FD00F963E0 /* ViewModels */,\n\t\t\t\t0F74F7151B00096000F963E0 /* Stores */,\n\t\t\t\t0FF7B8B61B3A0B3300808433 /* Helpers */,\n\t\t\t\t0F74F6ED1B0002C400F963E0 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = SwiftGoal;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F6ED1B0002C400F963E0 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FE96BEC1B24F09100506E60 /* Fonts */,\n\t\t\t\t0F74F6EE1B0002C400F963E0 /* Info.plist */,\n\t\t\t\t0F98C4F41B658B8B00C39E4C /* Settings.bundle */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F7021B0002C400F963E0 /* SwiftGoalTests */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FB1AD931B72B5B000A8A3E4 /* Models */,\n\t\t\t\t0FB81C471B72C3FE00432698 /* ViewModels */,\n\t\t\t\t5BF62C951C381A25006E97C6 /* Helpers */,\n\t\t\t\t0F74F7031B0002C400F963E0 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = SwiftGoalTests;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F7031B0002C400F963E0 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FB81C4B1B72CAFE00432698 /* MockStore.swift */,\n\t\t\t\t0F74F7041B0002C400F963E0 /* Info.plist */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F70F1B0004EE00F963E0 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F2EF8271B24FBF800BABC20 /* MatchCell.swift */,\n\t\t\t\t0FF57F371B433EFD001DD570 /* PlayerCell.swift */,\n\t\t\t\t0F9D10B61B614B71002B9A20 /* RankingCell.swift */,\n\t\t\t\t0F74F7111B00053D00F963E0 /* MatchesViewController.swift */,\n\t\t\t\t0FE4EB741B3876C2007F9349 /* EditMatchViewController.swift */,\n\t\t\t\t0FF57F331B431E17001DD570 /* ManagePlayersViewController.swift */,\n\t\t\t\t0F9D10B21B614099002B9A20 /* RankingsViewController.swift */,\n\t\t\t);\n\t\t\tpath = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F7101B0004FD00F963E0 /* ViewModels */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F74F7131B00058D00F963E0 /* MatchesViewModel.swift */,\n\t\t\t\t0FE4EB721B38760B007F9349 /* EditMatchViewModel.swift */,\n\t\t\t\t0FF57F351B431E41001DD570 /* ManagePlayersViewModel.swift */,\n\t\t\t\t0F9D10B41B6140FC002B9A20 /* RankingsViewModel.swift */,\n\t\t\t);\n\t\t\tpath = ViewModels;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0F74F7151B00096000F963E0 /* Stores */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5BFD9F9F1C340B1C00FDEBC6 /* StoreType.swift */,\n\t\t\t\t5BFD9FA11C35AFC700FDEBC6 /* LocalStore.swift */,\n\t\t\t\t0F74F7161B0009B300F963E0 /* RemoteStore.swift */,\n\t\t\t);\n\t\t\tpath = Stores;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FA80BE01B013F3A000531E3 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5BB3F7911CAC61C700985038 /* Curry.framework */,\n\t\t\t\t0FE96BE81B24D77700506E60 /* Argo.framework */,\n\t\t\t\t0FE2A7461B66CD06001F5C5B /* DZNEmptyDataSet.framework */,\n\t\t\t\t0F79DAE81BCDBB170073988A /* Nimble.framework */,\n\t\t\t\t0F79DAE91BCDBB170073988A /* Quick.framework */,\n\t\t\t\t0FA80BDB1B013F33000531E3 /* ReactiveCocoa.framework */,\n\t\t\t\t0FA80BDC1B013F33000531E3 /* Result.framework */,\n\t\t\t\t0F2EF8291B24FE9400BABC20 /* SnapKit.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FA80BE21B013FE4000531E3 /* Models */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5BFD9FA31C36CF9E00FDEBC6 /* Encodable.swift */,\n\t\t\t\t0F3289ED1B1CF8340068DF12 /* Changeset.swift */,\n\t\t\t\t0FA80BE31B014001000531E3 /* Match.swift */,\n\t\t\t\t0F691B3D1B1D19DC00FD5AC1 /* Player.swift */,\n\t\t\t\t0F9D10B81B625124002B9A20 /* Ranking.swift */,\n\t\t\t);\n\t\t\tpath = Models;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FB1AD931B72B5B000A8A3E4 /* Models */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F74F7051B0002C400F963E0 /* ChangesetSpec.swift */,\n\t\t\t\t0F89040B1BF8B2B4007135C9 /* MatchSpec.swift */,\n\t\t\t\t0F89040D1BF8B907007135C9 /* PlayerSpec.swift */,\n\t\t\t\t0F89040F1BF8BACF007135C9 /* RankingSpec.swift */,\n\t\t\t);\n\t\t\tpath = Models;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FB81C471B72C3FE00432698 /* ViewModels */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FB81C481B72C44A00432698 /* MatchesViewModelSpec.swift */,\n\t\t\t\t0FFA97031B76C9D900DD4F58 /* EditMatchViewModelSpec.swift */,\n\t\t\t\t5B459DFB1C3A551000B37AD2 /* ManagePlayersViewModelSpec.swift */,\n\t\t\t\t5B459DF91C3A4C8A00B37AD2 /* RankingsViewModelSpec.swift */,\n\t\t\t);\n\t\t\tpath = ViewModels;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FE96BEC1B24F09100506E60 /* Fonts */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0F2EF82B1B25000600BABC20 /* OpenSans-Regular.ttf */,\n\t\t\t\t0FE96BED1B24F0B700506E60 /* OpenSans-Semibold.ttf */,\n\t\t\t);\n\t\t\tpath = Fonts;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t0FF7B8B61B3A0B3300808433 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t0FE2A7491B66E139001F5C5B /* Color.swift */,\n\t\t\t\t0FF7B8B71B3A0CB300808433 /* Extensions.swift */,\n\t\t\t\t5BF62C931C3819E5006E97C6 /* RankingEngine.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t5BF62C951C381A25006E97C6 /* Helpers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5BF62C961C381AA8006E97C6 /* RankingEngineSpec.swift */,\n\t\t\t);\n\t\t\tpath = Helpers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t0F74F6E91B0002C400F963E0 /* SwiftGoal */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 0F74F7091B0002C400F963E0 /* Build configuration list for PBXNativeTarget \"SwiftGoal\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t0F74F6E61B0002C400F963E0 /* Sources */,\n\t\t\t\t0F74F6E71B0002C400F963E0 /* Frameworks */,\n\t\t\t\t0F74F6E81B0002C400F963E0 /* Resources */,\n\t\t\t\t0FA80BE11B013F70000531E3 /* ShellScript */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = SwiftGoal;\n\t\t\tproductName = SwiftGoal;\n\t\t\tproductReference = 0F74F6EA1B0002C400F963E0 /* SwiftGoal.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n\t\t0F74F6FE1B0002C400F963E0 /* SwiftGoalTests */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 0F74F70C1B0002C400F963E0 /* Build configuration list for PBXNativeTarget \"SwiftGoalTests\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t0F74F6FB1B0002C400F963E0 /* Sources */,\n\t\t\t\t0F74F6FC1B0002C400F963E0 /* Frameworks */,\n\t\t\t\t0F74F6FD1B0002C400F963E0 /* Resources */,\n\t\t\t\t0FD2EED61BCDB15000D4F80E /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t0F74F7011B0002C400F963E0 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = SwiftGoalTests;\n\t\t\tproductName = SwiftGoalTests;\n\t\t\tproductReference = 0F74F6FF1B0002C400F963E0 /* SwiftGoalTests.xctest */;\n\t\t\tproductType = \"com.apple.product-type.bundle.unit-test\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t0F74F6E21B0002C400F963E0 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastSwiftMigration = 0700;\n\t\t\t\tLastSwiftUpdateCheck = 0700;\n\t\t\t\tLastUpgradeCheck = 0800;\n\t\t\t\tORGANIZATIONNAME = \"Martin Richter\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t0F74F6E91B0002C400F963E0 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t};\n\t\t\t\t\t0F74F6FE1B0002C400F963E0 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.3.1;\n\t\t\t\t\t\tLastSwiftMigration = 0800;\n\t\t\t\t\t\tTestTargetID = 0F74F6E91B0002C400F963E0;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 0F74F6E51B0002C400F963E0 /* Build configuration list for PBXProject \"SwiftGoal\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tBase,\n\t\t\t);\n\t\t\tmainGroup = 0F74F6E11B0002C400F963E0;\n\t\t\tproductRefGroup = 0F74F6EB1B0002C400F963E0 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t0F74F6E91B0002C400F963E0 /* SwiftGoal */,\n\t\t\t\t0F74F6FE1B0002C400F963E0 /* SwiftGoalTests */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t0F74F6E81B0002C400F963E0 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t0FE96BEE1B24F0EB00506E60 /* OpenSans-Semibold.ttf in Resources */,\n\t\t\t\t0F74F6FA1B0002C400F963E0 /* LaunchScreen.xib in Resources */,\n\t\t\t\t0F98C4F51B658B8B00C39E4C /* Settings.bundle in Resources */,\n\t\t\t\t0F2EF82C1B25000600BABC20 /* OpenSans-Regular.ttf in Resources */,\n\t\t\t\t0F74F6F71B0002C400F963E0 /* Images.xcassets in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t0F74F6FD1B0002C400F963E0 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t0FA80BE11B013F70000531E3 /* ShellScript */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/ReactiveCocoa.framework\",\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/Result.framework\",\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/Argo.framework\",\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/SnapKit.framework\",\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/DZNEmptyDataSet.framework\",\n\t\t\t\t\"$(SRCROOT)/Carthage/Build/iOS/Curry.framework\",\n\t\t\t);\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"/usr/local/bin/carthage copy-frameworks \";\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t0F74F6E61B0002C400F963E0 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t0FF57F361B431E41001DD570 /* ManagePlayersViewModel.swift in Sources */,\n\t\t\t\t0FF57F341B431E17001DD570 /* ManagePlayersViewController.swift in Sources */,\n\t\t\t\t0F9D10B31B614099002B9A20 /* RankingsViewController.swift in Sources */,\n\t\t\t\t0FF57F381B433EFD001DD570 /* PlayerCell.swift in Sources */,\n\t\t\t\t0F9D10B71B614B71002B9A20 /* RankingCell.swift in Sources */,\n\t\t\t\t5BFD9FA01C340B1C00FDEBC6 /* StoreType.swift in Sources */,\n\t\t\t\t0FE4EB751B3876C2007F9349 /* EditMatchViewController.swift in Sources */,\n\t\t\t\t0F74F7141B00058D00F963E0 /* MatchesViewModel.swift in Sources */,\n\t\t\t\t5BFD9FA21C35AFC700FDEBC6 /* LocalStore.swift in Sources */,\n\t\t\t\t0F74F7171B0009B300F963E0 /* RemoteStore.swift in Sources */,\n\t\t\t\t0F3289EE1B1CF8340068DF12 /* Changeset.swift in Sources */,\n\t\t\t\t0F74F7121B00053D00F963E0 /* MatchesViewController.swift in Sources */,\n\t\t\t\t0F691B3E1B1D19DC00FD5AC1 /* Player.swift in Sources */,\n\t\t\t\t0FE2A74A1B66E139001F5C5B /* Color.swift in Sources */,\n\t\t\t\t0FA80BE41B014001000531E3 /* Match.swift in Sources */,\n\t\t\t\t0F9D10B51B6140FC002B9A20 /* RankingsViewModel.swift in Sources */,\n\t\t\t\t0FE4EB731B38760B007F9349 /* EditMatchViewModel.swift in Sources */,\n\t\t\t\t0F74F6F01B0002C400F963E0 /* AppDelegate.swift in Sources */,\n\t\t\t\t5BF62C941C3819E5006E97C6 /* RankingEngine.swift in Sources */,\n\t\t\t\t0FF7B8B81B3A0CB300808433 /* Extensions.swift in Sources */,\n\t\t\t\t0F9D10B91B625124002B9A20 /* Ranking.swift in Sources */,\n\t\t\t\t0F2EF8281B24FBF800BABC20 /* MatchCell.swift in Sources */,\n\t\t\t\t5BFD9FA41C36CF9E00FDEBC6 /* Encodable.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\t0F74F6FB1B0002C400F963E0 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t0F74F7061B0002C400F963E0 /* ChangesetSpec.swift in Sources */,\n\t\t\t\t0F8904101BF8BACF007135C9 /* RankingSpec.swift in Sources */,\n\t\t\t\t0FFA97041B76C9D900DD4F58 /* EditMatchViewModelSpec.swift in Sources */,\n\t\t\t\t0FB81C491B72C44A00432698 /* MatchesViewModelSpec.swift in Sources */,\n\t\t\t\t5B459DFA1C3A4C8A00B37AD2 /* RankingsViewModelSpec.swift in Sources */,\n\t\t\t\t0FB81C4C1B72CAFE00432698 /* MockStore.swift in Sources */,\n\t\t\t\t5BF62C971C381AA8006E97C6 /* RankingEngineSpec.swift in Sources */,\n\t\t\t\t0F89040C1BF8B2B4007135C9 /* MatchSpec.swift in Sources */,\n\t\t\t\t5B459DFC1C3A551000B37AD2 /* ManagePlayersViewModelSpec.swift in Sources */,\n\t\t\t\t0F89040E1BF8B907007135C9 /* PlayerSpec.swift in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t0F74F7011B0002C400F963E0 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\ttarget = 0F74F6E91B0002C400F963E0 /* SwiftGoal */;\n\t\t\ttargetProxy = 0F74F7001B0002C400F963E0 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin PBXVariantGroup section */\n\t\t0F74F6F81B0002C400F963E0 /* LaunchScreen.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t0F74F6F91B0002C400F963E0 /* Base */,\n\t\t\t);\n\t\t\tname = LaunchScreen.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t0F74F7071B0002C400F963E0 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t0F74F7081B0002C400F963E0 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t0F74F70A1B0002C400F963E0 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Carthage/Build/iOS\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = SwiftGoal/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.martinrichter.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t0F74F70B1B0002C400F963E0 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Carthage/Build/iOS\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = SwiftGoal/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.martinrichter.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t0F74F70D1B0002C400F963E0 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBUNDLE_LOADER = \"$(TEST_HOST)\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Carthage/Build/iOS\",\n\t\t\t\t);\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = SwiftGoalTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.martinrichter.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTEST_HOST = \"$(BUILT_PRODUCTS_DIR)/SwiftGoal.app/SwiftGoal\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t0F74F70E1B0002C400F963E0 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tBUNDLE_LOADER = \"$(TEST_HOST)\";\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"$(PROJECT_DIR)/Carthage/Build/iOS\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = SwiftGoalTests/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = \"net.martinrichter.$(PRODUCT_NAME:rfc1034identifier)\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_VERSION = 2.3;\n\t\t\t\tTEST_HOST = \"$(BUILT_PRODUCTS_DIR)/SwiftGoal.app/SwiftGoal\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t0F74F6E51B0002C400F963E0 /* Build configuration list for PBXProject \"SwiftGoal\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t0F74F7071B0002C400F963E0 /* Debug */,\n\t\t\t\t0F74F7081B0002C400F963E0 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t0F74F7091B0002C400F963E0 /* Build configuration list for PBXNativeTarget \"SwiftGoal\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t0F74F70A1B0002C400F963E0 /* Debug */,\n\t\t\t\t0F74F70B1B0002C400F963E0 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t0F74F70C1B0002C400F963E0 /* Build configuration list for PBXNativeTarget \"SwiftGoalTests\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t0F74F70D1B0002C400F963E0 /* Debug */,\n\t\t\t\t0F74F70E1B0002C400F963E0 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 0F74F6E21B0002C400F963E0 /* Project object */;\n}\n"
  },
  {
    "path": "SwiftGoal.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:SwiftGoal.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "SwiftGoal.xcodeproj/xcshareddata/xcschemes/SwiftGoal.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0800\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"0F74F6E91B0002C400F963E0\"\n               BuildableName = \"SwiftGoal.app\"\n               BlueprintName = \"SwiftGoal\"\n               ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"NO\"\n            buildForArchiving = \"NO\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"0F74F6FE1B0002C400F963E0\"\n               BuildableName = \"SwiftGoalTests.xctest\"\n               BlueprintName = \"SwiftGoalTests\"\n               ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      codeCoverageEnabled = \"YES\">\n      <Testables>\n         <TestableReference\n            skipped = \"NO\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"0F74F6FE1B0002C400F963E0\"\n               BuildableName = \"SwiftGoalTests.xctest\"\n               BlueprintName = \"SwiftGoalTests\"\n               ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n            </BuildableReference>\n         </TestableReference>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"0F74F6E91B0002C400F963E0\"\n            BuildableName = \"SwiftGoal.app\"\n            BlueprintName = \"SwiftGoal\"\n            ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"0F74F6E91B0002C400F963E0\"\n            BuildableName = \"SwiftGoal.app\"\n            BlueprintName = \"SwiftGoal\"\n            ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"0F74F6E91B0002C400F963E0\"\n            BuildableName = \"SwiftGoal.app\"\n            BlueprintName = \"SwiftGoal\"\n            ReferencedContainer = \"container:SwiftGoal.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "SwiftGoalTests/Helpers/RankingEngineSpec.swift",
    "content": "//\n//  RankingEngineSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 02/01/16.\n//  Copyright © 2016 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nclass RankingEngineSpec: QuickSpec {\n    override func spec() {\n        describe(\"A RankingEngine\") {\n            let rankingEngine = RankingEngine()\n\n            describe(\"for empty input\") {\n                it(\"returns an empty array\") {\n                    let rankings = rankingEngine.rankingsForPlayers([], fromMatches: [])\n                    expect(rankings).to(equal([]))\n                }\n            }\n\n            describe(\"for one player\") {\n                let p1 = Player(identifier: \"a\", name: \"A\")\n\n                it(\"gives a zero rating when the player has no matches\") {\n                    let rankings = rankingEngine.rankingsForPlayers([p1], fromMatches: [])\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 0)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n\n                it(\"returns only that player's ranking\") {\n                    let p2 = Player(identifier: \"b\", name: \"B\")\n                    let match = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 1, awayGoals: 0)\n                    let rankings = rankingEngine.rankingsForPlayers([p1], fromMatches: [match])\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 10)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n            }\n\n            describe(\"for two players\") {\n                let p1 = Player(identifier: \"a\", name: \"A\")\n                let p2 = Player(identifier: \"b\", name: \"B\")\n\n                it(\"provides correct ratings for a home win\") {\n                    let match = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 1, awayGoals: 0)\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2], fromMatches: [match])\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 10),\n                        Ranking(player: p2, rating: 0)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n\n                it(\"provides correct ratings for a tie\") {\n                    let match = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 1, awayGoals: 1)\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2], fromMatches: [match])\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 10/3),\n                        Ranking(player: p2, rating: 10/3)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n\n                it(\"provides correct ratings for an away win\") {\n                    let match = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 0, awayGoals: 1)\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2], fromMatches: [match])\n\n                    let expectedRankings = [\n                        Ranking(player: p2, rating: 10),\n                        Ranking(player: p1, rating: 0)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n\n                it(\"provides correct ratings for a mixed set of matches\") {\n                    let m1 = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 1, awayGoals: 0)\n                    let m2 = Match(identifier: \"2\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 0, awayGoals: 1)\n                    let m3 = Match(identifier: \"3\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 0, awayGoals: 0)\n                    let m4 = Match(identifier: \"4\", homePlayers: [p2], awayPlayers: [p1], homeGoals: 1, awayGoals: 0)\n                    let m5 = Match(identifier: \"5\", homePlayers: [p2], awayPlayers: [p1], homeGoals: 0, awayGoals: 1)\n\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2], fromMatches: [m1, m2, m3, m4, m5])\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 10 * 7/15),\n                        Ranking(player: p2, rating: 10 * 7/15)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n            }\n\n            describe(\"for more than two players\") {\n                let p1 = Player(identifier: \"a\", name: \"A\")\n                let p2 = Player(identifier: \"b\", name: \"B\")\n                let p3 = Player(identifier: \"c\", name: \"C\")\n\n                it(\"take only a player's own matches into account for their rating\") {\n                    let matches = [\n                        Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 1, awayGoals: 0),\n                        Match(identifier: \"2\", homePlayers: [p2], awayPlayers: [p1], homeGoals: 1, awayGoals: 0),\n                        Match(identifier: \"3\", homePlayers: [p1], awayPlayers: [p3], homeGoals: 1, awayGoals: 0),\n                        Match(identifier: \"4\", homePlayers: [p3], awayPlayers: [p1], homeGoals: 1, awayGoals: 0),\n                        Match(identifier: \"5\", homePlayers: [p2], awayPlayers: [p3], homeGoals: 1, awayGoals: 0),\n                        Match(identifier: \"6\", homePlayers: [p3], awayPlayers: [p2], homeGoals: 1, awayGoals: 0)\n                    ]\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2, p3], fromMatches: matches)\n\n                    let expectedRankings = [\n                        Ranking(player: p1, rating: 5),\n                        Ranking(player: p2, rating: 5),\n                        Ranking(player: p3, rating: 5)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n\n                it(\"orders the rankings by descending rating\") {\n                    let m1 = Match(identifier: \"1\", homePlayers: [p1], awayPlayers: [p2], homeGoals: 0, awayGoals: 1)\n                    let m2 = Match(identifier: \"2\", homePlayers: [p2], awayPlayers: [p3], homeGoals: 0, awayGoals: 0)\n                    let rankings = rankingEngine.rankingsForPlayers([p1, p2, p3], fromMatches: [m1, m2])\n\n                    let expectedRankings = [\n                        Ranking(player: p2, rating: 10 * 2/3),\n                        Ranking(player: p3, rating: 10/3),\n                        Ranking(player: p1, rating: 0)\n                    ]\n\n                    expect(Ranking.contentMatches(rankings, expectedRankings)).to(beTrue())\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>BNDL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "SwiftGoalTests/MockStore.swift",
    "content": "//\n//  MockStore.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 06/08/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport ReactiveCocoa\n@testable import SwiftGoal\n\nclass MockStore: StoreType {\n    // nil is used to cause fetch error\n    var players: [Player]?\n    var matches: [Match]?\n    var rankings: [Ranking]?\n\n    var didFetchMatches = false\n    var deletedMatch: Match?\n\n    var didFetchPlayers = false\n\n    var didFetchRankings = false\n\n    init() {\n        let player1 = Player(identifier: \"player1\", name: \"C\")\n        let player2 = Player(identifier: \"player2\", name: \"A\")\n        let player3 = Player(identifier: \"player3\", name: \"D\")\n        let player4 = Player(identifier: \"player4\", name: \"B\")\n\n        self.players = [player1, player2, player3, player4]\n        self.matches = [\n            Match(\n                identifier: \"1\",\n                homePlayers: [player1, player2],\n                awayPlayers: [player3, player4],\n                homeGoals: 2,\n                awayGoals: 1\n            ),\n            Match(\n                identifier: \"2\",\n                homePlayers: [player1, player4],\n                awayPlayers: [player2, player3],\n                homeGoals: 0,\n                awayGoals: 1\n            )\n        ]\n        self.rankings = [\n            Ranking(player: player2, rating: 10),\n            Ranking(player: player1, rating: 5),\n            Ranking(player: player3, rating: 5),\n            Ranking(player: player4, rating: 0)\n        ]\n    }\n\n    // MARK: Matches\n\n    func fetchMatches() -> SignalProducer<[Match], NSError> {\n        didFetchMatches = true\n        if let matches = self.matches {\n            return SignalProducer(value: matches)\n        } else {\n            let error = NSError(domain: \"\", code: 0, userInfo: nil)\n            return SignalProducer(error: error)\n        }\n    }\n\n    func createMatch(parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n        return SignalProducer(value: false)\n    }\n\n    func updateMatch(match: Match, parameters: MatchParameters) -> SignalProducer<Bool, NSError> {\n        return SignalProducer(value: false)\n    }\n\n    func deleteMatch(match: Match) -> SignalProducer<Bool, NSError> {\n        deletedMatch = match\n        return SignalProducer(value: true)\n    }\n\n    // MARK: Players\n\n    func fetchPlayers() -> SignalProducer<[Player], NSError> {\n        didFetchPlayers = true\n        if let players = self.players {\n            return SignalProducer(value: players)\n        } else {\n            let error = NSError(domain: \"\", code: 0, userInfo: nil)\n            return SignalProducer(error: error)\n        }\n    }\n\n    func createPlayerWithName(name: String) -> SignalProducer<Bool, NSError> {\n        return SignalProducer(value: false)\n    }\n\n    // MARK: Rankings\n\n    func fetchRankings() -> SignalProducer<[Ranking], NSError> {\n        didFetchRankings = true\n        if let rankings = self.rankings {\n            return SignalProducer(value: rankings)\n        } else {\n            let error = NSError(domain: \"\", code: 0, userInfo: nil)\n            return SignalProducer(error: error)\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/Models/ChangesetSpec.swift",
    "content": "//\n//  SwiftGoalTests.swift\n//  SwiftGoalTests\n//\n//  Created by Martin Richter on 10/05/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nprivate struct Item: Equatable {\n    let identifier: String\n    let value: String\n}\n\nprivate func ==(lhs: Item, rhs: Item) -> Bool {\n    return lhs.identifier == rhs.identifier\n}\n\nclass ChangesetSpec: QuickSpec {\n\n    override func spec() {\n\n        let oldItems = [\n            Item(identifier: \"cat\", value: \"Cat\"),\n            Item(identifier: \"dog\", value: \"Dog\"),\n            Item(identifier: \"fox\", value: \"Fox\"),\n            Item(identifier: \"rat\", value: \"Rat\"),\n            Item(identifier: \"yak\", value: \"Yak\")\n        ]\n\n        describe(\"A Changeset\") {\n\n            it(\"should have the correct insertions, deletions and modifications\") {\n                let newItems = [\n                    Item(identifier: \"bat\", value: \"Bat\"),\n                    Item(identifier: \"cow\", value: \"Cow\"),\n                    Item(identifier: \"dog\", value: \"A different dog\"),\n                    Item(identifier: \"fox\", value: \"Fox\"),\n                    Item(identifier: \"pig\", value: \"Pig\"),\n                    Item(identifier: \"yak\", value: \"A different yak\")\n                ]\n\n                let changeset = Changeset(\n                    oldItems: oldItems,\n                    newItems: newItems,\n                    contentMatches: { item1, item2 in item1.value == item2.value }\n                )\n\n                let deletion1 = NSIndexPath(forRow: 0, inSection: 0)\n                let deletion2 = NSIndexPath(forRow: 3, inSection: 0)\n\n                let modification1 = NSIndexPath(forRow: 1, inSection: 0)\n                let modification2 = NSIndexPath(forRow: 4, inSection: 0)\n\n                let insertion1 = NSIndexPath(forRow: 0, inSection: 0)\n                let insertion2 = NSIndexPath(forRow: 1, inSection: 0)\n                let insertion3 = NSIndexPath(forRow: 4, inSection: 0)\n\n                expect(changeset.deletions).to(equal([deletion1, deletion2]))\n                expect(changeset.modifications).to(equal([modification1, modification2]))\n                expect(changeset.insertions).to(equal([insertion1, insertion2, insertion3]))\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/Models/MatchSpec.swift",
    "content": "//\n//  MatchSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 15/11/15.\n//  Copyright © 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nclass MatchSpec: QuickSpec {\n\n    override func spec() {\n        describe(\"A Match\") {\n            it(\"is equal to another Match iff (if and only if) their identifiers match\") {\n                let m1 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                let m2 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                let m3 = Match(identifier: \"b\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                expect(m1).to(equal(m2))\n                expect(m1).notTo(equal(m3))\n            }\n\n            context(\"when compared by content to another Match\") {\n\n                let basePlayers = [\n                    Player(identifier: \"p1\", name: \"John\"),\n                    Player(identifier: \"p2\", name: \"Mary\")\n                ]\n\n                // Different amount of players (some player missing)\n                let differentCountPlayers = [\n                    Player(identifier: \"p1\", name: \"John\")\n                ]\n\n                // Different content of players\n                let differentContentPlayers = [\n                    Player(identifier: \"p1\", name: \"Jack\"),\n                    Player(identifier: \"p2\", name: \"Mary\")\n                ]\n\n                // Different identity of players who have the same content\n                let differentIdentityPlayers = [\n                    Player(identifier: \"p3\", name: \"John\"),\n                    Player(identifier: \"p4\", name: \"Mary\")\n                ]\n\n                it(\"does not match when the identifiers differ\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"b\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    expect(Match.contentMatches(m1, m2)).to(beFalse())\n                }\n\n                it(\"does not match when the home players differ\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: basePlayers, awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"a\", homePlayers: differentCountPlayers, awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m3 = Match(identifier: \"a\", homePlayers: differentContentPlayers, awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m4 = Match(identifier: \"a\", homePlayers: differentIdentityPlayers, awayPlayers: [], homeGoals: 0, awayGoals: 0)\n\n                    expect(Match.contentMatches(m1, m2)).to(beFalse())\n                    expect(Match.contentMatches(m1, m3)).to(beFalse())\n                    expect(Match.contentMatches(m1, m4)).to(beFalse())\n                }\n\n                it(\"does not match when the away players differ\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: [], awayPlayers: basePlayers, homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"a\", homePlayers: [], awayPlayers: differentCountPlayers, homeGoals: 0, awayGoals: 0)\n                    let m3 = Match(identifier: \"a\", homePlayers: [], awayPlayers: differentContentPlayers, homeGoals: 0, awayGoals: 0)\n                    let m4 = Match(identifier: \"a\", homePlayers: [], awayPlayers: differentIdentityPlayers, homeGoals: 0, awayGoals: 0)\n\n                    expect(Match.contentMatches(m1, m2)).to(beFalse())\n                    expect(Match.contentMatches(m1, m3)).to(beFalse())\n                    expect(Match.contentMatches(m1, m4)).to(beFalse())\n                }\n\n                it(\"does not match when the home goals differ\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 1, awayGoals: 0)\n\n                    expect(Match.contentMatches(m1, m2)).to(beFalse())\n                }\n\n                it(\"does not match when the away goals differ\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"a\", homePlayers: [], awayPlayers: [], homeGoals: 0, awayGoals: 1)\n\n                    expect(Match.contentMatches(m1, m2)).to(beFalse())\n                }\n\n                it(\"matches when all properties match\") {\n                    let m1 = Match(identifier: \"a\", homePlayers: basePlayers, awayPlayers: basePlayers, homeGoals: 0, awayGoals: 0)\n                    let m2 = Match(identifier: \"a\", homePlayers: basePlayers, awayPlayers: basePlayers, homeGoals: 0, awayGoals: 0)\n\n                    expect(Match.contentMatches(m1, m2)).to(beTrue())\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/Models/PlayerSpec.swift",
    "content": "//\n//  PlayerSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 15/11/15.\n//  Copyright © 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nclass PlayerSpec: QuickSpec {\n\n    override func spec() {\n        describe(\"A Player\") {\n            it(\"is equal to another Player iff (if and only if) their identifiers match\") {\n                let p1 = Player(identifier: \"a\", name: \"\")\n                let p2 = Player(identifier: \"a\", name: \"\")\n                let p3 = Player(identifier: \"b\", name: \"\")\n                expect(p1).to(equal(p2))\n                expect(p1).notTo(equal(p3))\n            }\n\n            context(\"when compared by content to another Player\") {\n\n                it(\"does not match when the identifiers differ\") {\n                    let p1 = Player(identifier: \"a\", name: \"\")\n                    let p2 = Player(identifier: \"b\", name: \"\")\n                    expect(Player.contentMatches(p1, p2)).to(beFalse())\n                }\n\n                it(\"does not match when the names differ\") {\n                    let p1 = Player(identifier: \"a\", name: \"John\")\n                    let p2 = Player(identifier: \"a\", name: \"Jack\")\n                    expect(Player.contentMatches(p1, p2)).to(beFalse())\n                }\n\n                it(\"matches when all properties match\") {\n                    let p1 = Player(identifier: \"a\", name: \"John\")\n                    let p2 = Player(identifier: \"a\", name: \"John\")\n                    expect(Player.contentMatches(p1, p2)).to(beTrue())\n                }\n            }\n        }\n\n        describe(\"An array of Players\") {\n            context(\"when compared by content to another array of Players\") {\n\n                let p1 = Player(identifier: \"a\", name: \"John\")\n                let p2 = Player(identifier: \"b\", name: \"Mary\")\n\n                it(\"does not match when item counts differ\") {\n                    expect(Player.contentMatches([p1, p2], [p1])).to(beFalse())\n                }\n\n                it(\"does not match when the item order differs\") {\n                    expect(Player.contentMatches([p1, p2], [p2, p1])).to(beFalse())\n                }\n\n                it(\"does not match when player contents differ\") {\n                    let p3 = Player(identifier: \"a\", name: \"Jack\")\n                    expect(Player.contentMatches([p1], [p3])).to(beFalse())\n                }\n\n                it(\"matches when the contents of all players match\") {\n                    expect(Player.contentMatches([p1, p2], [p1, p2])).to(beTrue())\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/Models/RankingSpec.swift",
    "content": "//\n//  RankingSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 15/11/15.\n//  Copyright © 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nclass RankingSpec: QuickSpec {\n\n    override func spec() {\n        describe(\"A Ranking\") {\n            it(\"is not equal to another Ranking if its players are not equal\") {\n                let player1 = Player(identifier: \"p1\", name: \"John\")\n                let player2 = Player(identifier: \"p2\", name: \"Mary\")\n\n                let r1 = Ranking(player: player1, rating: 0)\n                let r2 = Ranking(player: player2, rating: 0)\n\n                expect(r1).notTo(equal(r2))\n            }\n\n            it(\"is equal to another Ranking if its players are equal, no matter the rest\") {\n                let player1 = Player(identifier: \"p1\", name: \"John\")\n                let player2 = Player(identifier: \"p1\", name: \"Jack\")\n\n                let r1 = Ranking(player: player1, rating: 0)\n                let r2 = Ranking(player: player2, rating: 1)\n\n                expect(r1).to(equal(r2))\n            }\n\n            context(\"when compared by content to another Ranking\") {\n\n                it(\"does not match when the players differ in content\") {\n                    let player1 = Player(identifier: \"p1\", name: \"John\")\n                    let player2 = Player(identifier: \"p1\", name: \"Jack\")\n\n                    let r1 = Ranking(player: player1, rating: 0)\n                    let r2 = Ranking(player: player2, rating: 0)\n\n                    expect(Ranking.contentMatches(r1, r2)).to(beFalse())\n                }\n\n                it(\"does not match when the ratings differ\") {\n                    let player = Player(identifier: \"p1\", name: \"John\")\n                    let r1 = Ranking(player: player, rating: 0)\n                    let r2 = Ranking(player: player, rating: 1)\n\n                    expect(Ranking.contentMatches(r1, r2)).to(beFalse())\n                }\n\n                it(\"matches when all properties match\") {\n                    let player = Player(identifier: \"p1\", name: \"John\")\n                    let r1 = Ranking(player: player, rating: 0)\n                    let r2 = Ranking(player: player, rating: 0)\n\n                    expect(Ranking.contentMatches(r1, r2)).to(beTrue())\n                }\n            }\n\n            context(\"when compared in bulk to another Ranking array\") {\n                let player = Player(identifier: \"p1\", name: \"John\")\n                let r1 = Ranking(player: player, rating: 0)\n                let r2 = Ranking(player: player, rating: 1)\n\n                it(\"does not match when the array counts differ\") {\n                    let array1 = [r1, r1]\n                    let array2 = [r1]\n\n                    expect(Ranking.contentMatches(array1, array2)).to(beFalse())\n                }\n\n                it(\"does not match when the array order differs\") {\n                    let array1 = [r1, r2]\n                    let array2 = [r2, r1]\n\n                    expect(Ranking.contentMatches(array1, array2)).to(beFalse())\n                }\n\n                it(\"does not match when any item differs\") {\n                    let array1 = [r1, r1]\n                    let array2 = [r1, r2]\n\n                    expect(Ranking.contentMatches(array1, array2)).to(beFalse())\n                }\n\n                it(\"matches when all items match\") {\n                    let array1 = [r1, r2]\n                    let array2 = [r1, r2]\n\n                    expect(Ranking.contentMatches(array1, array2)).to(beTrue())\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/ViewModels/EditMatchViewModelSpec.swift",
    "content": "//\n//  EditMatchViewModelSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 09/08/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\n@testable import SwiftGoal\n\nclass EditMatchViewModelSpec: QuickSpec {\n    override func spec() {\n        describe(\"EditMatchViewModel\") {\n            var mockStore: MockStore!\n            var viewModel: EditMatchViewModel!\n\n            context(\"when initialized without an existing match\") {\n                beforeEach {\n                    mockStore = MockStore()\n                    viewModel = EditMatchViewModel(store: mockStore)\n                }\n\n                it(\"has the correct title\") {\n                    expect(viewModel.title).to(equal(\"New Match\"))\n                }\n\n                it(\"formats the home goals correctly\") {\n                    viewModel.homeGoals.value = 1\n                    expect(viewModel.formattedHomeGoals.value).to(equal(\"1\"))\n                }\n\n                it(\"formats the away goals correctly\") {\n                    viewModel.awayGoals.value = 1\n                    expect(viewModel.formattedAwayGoals.value).to(equal(\"1\"))\n                }\n\n                describe(\"validation\") {\n                    it(\"fails initially\") {\n                        expect(viewModel.inputIsValid.value).to(beFalse())\n                    }\n\n                    it(\"fails when there are no home players\") {\n                        let awayPlayersViewModel = viewModel.manageAwayPlayersViewModel()\n                        let awayPlayerIndexPath = NSIndexPath(forRow: 1, inSection: 0)\n                        awayPlayersViewModel.active.value = true\n                        awayPlayersViewModel.selectPlayerAtIndexPath(awayPlayerIndexPath)\n\n                        expect(viewModel.inputIsValid.value).to(beFalse())\n                    }\n\n                    it(\"fails when there are no away players\") {\n                        let homePlayersViewModel = viewModel.manageHomePlayersViewModel()\n                        let homePlayerIndexPath = NSIndexPath(forRow: 0, inSection: 0)\n                        homePlayersViewModel.active.value = true\n                        homePlayersViewModel.selectPlayerAtIndexPath(homePlayerIndexPath)\n\n                        expect(viewModel.inputIsValid.value).to(beFalse())\n                    }\n\n                    it(\"passes when there are both home and away players\") {\n                        let homePlayersViewModel = viewModel.manageHomePlayersViewModel()\n                        let homePlayerIndexPath = NSIndexPath(forRow: 0, inSection: 0)\n                        homePlayersViewModel.active.value = true\n                        homePlayersViewModel.selectPlayerAtIndexPath(homePlayerIndexPath)\n\n                        let awayPlayersViewModel = viewModel.manageAwayPlayersViewModel()\n                        let awayPlayerIndexPath = NSIndexPath(forRow: 1, inSection: 0)\n                        awayPlayersViewModel.active.value = true\n                        awayPlayersViewModel.selectPlayerAtIndexPath(awayPlayerIndexPath)\n\n                        expect(viewModel.inputIsValid.value).to(beTrue())\n                    }\n                }\n            }\n        }\n    }\n}"
  },
  {
    "path": "SwiftGoalTests/ViewModels/ManagePlayersViewModelSpec.swift",
    "content": "//\n//  ManagePlayersViewModelSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 04/01/16.\n//  Copyright © 2016 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\nimport ReactiveCocoa\n@testable import SwiftGoal\n\nclass ManagePlayersViewModelSpec: QuickSpec {\n    override func spec() {\n        describe(\"ManagePlayersViewModel\") {\n            var mockStore: MockStore!\n            var managePlayersViewModel: ManagePlayersViewModel!\n\n            beforeEach {\n                mockStore = MockStore()\n                managePlayersViewModel = ManagePlayersViewModel(store: mockStore, initialPlayers: [], disabledPlayers: [])\n            }\n\n            it(\"has the correct title\") {\n                expect(managePlayersViewModel.title).to(equal(\"Players\"))\n            }\n\n            it(\"initially has a only single, empty section\") {\n                expect(managePlayersViewModel.numberOfSections()).to(equal(1))\n                expect(managePlayersViewModel.numberOfPlayersInSection(0)).to(equal(0))\n            }\n\n            context(\"when initialized with a set of initial players\") {\n                beforeEach {\n                    let p1 = Player(identifier: \"a\", name: \"A\")\n                    let p2 = Player(identifier: \"b\", name: \"B\")\n                    let p3 = Player(identifier: \"c\", name: \"C\")\n                    mockStore.players = [p1, p2, p3]\n                    managePlayersViewModel = ManagePlayersViewModel(store: mockStore, initialPlayers: [p1, p2], disabledPlayers: [])\n                }\n\n                it(\"has the right players selected\") {\n                    managePlayersViewModel.active.value = true\n\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    let indexPath3 = NSIndexPath(forRow: 2, inSection: 0)\n\n                    expect(managePlayersViewModel.isPlayerSelectedAtIndexPath(indexPath1)).to(beTrue())\n                    expect(managePlayersViewModel.isPlayerSelectedAtIndexPath(indexPath2)).to(beTrue())\n                    expect(managePlayersViewModel.isPlayerSelectedAtIndexPath(indexPath3)).to(beFalse())\n                }\n            }\n\n            context(\"when initialized with a set of disabled players\") {\n                beforeEach {\n                    let p1 = Player(identifier: \"a\", name: \"A\")\n                    let p2 = Player(identifier: \"b\", name: \"B\")\n                    let p3 = Player(identifier: \"c\", name: \"C\")\n                    mockStore.players = [p1, p2, p3]\n                    managePlayersViewModel = ManagePlayersViewModel(store: mockStore, initialPlayers: [], disabledPlayers: [p1, p2])\n                }\n\n                it(\"allows the right players to be selected\") {\n                    managePlayersViewModel.active.value = true\n\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    let indexPath3 = NSIndexPath(forRow: 2, inSection: 0)\n\n                    expect(managePlayersViewModel.canSelectPlayerAtIndexPath(indexPath1)).to(beFalse())\n                    expect(managePlayersViewModel.canSelectPlayerAtIndexPath(indexPath2)).to(beFalse())\n                    expect(managePlayersViewModel.canSelectPlayerAtIndexPath(indexPath3)).to(beTrue())\n                }\n            }\n\n            context(\"after becoming active\") {\n                beforeEach {\n                    managePlayersViewModel.active.value = true\n                }\n\n                it(\"fetches a list of players\") {\n                    expect(mockStore.didFetchPlayers).to(beTrue())\n                }\n\n                it(\"has only a single section\") {\n                    expect(managePlayersViewModel.numberOfSections()).to(equal(1))\n                }\n\n                it(\"has the right number of players\") {\n                    expect(managePlayersViewModel.numberOfPlayersInSection(0)).to(equal(4))\n                }\n\n                it(\"displays the right player names\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    let indexPath3 = NSIndexPath(forRow: 2, inSection: 0)\n                    let indexPath4 = NSIndexPath(forRow: 3, inSection: 0)\n                    expect(managePlayersViewModel.playerNameAtIndexPath(indexPath1)).to(equal(\"C\"))\n                    expect(managePlayersViewModel.playerNameAtIndexPath(indexPath2)).to(equal(\"A\"))\n                    expect(managePlayersViewModel.playerNameAtIndexPath(indexPath3)).to(equal(\"D\"))\n                    expect(managePlayersViewModel.playerNameAtIndexPath(indexPath4)).to(equal(\"B\"))\n                }\n\n                it(\"allows selecting and deselecting a player\") {\n                    let indexPath = NSIndexPath(forRow: 0, inSection: 0)\n                    managePlayersViewModel.selectPlayerAtIndexPath(indexPath)\n                    expect(managePlayersViewModel.isPlayerSelectedAtIndexPath(indexPath)).to(beTrue())\n\n                    managePlayersViewModel.deselectPlayerAtIndexPath(indexPath)\n                    expect(managePlayersViewModel.isPlayerSelectedAtIndexPath(indexPath)).to(beFalse())\n                }\n            }\n\n            context(\"when asked to refresh\") {\n                it(\"fetches a list of players\") {\n                    managePlayersViewModel.refreshObserver.sendNext(())\n                    expect(mockStore.didFetchPlayers).to(beTrue())\n                }\n            }\n\n            context(\"when becoming active and upon refresh\") {\n                it(\"indicates its loading state\") {\n                    // Aggregate loading states into an array\n                    var loadingStates: [Bool] = []\n                    managePlayersViewModel.isLoading.producer\n                        .take(5)\n                        .collect()\n                        .startWithNext({ values in\n                            loadingStates = values\n                        })\n\n                    managePlayersViewModel.active.value = true\n                    managePlayersViewModel.refreshObserver.sendNext(())\n\n                    expect(loadingStates).to(equal([false, true, false, true, false]))\n                }\n\n                it(\"notifies subscribers about content changes\") {\n                    var changeset: Changeset<Player>?\n                    managePlayersViewModel.contentChangesSignal.observeNext { contentChanges in\n                        changeset = contentChanges\n                    }\n\n                    let expectedInsertions = [\n                        NSIndexPath(forRow: 0, inSection: 0),\n                        NSIndexPath(forRow: 1, inSection: 0),\n                        NSIndexPath(forRow: 2, inSection: 0),\n                        NSIndexPath(forRow: 3, inSection: 0)\n                    ]\n\n                    managePlayersViewModel.active.value = true\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(equal(expectedInsertions))\n\n                    managePlayersViewModel.refreshObserver.sendNext(())\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(beEmpty())\n                }\n            }\n\n            it(\"raises an alert when players cannot be fetched\") {\n                mockStore.players = nil // will cause fetch error\n\n                var didRaiseAlert = false\n                managePlayersViewModel.alertMessageSignal.observeNext({ alertMessage in\n                    didRaiseAlert = true\n                })\n\n                managePlayersViewModel.active.value = true\n\n                expect(didRaiseAlert).to(beTrue())\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/ViewModels/MatchesViewModelSpec.swift",
    "content": "//\n//  MatchesViewModelSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 06/08/15.\n//  Copyright (c) 2015 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\nimport ReactiveCocoa\nimport Result\n@testable import SwiftGoal\n\nclass MatchesViewModelSpec: QuickSpec {\n    override func spec() {\n        describe(\"MatchesViewModel\") {\n            var mockStore: MockStore!\n            var matchesViewModel: MatchesViewModel!\n\n            beforeEach {\n                mockStore = MockStore()\n                matchesViewModel = MatchesViewModel(store: mockStore)\n            }\n\n            it(\"has the correct title\") {\n                expect(matchesViewModel.title).to(equal(\"Matches\"))\n            }\n\n            it(\"initially has a only single, empty section\") {\n                expect(matchesViewModel.numberOfSections()).to(equal(1))\n                expect(matchesViewModel.numberOfMatchesInSection(0)).to(equal(0))\n            }\n\n            context(\"after becoming active\") {\n                beforeEach {\n                    matchesViewModel.active.value = true\n                }\n\n                it(\"fetches a list of matches\") {\n                    expect(mockStore.didFetchMatches).to(beTrue())\n                }\n\n                it(\"has only a single section\") {\n                    expect(matchesViewModel.numberOfSections()).to(equal(1))\n                }\n\n                it(\"has the right number of matches\") {\n                    expect(matchesViewModel.numberOfMatchesInSection(0)).to(equal(2))\n                }\n\n                it(\"returns the home players in alphabetical order\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    expect(matchesViewModel.homePlayersAtIndexPath(indexPath1)).to(equal(\"C, A\"))\n                    expect(matchesViewModel.homePlayersAtIndexPath(indexPath2)).to(equal(\"C, B\"))\n                }\n\n                it(\"returns the away players in alphabetical order\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    expect(matchesViewModel.awayPlayersAtIndexPath(indexPath1)).to(equal(\"D, B\"))\n                    expect(matchesViewModel.awayPlayersAtIndexPath(indexPath2)).to(equal(\"A, D\"))\n                }\n\n                it(\"displays the right match results\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    expect(matchesViewModel.resultAtIndexPath(indexPath1)).to(equal(\"2 : 1\"))\n                    expect(matchesViewModel.resultAtIndexPath(indexPath2)).to(equal(\"0 : 1\"))\n                }\n            }\n\n            context(\"when asked to refresh\") {\n                it(\"fetches a list of matches\") {\n                    matchesViewModel.refreshObserver.sendNext(())\n                    expect(mockStore.didFetchMatches).to(beTrue())\n                }\n            }\n\n            context(\"when becoming active and upon refresh\") {\n                it(\"indicates its loading state\") {\n                    // Aggregate loading states into an array\n                    var loadingStates: [Bool] = []\n                    matchesViewModel.isLoading.producer\n                        .take(5)\n                        .collect()\n                        .startWithNext({ values in\n                            loadingStates = values\n                        })\n\n                    matchesViewModel.active.value = true\n                    matchesViewModel.refreshObserver.sendNext(())\n\n                    expect(loadingStates).to(equal([false, true, false, true, false]))\n                }\n\n                it(\"notifies subscribers about content changes\") {\n                    var changeset: Changeset<Match>?\n                    matchesViewModel.contentChangesSignal.observeNext { contentChanges in\n                        changeset = contentChanges\n                    }\n\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n\n                    matchesViewModel.active.value = true\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(equal([indexPath1, indexPath2]))\n\n                    matchesViewModel.refreshObserver.sendNext(())\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(beEmpty())\n                }\n            }\n\n            it(\"raises an alert when matches cannot be fetched\") {\n                mockStore.matches = nil // will cause fetch error\n\n                var didRaiseAlert = false\n                matchesViewModel.alertMessageSignal.observeNext({ alertMessage in\n                    didRaiseAlert = true\n                })\n\n                matchesViewModel.active.value = true\n\n                expect(didRaiseAlert).to(beTrue())\n            }\n\n            it(\"deletes the correct match when asked to\") {\n                let match = mockStore.matches![1]\n                let indexPath = NSIndexPath(forRow: 1, inSection: 0)\n\n                var deletedSuccessfully = false\n\n                matchesViewModel.active.value = true\n                matchesViewModel.deleteAction.apply(indexPath).startWithResult({ result in\n                    deletedSuccessfully = result.value ?? false\n                })\n\n                expect(mockStore.deletedMatch).to(equal(match))\n                expect(deletedSuccessfully).to(beTrue())\n            }\n\n            it(\"provides a view model for creating a new match\") {\n                let createMatchViewModel = matchesViewModel.editViewModelForNewMatch()\n                expect(createMatchViewModel.title).to(equal(\"New Match\"))\n            }\n\n            it(\"provides the correct view model for editing an existing match\") {\n                matchesViewModel.active.value = true\n\n                let indexPath = NSIndexPath(forRow: 0, inSection: 0)\n                let editMatchViewModel = matchesViewModel.editViewModelForMatchAtIndexPath(indexPath)\n                expect(editMatchViewModel.title).to(equal(\"Edit Match\"))\n                expect(editMatchViewModel.formattedHomeGoals.value).to(equal(\"2\"))\n                expect(editMatchViewModel.formattedAwayGoals.value).to(equal(\"1\"))\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "SwiftGoalTests/ViewModels/RankingsViewModelSpec.swift",
    "content": "//\n//  RankingsViewModelSpec.swift\n//  SwiftGoal\n//\n//  Created by Martin Richter on 04/01/16.\n//  Copyright © 2016 Martin Richter. All rights reserved.\n//\n\nimport Quick\nimport Nimble\nimport ReactiveCocoa\n@testable import SwiftGoal\n\nclass RankingsViewModelSpec: QuickSpec {\n    override func spec() {\n        describe(\"RankingsViewModel\") {\n            var mockStore: MockStore!\n            var rankingsViewModel: RankingsViewModel!\n\n            beforeEach {\n                mockStore = MockStore()\n                rankingsViewModel = RankingsViewModel(store: mockStore)\n            }\n\n            it(\"has the correct title\") {\n                expect(rankingsViewModel.title).to(equal(\"Rankings\"))\n            }\n\n            it(\"initially has a only single, empty section\") {\n                expect(rankingsViewModel.numberOfSections()).to(equal(1))\n                expect(rankingsViewModel.numberOfRankingsInSection(0)).to(equal(0))\n            }\n\n            context(\"after becoming active\") {\n                beforeEach {\n                    rankingsViewModel.active.value = true\n                }\n\n                it(\"fetches a list of rankings\") {\n                    expect(mockStore.didFetchRankings).to(beTrue())\n                }\n\n                it(\"has only a single section\") {\n                    expect(rankingsViewModel.numberOfSections()).to(equal(1))\n                }\n\n                it(\"has the right number of rankings\") {\n                    expect(rankingsViewModel.numberOfRankingsInSection(0)).to(equal(4))\n                }\n\n                it(\"displays the right player names\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    let indexPath3 = NSIndexPath(forRow: 2, inSection: 0)\n                    let indexPath4 = NSIndexPath(forRow: 3, inSection: 0)\n                    expect(rankingsViewModel.playerNameAtIndexPath(indexPath1)).to(equal(\"A\"))\n                    expect(rankingsViewModel.playerNameAtIndexPath(indexPath2)).to(equal(\"C\"))\n                    expect(rankingsViewModel.playerNameAtIndexPath(indexPath3)).to(equal(\"D\"))\n                    expect(rankingsViewModel.playerNameAtIndexPath(indexPath4)).to(equal(\"B\"))\n                }\n\n                it(\"displays the right ratings\") {\n                    let indexPath1 = NSIndexPath(forRow: 0, inSection: 0)\n                    let indexPath2 = NSIndexPath(forRow: 1, inSection: 0)\n                    let indexPath3 = NSIndexPath(forRow: 2, inSection: 0)\n                    let indexPath4 = NSIndexPath(forRow: 3, inSection: 0)\n                    expect(rankingsViewModel.ratingAtIndexPath(indexPath1)).to(equal(\"10.00\"))\n                    expect(rankingsViewModel.ratingAtIndexPath(indexPath2)).to(equal(\"5.00\"))\n                    expect(rankingsViewModel.ratingAtIndexPath(indexPath3)).to(equal(\"5.00\"))\n                    expect(rankingsViewModel.ratingAtIndexPath(indexPath4)).to(equal(\"0.00\"))\n                }\n            }\n\n            context(\"when asked to refresh\") {\n                it(\"fetches a list of rankings\") {\n                    rankingsViewModel.refreshObserver.sendNext(())\n                    expect(mockStore.didFetchRankings).to(beTrue())\n                }\n            }\n\n            context(\"when becoming active and upon refresh\") {\n                it(\"indicates its loading state\") {\n                    // Aggregate loading states into an array\n                    var loadingStates: [Bool] = []\n                    rankingsViewModel.isLoading.producer\n                        .take(5)\n                        .collect()\n                        .startWithNext({ values in\n                            loadingStates = values\n                        })\n\n                    rankingsViewModel.active.value = true\n                    rankingsViewModel.refreshObserver.sendNext(())\n\n                    expect(loadingStates).to(equal([false, true, false, true, false]))\n                }\n\n                it(\"notifies subscribers about content changes\") {\n                    var changeset: Changeset<Ranking>?\n                    rankingsViewModel.contentChangesSignal.observeNext { contentChanges in\n                        changeset = contentChanges\n                    }\n\n                    let expectedInsertions = [\n                        NSIndexPath(forRow: 0, inSection: 0),\n                        NSIndexPath(forRow: 1, inSection: 0),\n                        NSIndexPath(forRow: 2, inSection: 0),\n                        NSIndexPath(forRow: 3, inSection: 0)\n                    ]\n\n                    rankingsViewModel.active.value = true\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(equal(expectedInsertions))\n\n                    rankingsViewModel.refreshObserver.sendNext(())\n                    expect(changeset?.deletions).to(beEmpty())\n                    expect(changeset?.insertions).to(beEmpty())\n                }\n            }\n\n            it(\"raises an alert when rankings cannot be fetched\") {\n                mockStore.rankings = nil // will cause fetch error\n\n                var didRaiseAlert = false\n                rankingsViewModel.alertMessageSignal.observeNext({ alertMessage in\n                    didRaiseAlert = true\n                })\n\n                rankingsViewModel.active.value = true\n\n                expect(didRaiseAlert).to(beTrue())\n            }\n        }\n    }\n}\n"
  }
]